collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 67
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 14066
  • stats Beiträge insgesamt: 67523
  • stats Themen insgesamt: 9099
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Fehler 3420 in Zeile 60 (Das Objekt ist ungültig, oder nicht mehr festgelegt)  (Gelesen 1275 mal)

Offline PhilS

  • Administrator
  • Access-Profi
  • *****
  • Beiträge: 360
    • Tipps zu Access, VBA, SQL und Co.
habe jetzt das Problem, die Datei unter 1 MB (gezippt) zu bekommen.
Ich habe die Begrenzung auf 3MB erhöht. - Falls sich der Speicherbedarf dadurch zu stark wächst, werde ich das evtl. wieder reduzieren.

kannst das Archiv teilen in 2 zip Dateien und separat Hohladern, das könnte ja dann einer der Admins nachher korrigieren
Das könnte einer der Admins vermutlich schon. - Aber, um ehrlich zu sein, es fehlt für solche Operationen die Zeit.

Für diesen Konkreten Fall sollte das mit dem erhöhtem Limit jetzt kein Problem mehr sein. Falls es tatsächlich mal um große Dateien geht, die nicht komprimierbar/reduzierbar sind, dann bitte wirklich einen externen Speicherort dafür verwenden.
Neues Access 2019 Feature angekündigt: Modern Charts
 

Offline trebuh

  • Access-Profi
  • **
  • Beiträge: 177
Hallole.

Zunächst vielen Dank an PhilS für das erhöhen des Datenvolumens.

Das minimieren macht ganz schön arbeit.   ???

Also im Anhang die Beispieldatei.

Kurze Erklärung zum anlegen einer neuen Rechnung:
Schritt 1: Käufer auswählen
Schritt 2: Eine oder mehrere Holzlisten auswählen
Schritt 3: Ein oder mehrere Lose auswählen
Schritt 4: Preise eingeben
Schritt 5: Kann mit "Weiter" direkt übersprungen werden.

Das Endformular schließen.

Falls jetzt noch kein Fehler auftaucht. Das Formular manuell schließen "X" und dann nochmal eine neue Rechnung erstellen.
Spätestens dann müsste der Fehler auftauchen (zumindest bei mir).

Grüßle
Hubert

Nachtrag: Wie ich durch Lachtaube festgestellt habe, habe ich die falsche Datei gezippt. Sorry  :-[

« Letzte Änderung: Mai 24, 2018, 13:17:53 von trebuh »
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1336
Dein Beispiel scheitert schon in Schritt 1, weil man zuerst Code auskommentieren muss, wozu ich eigentlich überhaupt keine Lust habe.

Im Schritt 2 wird dann die temporäre Tabelle nicht mehr befüllt.

Weiter schaue ich mir das Disaster nicht an. :)

PS: Ich würde auch doppelte Indexe, sowie Einzelindexe auch von Fremdschlüsselfeldern entfernen, für die referentielle Integrität eingestellt ist.

PPS: Nach einem Decompile schrumpft die DB auf ca. 3,5 Mb, was gezippt ca. 400 Kb ausmacht.
« Letzte Änderung: Mai 24, 2018, 17:05:56 von Lachtaube »
Grüße von der (⌒▽⌒)
 

Offline trebuh

  • Access-Profi
  • **
  • Beiträge: 177
Hallo Lachtaube,

