Access samples - Χρήσιμα αρχεία & παραδείγματα Αρχεία Ms-Access διαθέσιμα για τα μέλη του Forum.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 18-09-16, 09:28
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή Μαζική ενημέρωση πεδίου

Δημιουργός: Γιώργος Καπετανόπουλος (18/9/2016)

Ζητούμενο
Ένας πίνακας περιέχει τα πεδία [fCode] και [Status].

Θέλουμε, αφού ορίσουμε μία τιμή για το πεδίο [Status] (πχ «abcd») και ένα σύνολο τιμών για το πεδίο [fCode] (πχ 11111, 22222, 33333, …), να ενημερώσουμε το πεδίο [Status] του πίνακα με την ορισθείσα τιμή (πχ «abcd»), στις εγγραφές που η τιμή του πεδίου [fCode], ανήκει στο ορισθέν σύνολο (πχ 11111, 22222, 33333, …).

Μ’ άλλα λόγια θέλουμε να ενημερώνουμε μαζικά το πεδίο [Status].

Αν αποσυμπιέσουμε το συνημμένο, θα πάρουμε τα αρχεία:
  • UpdateWith_In_HelpTable.mdb
  • UpdateListWithCheckBoxes.accdb
Στα αρχεία αυτά παρουσιάζονται αρκετές υλοποιήσεις του ζητούμενου.

Εισαγωγή αναγκαίων στοιχείων

Σ’ όλες τις λύσεις η τιμή ενημέρωσης επιλέγεται από ένα σύνθετο πλαίσιο.

Για τον ορισμό του συνόλου των τιμών του πεδίου [fCode], χρησιμοποιείται ή TextBox (φόρμα frmUpdateStatusWhereIn) ή ListBox πολλαπλών επιλογών (φόρμες frmUpdateStausWhereIn2 , frmUpdateStausWhereIn3 και frmUpdateStausQryUpdate).

Στο αρχείο UpdateListWithCheckBoxes.accdb περιλαμβάνεται και η φόρμα ListBoxCheckBoxesQryUpdate στην οποία το ListBox έχει, για την πολλαπλή επιλογή, CheckBoxes.

Για την υλοποίηση αυτού του ειδικού ListBox, χρησιμοποιήθηκε το πεδίο αναζήτησης [fCode], πολλαπλών επιλογών, του πίνακα [tblListBoxCheckBox].

Επειδή τα πεδία αυτά δεν υποστηρίζονται από τα αρχεία *.mdb, η φόρμα ListBoxCheckBoxesQryUpdate δεν περιλαμβάνεται στο αρχείο UpdateWith_In_HelpTable.mdb.

Ενημέρωση πεδίου [Status]

Το σημαντικότερο στην ενημέρωση είναι ο προσδιορισμός (από το σύνολο των εγγραφών του πίνακα) των εγγραφών που θα ενημερωθούν.

Χρησιμοποιήθηκαν δύο τρόποι:

1) Διαμόρφωση κατάλληλου κριτηρίου της μορφής:

WHERE [fCode] in (111111, 222222, 3333333, ….)

Η μέθοδος αυτή εφαρμόστηκε στις φόρμες frmUpdateStatusWhereIn, frmUpdateStatusWhereIn2, και frmUpdateStatusWhereIn3.

2) Χρήση βοηθητικού πίνακα (tblHLP) και ερωτήματος ενημέρωσης (qryUpdate).

Όταν πατούμε το κουμπί της ενημέρωσης, ο κώδικας διαγράφει τα δεδομένα του βοηθητικού πίνακα και στη συνέχεια, αφού του προσθέσει τις κατάλληλες εγγραφές, με βάση την τιμή ενημέρωσης και το σύνολο των κωδικών, εκτελεί το ερώτημα ενημέρωσης.

Η μέθοδος αυτή εφαρμόστηκε στις φόρμες frmUpdateStausQryUpdate και ListBoxCheckBoxesQryUpdate.

Περισσότερες λεπτομέρειες στα σχετικά αρχεία.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: zip BulkUpdate.zip (105,8 KB, 100 εμφανίσεις)
Απάντηση με παράθεση
Απάντηση στο θέμα

Εργαλεία Θεμάτων
Τρόποι εμφάνισης

Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι σε λειτουργία
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[ Φόρμες ] Μαζική απόκρυψη πεδίου artchrist73 Access - Ερωτήσεις / Απαντήσεις 2 22-12-13 20:01
Ενημέρωση πεδίου ΚΩΣΤΑΣ2 Access - Ερωτήσεις / Απαντήσεις 1 14-01-13 15:41
[ Εκθέσεις ] Ενημέρωση πεδίου από φόρμα mgeorge Access - Ερωτήσεις / Απαντήσεις 7 08-09-12 20:49
Ενημέρωση Πεδίου Χρήστος Access - Ερωτήσεις / Απαντήσεις 4 21-03-12 17:56
Ενημέρωση πεδίου Αντώνης Access - Ερωτήσεις / Απαντήσεις 14 18-06-11 05:46


Η ώρα είναι 06:19.