Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > Πρόβλημα ενημέρωσης πινάκων και διαγραφή ανενεργών εγγραφών πίνακος

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #11  
Παλιά 08-12-10, 13:13
Όνομα: Ανδρέας
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 06-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 17
Προεπιλογή

Αγαπητέ Αλέξανδρε,

Αναγνωρίζω ότι κάναμε τουλάχιστον ένα βήμα προς τη σωστή κατεύθυνση. Για να είμαι ειλικρινής, εγώ το είχα κάνει είδη, γι’ αυτό ανέφερα στο προηγούμενο μήνυμα ότι σε μένα δούλεψε. Το γεγονός ότι απλά δούλεψε, δε σημαίνει ότι έκανε αυτό που θέλεις εσύ, αλλά αυτό που όρισα εγώ.

Δεν τελειώσαμε όμως. Η σειρά μου.
1. Το κουμπί «εκτύπωση» θα το μετονόμαζα «ενημέρωση και εκτύπωση» ή «update & print». Ο λόγος; Πιστεύεις πως και μετά από μερικούς μήνες θα θυμάσαι ότι το κουμπί δεν εκτυπώνει απλά, αλλά ενημερώνει κιόλας;
2. Στο αντίγραφο που έχω, για να θυμάμαι σα χρήστης ότι εδώ ακριβώς γίνεται και μια διαγραφή εγγραφών, έθεσα ένα MsgBox που επιβεβαιώνει ότι γίνεται διαγραφή δεδομένων. Φαντάζομαι πως η χρήση της φόρμας «ταμείο ημέρας» γίνεται μία φορά την ημέρα. Συνεπώς η εμφάνιση του μηνύματος δε θα ενοχλούσε ιδιαίτερα.
3.H φόρμα κρύβει ορισμένα λάθη (παγίδες), οι οποίες δεν φαίνονται όσο ο χρήστης πατάει με τη σωστή σειρά τα κουμπιά. Για παράδειγμα, τι συμβαίνει όταν δεν πατήσω «εκτύπωση», αλλά αντί αυτού «κλείσιμο» (έστω και κατά λάθος); Μήπως έχασα μια εκτύπωση έτσι; Υπ’ όψιν ότι στο MS Access δεν υπάρχει κάδος ανακύκλωσης. Μήπως το κουμπί «κλείσιμο» θα πρέπει να προλαβαίνει το γεγονός ότι δεν προηγήθηκε μια «εκτύπωση»;
Μήπως καλύτερα «διαγραφή» και «κλείσιμο», έτσι ώστε να μπορείς να διώξεις τη φόρμα δίχως να διαγράψεις κάτι; Για το τελευταίο έχω ένα σενάριο όπου αυτό είναι λίγο πολύ απαραίτητο. Έστω ότι μετά από μια εκτύπωση και μια διαγραφή διαπιστώνεις ότι παρέλειψες κάποια «έναντι». Τι γίνεται στην περίπτωση αυτή;

Εσύ θα αποφασίσεις. Σκοπός του όλου είναι η φόρμα να αντιδρά σε κάθε περίπτωση σωστά.

Φιλικά
Ανδρέας
Απάντηση με παράθεση
  #12  
Παλιά 08-12-10, 14:52
Όνομα: Αλέξανδρος
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 22-01-2010
Περιοχή: ΑΡΤΑ
Μηνύματα: 521
Προεπιλογή

Aγαπητέ Ανδρέα
Δεν αμφισβητώ το ότι χωρίς εσένα θα το έβρισκα τόσο γρήγορα .Δεν διαθέτω τόσες γνώσεις. Αλλά ήταν όπως λές καλό ξεκίνημα.
1.Στην πρώτη πρότασή σου έχεις απολύτως δίκαιο και λογικό δεν μπορείς να θυμάσαι το ότι ενημερώνει κιόλας.
2.Και στην δεύτερη πρόταση δεκτό με το μήνυμα διότι λειτουργεί σαν Ζήτα η φόρμα μιας ταμειακής.
3.Στην Τρίτη πρόταση νομίζω ότι το έχω προλάβει. Στη φόρμα frmArhioAftokiniton εάν κοιτάξεις τον τίτλο στην κεφαλίδα της φόρμας αναγράφει Αρχείο διόρθωσης στοιχείων αυτοκινήτου. Σε περίπτωση που γίνει κάποιο λάθος από αυτή την φόρμα μπορείς να αλλάξεις τα δεδομένα. Ετσι θέλω να πιστεύω γιατί μπορεί και να κάνω λάθος.
4.Εγώ προτείνω για λιγότερες κινήσεις με το enter της φόρμας ΗμερομηνίαΤαμείου (βάζοντας την ημερομηνία) να βάλω τον κώδικα εκτύπωσης και τον κώδικα για την διαγραφή να μπει το μήνυμα διαγραφής να καταργήσω τελείως την εμφάνιση της φόρμας ΤαμείοΗμέρας αφού είναι μόνο για ανάγνωση. Και θα κάνει εκτύπωση και θα διαγράφει .Αν θέλω ανάκτηση πάω στή φόρμα και τα προσθέτω η αφαιρώ. Τί λες για αυτό.
Εκτός από αυτό ήθελα να ρωτήσω και κάτι άλλο όταν κάνω εκτύπωση θέλω να ακούγεται και ο ηχος πως κάνει η ταμειακή μηχανή. Το έκανα αυτό. Αλλά εάν πατήσεις δεύτερη φορά με ανοικτή φόρμα δεν το κάνει τι κώδικα θέλει να συμπληρώσω φαντάζομαι κάτι με το Loop.Στέλνω τον ήχο
Περιμένω την γνώμη σου.