Sorry, ich habe die falsche Datei gezippt.  :(

Decompile? Das kannte ich noch gar nicht.
Habe es immer mit dem Komprimieren und Reparieren gemacht.

Also die Datei müsste jetzt funktionieren.

Das mit den doppelten Indexen schaue ich mir mal an.

Grußle Hubert
 

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 1885
Re: Fehler 3420 in Zeile 60 (Das Objekt ist ungültig, ...
« Antwort #19 am: Mai 24, 2018, 13:50:55 »
Hallo Hubert,
Zitat
Das mit den doppelten Indexen schaue ich mir mal an.
Da musst du aufpassen, denn die stehen in der Tabellenentwurfsansicht
nicht in der Indexliste. Diese werden beim Anlegen einer Beziehung mit
RI von Access automatisch angelegt. Sehen kannst du die nur wenn du
per VBA die Indexauflistung des Tabledef-Objektes ausliest.
Public Function ListeIndices(ByVal TabName As String)
    Dim dbe  As DAO.Database
    Dim tdf As DAO.TableDef
    Dim idx As DAO.Index
    Dim idxfld As DAO.Field

    Set dbe = CurrentDb
    Set tdf = dbe(strTabelle)

    For Each idx In tdf.Indexes
        Debug.Print idx.Name
        For Each idxfld in idx.Fields
            Debug.Print idxfld.Name
        Next idxfld
    Next idx

End Function

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1336
Nun, Schritt 1 hast Du nicht bereinigt.Option Compare Database
Option Explicit

Private Sub cmdschliessen_Click()

10       On Error GoTo cmdschliessen_Click_Error

         'Datensatz ggf. speichern!!!
20       If Me.Dirty Then Me.Dirty = False
         
30       With Forms("frmRechUebersicht")
40          .Requery
            'der Datensatz muss gefunden werden!!!
50          .Recordset.FindFirst BuildCriteria("rech_nr", dbLong, Me.rech_nr)
60       End With

70       DoCmd.Close acForm, Me.Name, acSaveNo
80       Exit Sub

cmdschliessen_Click_Error:
90       MsgBox "Error " & Err.Number & " in Zeile " & Erl & _
                " (" & Err.Description & ") in Sub cmdSchliessen_Click " & _
                "im VBA Dokument Form_frm_Rechnung"
End Sub
Grüße von der (⌒▽⌒)
 

Offline Frank77

  • Access-Profi
  • **
  • Beiträge: 188
    • Die Zauberbaecker
Hallo
Weiter schaue ich mir das Disaster nicht an. :)

Sehr unübersichtlich :-)

Ich hab mal zeit und versuche mal die strucktur zu über arbeiten soweit ich da durchblicke.
Man hat mir hier auch schon sehr viel geholfen

Gruß

Selbstständig = Selbst und Ständig
 

Offline trebuh

  • Access-Profi
  • **
  • Beiträge: 177
Hallo,

Ohh, da bekomme ich aber ein schlechtes Zeugnis ausgestellt.
Geht doch bitte nicht so hart ins Gericht mit mir.  :D

@ Lachtaube

Danke für Deinen Code. Einfach und Übersichtlich.
Nur leider kommt der Fehler 3420 immer noch bei:
50          .Recordset.FindFirst BuildCriteria("rech_nr", dbLong, Me.rech_nr)  ;)

Gruß
Hubert



 

Offline Frank77

  • Access-Profi
  • **
  • Beiträge: 188
    • Die Zauberbaecker
Hallo!
Das Datenmodel sollte mal Überarbeiten und die Sachen anders und übersichtlicher benennen.
Ist wie bei mein ersten versuch ewig Zeit investiert und immer dazu gebastelt zum Schluss blöd aus der Wäsche geglotzt und dazu gelernt.

Kuck dir mal Kontakt Stemmdaten und Kontaktform an.

Ich denke du Speicherst vieles doppelt und dreifach und das sehr unübersichtlich
Ich habe mal nur die Felder umbenannt und in den Beziehungen das sortiert was ich nachvollziehen kann sowie ids angelegt wo keine sind, den Rest musst mal sortieren.
 
Was ist der Artikel und welche Referencen /Arten gehören zum Artikel.

Wer kauft was und warum und Skonto und MwSt in den Artikel z.b. und nicht in den Kontakten den das bezieht sich auf den Artikel.
Kontakt = 19% kauft aber Essen das hat 7% ergo Passt nicht

1000 Abfragen das Blickt echt keiner das musst überarbeiten sonst Verschwendest echt deine zeit

http://www.access-im-unternehmen.de/index1.php?BeitragID=294&id=300

Bastell mal ein Kontakt eingabe zusammen und Artikel eingabe dann sieht man weiter
Grus Frank
« Letzte Änderung: Mai 24, 2018, 19:18:58 von Frank77 »
Selbstständig = Selbst und Ständig
 

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 1885
Re: Fehler 3420 in Zeile 60 (Das Objekt ist ungültig, ...
« Antwort #24 am: Mai 24, 2018, 21:40:40 »
Zitat
Nur leider kommt der Fehler 3420 immer noch bei:
Stimmt denn der Datentyp?
..., dbLong, Me.rech_nr)
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.
 

Offline trebuh

  • Access-Profi
  • **
  • Beiträge: 177
Hallole,

also zur Info, das meiste an Formularen und Berichten habe ich wegen der Übersicht rausgeworfen.
Die Abfragen beziehen sich die meisten auf Auswertungen in Berichten.

Die Steuer bezieht sich auf den Kunden. Der eine Waldbesitzer verbauft sein Holz mit 5,5 ein anderer mit 19%.

Mag ja sein, das meine Datenbank nicht die beste ist (Ist auch meine Erste). Aber was hat das jetzt mit dem Fehler in den paar Formularen zu tun, welche in der Beispieldatei ist?
Der Code in den Formularen ist doch überschaubar?

