Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
Κατάσταση Ανθρώπων Ανά Ημερομηνία
Αγαπητοί Συμφορουμίτες σας χαιρετώ γι άλλη μια φορά... Θα ήθελα να μάθω αν υπάρχει δυνατότητα να δημιουργήσω μια φόρμα η οποία θα έχει την μορφή ενός φύλλου εργασίας excel, και σαν γραμμές θα έχει Ονοματεπώνυμα, και η κάθε μία στήλη θα περιέχει ημερομηνίες που θα αυξάνονται κατά μία ημέρα... Στην τομή του ονόματος, με την ημερομηνία θα υπάρχει η κατάσταση του ανθρώπου την συγκεκριμένη ημέρα (στοιχείο το οποίο θα προέρχεται από ερώτημα). Ευχαριστώ |
#2
| |||
| |||
Καλημέρα Στέλιο, με κάποιες προϋποθέσεις θα μπορούσες: Αρχικά θα πρέπει να δημιουργήσεις τους παρακάτω πίνακες για την καταχώρηση των αναγκαίων στοιχείων. 1. Τον πίνακα (πχ Persons) για την καταχώρηση των στοιχείων των προσώπων (ID_Person, LastName, FirstName, κλπ). 2. Τον πίνακα (πχ Status) για την καταχώρηση των διάφορων καταστάσεων (ID_Status, Status, κλπ). 3. Τον πίνακα (πχ Person_Status) για την καταχώρηση των στοιχείων κατάστασης κάθε προσώπου, σε κάθε ημερομηνία, με πεδία:
Στη συνέχεια θα δημιουργήσεις ένα ερώτημα επιλογής (πχ qryData) που θα περιέχει πεδία για το ονοματεπώνυμο, την ημερομηνία και την κατάσταση. Με βάση το ερώτημα qryData μπορείς να φθάσεις στο ζητούμενο:
Θα χαρούμε να δούμε στο φόρουμ την ολοκληρωμένη λύση σου. Αν κάπου κολλήσεις μη διστάσεις να ζητήσεις βοήθεια. Φιλικά/Γιώργος |
#3
| |||
| |||
Γιωργο καταρχην ευχαριστώ για την ανταπόκριση... Εχω καλές γνώσεις από θεωρία ΒΔ Οπότε όλα οσα αναφέρεις οτι πρέπει να κάνω, τα έχω κάνει ήδη. Δηλαδη : Υπάρχει ο Πίνακας Persons με PK το Person_ID Υπάρχει ο Πίνακας Status με PK το Status ID Υπάρχει ο ενδιάμεσος Πίνακας (λόγο της σχέσης Πολλά προς Πολλά που δημιουργείται) με PK τα Date, Person_ID (έχοντας σαν δεδομένο ότι ένας άνθρωπος δεν μπορει να έχει 2 διαφορετικες καταστασεις σε μια ημέρα). Σου επισυνάπτω και το Σχεσιακό σχήμα (οσον αφορα μονο αυτο το κομματι της εφαρμογης) Έχω πρόβλημα στο να δημιουργήσω την φόρμα όμως.... Χρειάζεται Πρωτα να γεμίσω τον ενδιάμεσο Πίνακα με το καρτεσιανό (dates * Persons) ? Αν χρειαζεται μπορω να ανεβασω και ενα αντιγραφο της ΒΔ Ευχαριστω |
#4
| |||
| |||
Καλησπέρα Στέλιο για να προχωρήσουμε θα πρέπει να προσθέσεις τα δεδομένα στους πίνακες και να ανεβάσεις ένα αντίγραφο της ΒΔ. Ο πίνακας «PersonStatus» θα πρέπει να καλύπτει όλα τα άτομα των οποίων θέλουμε να παρακολουθούμε την κατάσταση σε μια συγκεκριμένη χρονική περίοδο. Αν πρέπει να παρακολουθείς όλα τα άτομα του πίνακα Persons θα πρέπει να συμπληρωθεί το καρτεσιανό γινόμενο. Η συμπλήρωση θα μπορούσε να γίνει με ένα ερώτημα προσάρτησης της μορφής: Κώδικας: INSERT INTO PersonStatus ( ID_Person, ToDate ) SELECT Persons.ID_Person, Dates.fDate FROM Persons, Dates; |
#5
| |||
| |||
Γιωργο σε ευχαριστω και παλι... Ειναι οπως το υποψιαζομουν... Ηθελα να δημιουργησω το GUI χωρις να χρειαστει να εισαγω δεδομενα, ομως απ οτι καταλαβαινω αυτο δεν ειναι εφικτο.... Θα πρεπει να κανω λοιπον insert στον ενδιαμεσο πινακα tbl_programmatismos ολα τα agm, για ολες τις ημερομηνιες (οποιος δει το σχεσιακό που εχω ανεβασει σε προηγουμενο post θα καταλαβει τι εννοω). Επισης επειδη τα ατομα τα οποια με ενδιαφερει να παρακολουθω ειναι διαφορετικα καθε μερα θα πρεπει να προσθεσω στο συμβαν "με την φόρτωση" της φορμας, ενα if statement, το οποιο θα λεει... If tbl_persons.active = Yes Then me.txt_status.active = true Else me.txt_status.active = false Αν λεω κατι λάθος, παρακαλω διορθωστε με. Επσης θα χρειαστει να βαλω ενα κουμπι το οποιο θα καλει το insert που θα φτιαξω ωστε ο χρηστης του προγραμματος, για παραδειγμα, την 1η καθε ετους, να προσθετει τις ημερομηνιες του επομενου ετους Σε καθε περιπτωση θα το πρωχωρησω μονος, αν δυσκολευτω καπου θα ζητησω βοηθεια. Αν το καταφερω ομως θα ανεβασω ενα αντιγραφο για τους φιλους συμφορουμιτες.... |
#6
| |||
| |||
Καλησπέρα Φίλε Στέλιο εκείνο που κατάλαβα είναι ότι θέλεις μία φόρμα που να δείχνει τα δεδομένα όπως στο φύλλο του excel. Συγκεκριμένα επικεφαλίδες γραμμών θα είναι ονοματεπώνυμα, επικεφαλίδες στηλών ημερομηνίες και στην τομή τους η κατάσταση του ατόμου. Για να γίνει αυτή η φόρμα θα πρέπει να σχεδιάσεις τη ΒΔ όπως σου υπέδειξα στα προηγούμενα μηνύματα και να καταχωρήσεις δεδομένα. Σημειώνω ότι η φόρμα θα εμφανίζει σε πινακοειδή μορφή τα δεδομένα, αλλά δε θα επιτρέπει καταχωρήσεις. Για τη δημιουργία της φόρμας δε χρειάζεται κώδικας και κουμπιά. Μπορεί να γίνει με συγκεντρωτικό πίνακα ή με τη βοήθεια ερωτήματος διασταύρωσης. Ο κώδικάς σου δεν είναι σωστός, αλλά όπως ανέφερα δε χρειάζεται. Εύκολα επίσης ορίζοντας τα κατάλληλα κριτήρια στο υποκείμενο ερώτημα μπορούμε να εμφανίσουμε τα στοιχεία της τρέχουσας μέρας, του μήνα κλπ. Αφού πήρες την απόφαση να συνεχίσεις μόνος, σου εύχομαι καλή τύχη=διάβασμα. Γιώργος |
#7
| |||
| |||
Χαιρετώ κ πάλι το forum... Κατάφερα να το φτιάξω, αλλα δεν με εξυπηρετεί διότι δεν μπορω να ενημερώσω τον αντίστοιχο πίνακα. Σε κάθε περίπτωση ευχαριστω για την βοηθεια... To ανεβάζω ομως, γιατι καποιος μπορεί να το χρειαστει... Επειδη Υπαρχει θέμα με τα προσωπικά δεδομένα, η ΒΔ ειναι αδεια απο δεδομενα... Μπορειτε να βαλετε οτι θέλετε και να το δοκιμάσετε Αλγόριθμος : 1. Φτιαχνω το ερωτημα "qry_FullName" το οποιο μου δημιουργει τα ονοματα που θα χρησιμοποιήσω στις γραμμές του πινακα μου 2. Φτιαχνω το ερωτημα "Insert_Into_Programmatismos" (INSERT INTO tbl_programmatismos ( [day], agm, fullname ) SELECT day, tbl_persons.agm, fullname FROM Ref_day, Tbl_persons, qry_FullName WHERE tbl_persons.RankCode >=5 AND tbl_persons.agm = qry_fullname.agm; Και ετσι γεμίζω τον πίνακα Programmatismos (Οπως πολυ σωστά με προετρεψε και ο φίλος Γιωργος να κανω) Σημειωση : Θα πρεπει πρωτυτερα να εχω γεμισει τον πινακα days με τις επιθυμητες ημερομηνίες (Καλο ειναι να το κανω σε excel οπου μπορω να το κανω πολυ γηργορα (μεσω της αυτοματης συμπληρωσης λιστας) και μετα να κανω copy - paste στον πινακα μου) 3. Δημιουργω το ερωτημα διασταυρωσης qry_Programmatismos Ευχαριστώ και πάλι Τελευταία επεξεργασία από το χρήστη stelianta : 26-01-12 στις 22:46. |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[Εκτύπωση] Εκτύπωση συνόλων σε κατάσταση απογραφής | LEO | Excel - Ερωτήσεις / Απαντήσεις | 8 | 08-02-19 15:51 |
[Excel07] Αντιστοίχηση στοιχείων σε κατασταση προσωπικού | nkouk | Excel - Ερωτήσεις / Απαντήσεις | 12 | 10-02-16 23:58 |
[ Συναρτήσεις ] Set την ημερομηνία του συστήματος. | pnikolareas | Access - Ερωτήσεις / Απαντήσεις | 3 | 19-02-15 11:11 |
[ Φόρμες ] Ημερομηνία με Calendar | stavross | Access - Ερωτήσεις / Απαντήσεις | 4 | 29-10-12 18:38 |
[ Συναρτήσεις ] Ημερομηνία | Meteora | Access - Ερωτήσεις / Απαντήσεις | 10 | 13-11-10 17:00 |
Η ώρα είναι 15:05.