Αγαπητέ Μιχάλη καλησπέρα!
Υπάρχουν πολλοί τρόποι να επιτύχεις το ζητούμενο σου, ωστόσο κανένας απ αυτούς
δεν είναι 100% αξιόπιστος από τη στιγμή που η Access όπως και πάρα πολλά άλλα προγράμματα, απλά αποστέλλει την εκτύπωση στον οδηγό προγράμματος του.
Μετά την αποστολή στον εκτυπωτή δεν προσφέρονται πληροφορίες για την κατάσταση εκτύπωσης όπως θα θέλαμε!
Πχ αν εκείνη τη στιγμή μπλοκάρει το χαρτί του εκτυπωτή με αποτέλεσμα να διακοπεί η εκτύπωση, θα το ξέρεις εσύ και ο οδηγός προγράμματος του εκτυπωτή (αν υποστηρίζεται)!
Το να περάσεις την ημερομηνία σε πεδίο του πίνακα για κάθε εγγραφή,
μια πολύ απλή τεχνική είναι να ανοίξεις την έκθεση προγραμματιστικά και κατόπιν να πιστοποιήσεις την επιτυχία της εκτύπωσης με τον εξής τρόπο:
Έστω ότι οπίνακας προέλευσης έχει το όνομα
tblCustomers, και περιέχει μεταξύ άλλων τα πεδία:
- ID (Αυτόματη Αρίθμηση)
- LastPrinted (Ημερομηνία/ώρα)
Βάλε στην έκθεση τον παρακάτω κώδικα:
Κώδικας:
Private Sub Report_NoData(Cancel As Integer)
Cancel = True
End Sub
Private Sub Report_Unload(Cancel As Integer)
If MsgBox("Ήταν ή εκτύπωση επιτυχής;", vbQuestion + vbYesNo) = vbYes Then
With CurrentDb.OpenRecordset(Me.RecordSource, 2)
.MoveFirst
While Not .EOF
.Edit
.Fields("LastPrinted") = Date
.Update
.MoveNext
Wend
.Close
End With
End If
End Sub
Καλή συνέχεια
Τάσος