Εμφάνιση ενός μόνο μηνύματος
  #10  
Παλιά 30-09-10, 16:29
kapetang Ο χρήστης kapetang δεν είναι συνδεδεμένος
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα στην παρέα

Δέσποινα το παράδειγμα που επισυνάπτω πιστεύω να σε βοηθήσει να καταλάβεις πως συγχρονίζονται οι φόρμες. Είναι σε access 2003 και συνεπώς δε θα έχεις πρόβλημα να το ανοίξεις.
  1. Η βάση δεδομένων αποτελείται από ένα πίνακα πελατών (tblCustomers) που περιέχει και ένα πεδίο (Active) τύπου Ναι/Όχι για να διαχωρίζει τους πελάτες σε ενεργούς και μη.
  2. Έχει μία φόρμα (frmCustomers1) που εμφανίζει όλους τους πελάτες και ένα κουμπί που αν το πατήσουμε εμφανίζει τη φόρμα (frmCustomers2) που περιέχει μόνο τους ενεργούς πελάτες.
Για να φανεί ότι οι δύο φόρμες είναι συγχρονισμένες, κάνουμε τη δοκιμή:
1. Ανοίγουμε την frmCustomers1 και πατούμε το κουμπί για να ανοίξει και η frmCustomers2.
2. Στη frmCustomers2 ο Αθανασίου είναι ενεργός πελάτης. Τον κάνουμε μη ενεργό (βγάζουμε το τικ από το πλαίσιο ελέγχου), οπότε εμφανίζεται ένα μολυβάκι αριστερά στη φόρμα που δείχνει ότι έγιναν αλλαγές. Ενώ η φόρμα είναι ενεργή αποθηκεύουμε τις αλλαγές από το μενού (Εγγραφές > αποθήκευση εγγραφής).
Παρατηρούμε ότι ο Αθανασίου δεν εμφανίζεται πλέον στην frmCustomers2 και στην frmCustomers1 εμφανίζεται ως ανενεργός.
3. Αν στη φόρμα frmCustomers1 κάνουμε πάλι ενεργό τον Αθανασίου αποθηκεύσουμε τις αλλαγές ((Εγγραφές > αποθήκευση εγγραφής) και πατήσουμε το κουμπί εμφανίζεται πάλι στην frmCustomers2.
Η παραπάνω λειτουργικότητα εξασφαλίζεται από τον παρακάτω κώδικα που βρίσκεται στη φόρμα frmCustomers2
Κώδικας:
Private Sub Form_Activate()
    Me.Requery
End Sub

Private Sub Form_AfterUpdate()
    Me.Requery
    Forms("frmCustomers1").Requery
End Sub
Πάντως έχω την εντύπωση ότι δουλεύσεις κάπως ανορθόδοξα γι' αυτό σου προτείνω και γω να ξανακοιτάξεις τη δομή της βάσης σου.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb Despina.mdb (136,0 KB, 36 εμφανίσεις)
Απάντηση με παράθεση