@Breaker:

Der Datentyp dürfte stimmen. Jeweils eine Zahl.
Mich wundert es halt, das wenn ich per VBA das Formular schließe und wieder öffne, der Fehler ausbleibt.
Na ja... ich lasse es halt mal so.

Gruß und Dank an alle für die Bemühungen.

Hubert
 

Offline trebuh

  • Access-Profi
  • **
  • Beiträge: 177
Hallolo,

habe die Ursache gefunden.

Es hat mit der Transaktion im "Weiter"-Button des Formulars frm_Rech_Zu_und_Abschlaege zu tun.

Ob ich die Transaktion so richtig programmiert habe (wahrscheinlich nicht) weiß ich nicht.
War damals mein einziger Versuch mit der Transaktion.

Jedenfalls habe ich das mal außen vor gelassen.

Jetzt habe ich Zugriff auf das Formular. D.h. Der Fehler ist jetzt weg. ;D ;D ;D

Grüßle Hubert 
 

Offline Frank77

  • Access-Profi
  • **
  • Beiträge: 188
    • Die Zauberbaecker
Hallo!


Die Steuer bezieht sich auf den Kunden. Der eine Waldbesitzer verbauft sein Holz mit 5,5 ein anderer mit 19%.

Ich geh jetzt mal davon aus das du EK-VK betreiben willst?
Jetzt nehmen wir mal folgendes an

Die hinterlegten 5,5% sind der Verkauf des eigenen Holzes vom VK also dein EK
Jetzt macht der die aber ein unschlagbares Angebot seines EK den er dir aber zum VK mit 19% geben muss da er die Steuer weiter gibt … was machst dann?

Dazu gibt er dir noch Brennholz:

„Der für Brennholz geltende Umsatz- bzw. Mehrwertsteuersatz ergibt sich aus Anlage 2 (zu § 12 Abs. 2 Nrn. 1 und 2), lfd. Nr. 48 des Umsatzsteuergesetzes.
Danach beträgt der Umsatz- bzw. Mehrwertsteuersatz für Brennholz 7 %.“

5,5 - 19 - 7 dann stürzt dein gesamter Geschäftsvorfall ab

(habe über mehrere Jahre eine Holzofenbäckerei betrieben und CA 40 Stehr in Jahr verbrannt)
EK-Artikel hat Lieferanten und Lieferanten hat preis zu Datum



Grus Frank
Selbstständig = Selbst und Ständig
 

Offline trebuh

  • Access-Profi
  • **
  • Beiträge: 177
Hallo Frank,

Also es ist so:
Wenn ein Waldbesitzer sein Holz an ein Sägewerk verkauft, kommt es darauf an, ob er pauschaliert, oder optiert.
Daher die 5,5% oder 19%
Das Programm dient lediglich dazu, Holzlisten zu schreiben, und ggf. eine Rechnung zu erstellen.
In der Regel bekommt man ja vom Sägewerk die Gutschrift.

Des weiteren kann man auch Holzlisten für andere Waldbesitzer schreiben, und auch für die ggf. eine Rechnung für das Sägewerk schreiben.

Hat also nichts mit Bestellungen und Verkauf von anderen Waren und Artikel zu tun.

Übrigens noch Danke, für Deine Arbeit mit den Tabellen.
Hatte auch schon mal vor, die Datenbank komplett neu aufzubauen, da man als Laie ja mit Null anfängt, und dann wenn man sich mal ein wenig mit der Materie befasst hat, feststellt, dass man es auch anders angehen kann.

Gruß
Hubert


 

Offline Frank77

  • Access-Profi
  • **
  • Beiträge: 188
    • Die Zauberbaecker
Hallo!

Verstehe du schreibst also dir Rechnung für den Verkauf an den Käufer und stellst damit das zwischen Glied dar, sozusagen wie der STB für Faule 

Dann wird’s natürlich komplizierter, meine Intension war das es für Schausteller keine DB gibt

Ja ist ein langer Weg sich das als Laie anzueignen, hab alle Bücher gekauft und fest gestellt ist immer der gleiche Mist

Aber die 2 haben mir dann an besten geholfen, ohne Werbung für die machen zu wollen

https://shop.minhorst.com/buecher/273/anwendungen-entwickeln-mit-access
https://shop.minhorst.com/buecher/300/access-und-office?c=76

ich bin mir sicher du kannst, dass alles extrem reduzieren in der DB

Gruß Frank

Selbstständig = Selbst und Ständig