Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Doming am April 14, 2026, 11:35:15

Titel: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: Doming am April 14, 2026, 11:35:15
Hallo,

irgendwie stehe ich gerade auf dem Schlauch.
Ich habe ein gebundenes Formular, bei dem ich jetzt noch Einträge aus einer Tabelle einfügen möchte
Private Sub TxFANr_AfterUpdate()
 Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("SELECT Auftrag, Pos, LWNr " _
                                   & "FROM Tabelle1 " _
                                   & "WHERE FA = '" & Me.TxFANr & "'")
    If Not (rs.BOF And rs.EOF) Then
        Me.Tx1 = rs!Auftrag
        Me.Tx2 = Nz(rs!Pos, "")
        Me.Tx3 = Nz(rs!LWNr, "")
        Me.Tx4 = "FA " & Me.TxFANr
    End If
Ende:
    On Error Resume Next
    rs.Close
    Set rs = Nothing
    Exit Sub
Fehler:
    Fehlerprot Err.Number, Err.Description
    Resume Ende
End Sub
Setze ich eine Haltemarke auf Exit Sub, kann ich sehen, dass alle Einträge vorgenommen wurden. Drücke ich dann F8, verschwinden alle Einträge und die Eingaben wurden gespeichert.
Ich habe ein gebundenes Feld mit der ID, rufe ich das Formular auf, steht darin die neue ID. Nach der obigen Eingabe springt das ID-Feld auf "New", also wurden die Eingaben offenbar gespeichert und es wurde zu einem neuen Datensatz gesprungen. Aber wieso? Es gibt kein Form_AfterUpdate, kein Me.Requery oder Me.Refresh. Gespeichert werden soll das Formular erst nach Drücken eines Buttons.

Ist bestimmt nur ein Verständnisfehler aber ich komm nicht drauf, hat jemand von Euch nen Tipp?

Gruß
 Doming
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: MzKlMu am April 14, 2026, 12:13:20
Hallo,
Access speichert im Regelfall gebundene Formulare immer automatisch. Wenn man das nicht will, muss das im Ereignis "Vor Aktualisierung (Form_BeforeUpdate)" durch setzen des Parameters "Cancel" auf True verhindert werden. Dort bringt man dann zweckmässigerweise eine Rückfrage (Soll gespeichert werden ?) unter. Und das wäre dann der Button der gedrückt werden muss.
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: Doming am April 14, 2026, 12:22:48
Danke für die Antwort Klaus, es ist mir schon klar, dass gebundene Formulare automatisch gespeichert werden, aber wieso wird während des Ausfüllens zu einem neuen Satz gesprungen?
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: Doming am April 14, 2026, 13:06:26
Hm, ich habe jetzt damit beholfen, im Form_BeforeUpdate Cancel grundsätzlich auf true zu setzen, es sei denn, ich drücke auf den Speichern-Button. Trotzdem wurden, während ich Daten eingegeben habe, einige Felder wieder geleert, diesmal aber ohne zu speichern. Ich bleibe verwirrt...
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: PhilS am April 14, 2026, 13:19:53
Ist TxFANr das letztes Steuerelement in der Aktivierreihenfolge und das AfterUpdate wird ausgelöst, wenn du im Feld Tab drückst und damit zu eine neuen Datensatz wechselst?
Das wäre eine logische Erklärung.
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: Doming am April 14, 2026, 13:42:28
Hm, tatsächlich...
Da ich TxFANr nachträglich in ein bestehendes Formular eingefügt habe, war es natürlich in der Reihenfolge ganz unten.
Ich habe das jetzt mal weiter nach oben geschoben und jetzt wird das Formular-Ereignis BeforeUpdate nicht mehr angesprochen.
Den Tabulator habe ich nicht betätigt, aber Enter natürlich (und somit das AfterUpdate ausgelöst), klar, dass er danach dann zum "nächsten" Element springen will.
Danke für den Hinweis, nun ist meine Erde wieder rund.

Gruß
 Doming
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: Bitsqueezer am April 14, 2026, 15:16:14
Hallo,

Du kannst aber auch das Formular so einstellen, daß mit TAB nicht zum nächsten Datensatz gesprungen (und damit automatisch gespeichert) wird. Dann springt der Cursor beim letzten Feld wieder auf das erste.

Denk dran, daß ein Verlassen eines Unterformulares auch Save im Unterformular auslöst. Wenn Deine Buttons in einem Hauptformular liegen, dann ist beim Klick bereits gespeichert worden.

Gruß

Christian
Titel: Re: gebundenes Formular wird zwischenzeitig gespeichert?
Beitrag von: Beaker s.a. am April 14, 2026, 18:30:17
Hallo Doming,

Die benötigte Eigenschaft des Formulars heisst: "Zyklus" (Reiter "Andere").
Wobei "Alle Datensätze" zum Sprung auf einen neuen führt, und
"Aktueller Datensatz" eben dieses verhindert.

gruss ekkehard