Εμφάνιση ενός μόνο μηνύματος
  #5  
Παλιά 13-03-09, 13:59
Tassos
Guest
 
Μηνύματα: n/a
Προεπιλογή Re: Αποθήκευση εγγραφής - μεταβολών φόρμας

Και πάλι καλημέρα σας!
Επιτρέψτε μου να προτείνω μια λίγο διαφορετική αλλά προσέγγιση καθώς οι προηγούμενες προτάσεις μας
δεν ανταποκρίνονται σωστά όταν ακυρώνεται μια νέα εγγραφή.
Ο κώδικας όπως και ο προηγούμενος προϋποθέτει βοηθητικό πεδίο στον πίνακα της φόρμας
με το οποίο θα έχει συνδεθεί το "Combo21".
Αν το "Combo21" δεσμευτεί με το πεδίο "ID1" τότε φυσικά δεν θα χρειαστεί το βοηθητικό
αυτό πεδίο και θα πρέπει να ακυρώνουμε την γραμμή του κώδικα : "Case vbYes: ..."
Κώδικας:
Option Explicit
Dim BoolDelete As Boolean

Private Sub Form_AfterUpdate()
    If BoolDelete Then
        BoolDelete = False
        DoCmd.SetWarnings False
        DoCmd.RunCommand acCmdDeleteRecord
        DoCmd.GoToRecord , , acLast
        DoCmd.SetWarnings True
    End If
End Sub

Private Sub Form_BeforeUpdate(Cancel As Integer)
    Select Case MsgBox("Save changes...?", _
            vbQuestion + vbYesNoCancel + vbDefaultButton3, "Save changes...")
        Case vbCancel: Cancel = True
        Case vbNo: If Me.NewRecord Then BoolDelete = True: Exit Sub: Me.Undo
       Case vbYes: Me.ID1 = Me.Combo21 'Δεν χρειάζεται αν το "Combo21" δεσμευτεί με το πεδίο "ID1" 
    End Select
End Sub
Καλό Σαββατοκύριακο κι από μένα!
Απάντηση με παράθεση