Φιλικά Αλέξανδρος
Συνημμένα Αρχεία
Τύπος Αρχείου: zip TestSound.zip (15,7 KB, 27 εμφανίσεις)
Απάντηση με παράθεση
  #13  
Παλιά 09-12-10, 08:04
Όνομα: Αλέξανδρος
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 22-01-2010
Περιοχή: ΑΡΤΑ
Μηνύματα: 521
Προεπιλογή

Ανδρέα καλημέρα
Σε μια δοκιμή που έκανα χωρίς DAO στο recordset
είδα ότι δούλεψε και χωρίς την προσθήκη DAO στο recordset.;Τελικά οπως φαίνεται αναγνωρίζει και το edit χωρίς την προσθήκη.

Alex
Απάντηση με παράθεση
  #14  
Παλιά 09-12-10, 09:38
Όνομα: Ανδρέας
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 06-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 17
Προεπιλογή

Καλημέρα Αλέξανδρε,

Για να ενεργοποιήσεις τον ήχο, προτείνω να το μεθοδεύσεις ως εξής:
  • Το αρχείο του ήχου θα πρέπει να βρίσκεται στον ίδιο φάκελο, όπου βρίσκεται και η βάση δεδομένων.
  • Απενεργοποίησε πρώτα ΟΛΑ τα περιεχόμενα του cmdPrint_Click()
  • Απενεργοποίησε τα περιεχόμενα του CmdClose_Click από την αρχή μέχρι το DoCmd.Close, αλλά χωρίς το ίδιο.
  • Πάρε από το cmdPrint_MouseDown() την εντολή PlaySound "TestSound.wav" και τοποθέτησέ τη ως πρώτη εντολή μέσα στο cmdPrint_Click()
  • Αποθήκευσε τις αλλαγές και άνοιξέ τη κανονικά.
  • Με τις αλλαγές που θα έχεις κάνει δε θα εκτυπώνει, ούτε θα διαγράφει κατά το κλείσιμο.
  • Σιγουρέψου, ότι όσες φορές πατάς εκτύπωση ακούγεται ο ήχος. Σε εμένα δούλεψε.
  • Αν δουλεύει σωστά, ενεργοποίησε και πάλι τα περιεχόμενα στο cmdPrint_Click() και στο CmdClose_Click()
  • Σβήσε το cmdPrint_MouseDown (άδειο δε το χρειάζεσαι)
  • Έτοιμο.

Γιατί αυτές οι αλλαγές. Το PlaySound δεν είναι μέθοδος ούτε του Access ούτε του VBA, αλλά μέθοδος της φόρμας.
Το PlaySound δημιουργεί ένα Interoperability-layer (δυστηχώς δε γνωρίζω την αντίστοιχη ελληνική φράση) μεταξύ COM-Component (Access) και Windows Application Interface (WinAPI). για να καλέσει στη συνέχεια μια τη μέθοδο WinAPI."sndPlaySoundA" .

Το πρόβλημα; Πιστεύω πως ενώ το Access τα καταφέρνει με το MouseDown και το Click, το sndPlaySoundA μάλλον μπερδεύεται.
Click σημαίνει MouseDown + MouseUp. Συνήθως σε WinAPI-calls, για να αποφεύγονται αυτά χρησιμοποιούμε ή το Click ή το MouseDown και MouseUp. Σε COM-εφαρμογές (Access) η σειρά των γεγονότων είνα MouseDown-MouseUp-Click, οπότε δεν υπάρχει πρόβλημα.

Καλές δουλειές
Ανδρέας
Απάντηση με παράθεση
  #15  
Παλιά 09-12-10, 10:05
Όνομα: Αλέξανδρος
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 22-01-2010
Περιοχή: ΑΡΤΑ
Μηνύματα: 521
Προεπιλογή

Ευχαριστώ Ανδρέα.
Όπως είπες εχω πολύ δουλειά.
Καλό μεσημέρι
Απάντηση με παράθεση
Απάντηση στο θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[ Πίνακες ] Διαγραφή εγγραφών πίνακα υπό όρους dimitrisp Access - Ερωτήσεις / Απαντήσεις 5 12-11-16 13:58
Αυτόματη διαγραφή εγγραφών Πίνακα dimitrisp Access - Ερωτήσεις / Απαντήσεις 3 09-04-15 23:50
[ Πίνακες ] Σχέσεις Πινάκων - Πρόβλημα cybervit Access - Ερωτήσεις / Απαντήσεις 2 02-03-13 17:54
Πρόβλημα ενημέρωσης πίνακων και διαγραφή ανενεργών εγγράφων πίνακος alex Access - Ερωτήσεις / Απαντήσεις 0 06-12-10 10:49


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