Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
![]() |
| Εργαλεία Θεμάτων ![]() | Τρόποι εμφάνισης ![]() |
#1
| |||
| |||
![]()
Καλημέρα και πάλι. Έχω μια διπλή φόρμα και θέλω μια τιμή από τη δευτερεύουσα φόρμα, η οποία τιμή υπάρχει από πρίν, να μεταφέρεται στην πρωτεύουσα αυτόματα. Γίνεται; Έλπίζω να μη γίνομαι κουραστικός Ευχαριστώ Τελευταία επεξεργασία από το χρήστη gmax : 29-07-11 στις 13:56. |
#2
| |||
| |||
![]()
Καλησπέρα Γιώργο, υποθέτω ότι η κύρια φόρμα λέγεται «frmMain», η δευτερεύουσα «frmSub», το πεδίο της κύριας φόρμας που θα ενημερώνεται «txtMain» και το πεδίο της δευτερεύουσας, που θα ενημερώνει το «txtMain», «txtSub». Αν στην ιδιότητα «Προέλευση στοιχείου ελέγχου» του πλαισίου κειμένου «txtMain» δώσουμε τιμή: =[frmSub].[Form]![txtSub], τότε τα δύο πλαίσια κειμένου θα εμφανίζουν ίδια τιμή. Στην περίπτωση που θέλεις κάτι άλλο καλό είναι να ανεβάσεις ένα δείγμα της ΒΔ με την κύρια και τη δευτερεύουσα φόρμα και τους υποκείμενους πίνακες. Φιλικά/Γιώργος . |
#3
| |||
| |||
![]()
Καλησπέρα. Δεν μπόρεσα να κάνω κάτι με αυτό που μου στείλατε και ανεβάζω ένα δείγμα μήπως και μπορέσετε να με βοηθήσετε. Το ζητούμενο είναι: τα πεδία "ΥΨΟΣ" και "ΒΑΡΟΣ" της πρωτεύουσας φόρμας να ενημερώνονται από τα αντίστοιχα της δευτερεύουσας. Αυτό που ανεβάζω είναι ένα πρόχειρο δείγμα σε access 2007. Το πρόγραμμα είναι φτιαγμένο σε 2003. Ευχαριστώ πολύ! |
#4
| |||
| |||
![]()
Ξέχασα να ανεβάσω το αρχείο. Συγνώμη.
|
#5
| |||
| |||
![]() Μια γρήγορη απάντηση με μια γρηγορη ερώτηση. Γιατι θες να φαίνονται σε 2 σημεία τα ίδια πράγματα;
|
#6
| |||
| |||
![]()
Καλησπέρα. Η μία τιμή μένει μαζί με το χρόνο, ενώ η άλλη θα αλλάξει μετά από νέα ζύγιση. Δηλ. έκανε αυτόν το χρόνο όντας 90 κιλά, ενώ σήμερα μετά από νέα ζύγιση είναι 100 κιλά. Για λόγους διατήρησης αρχείου αποδόσεων και σύγκρισης αυτών. |
#7
| |||
| |||
![]()
Καλημέρα στην παρέα Γιώργο, η σημαντικότερη εργασία στο στήσιμο μιας ΒΔ είναι η σωστή σχεδίασή της (σκοπός, απαιτούμενα δεδομένα, κατανομή δεδομένων σε πίνακες, σχέσεις πινάκων). Στη βάση δεδομένων που ανέβασες υπάρχουν: 1. Ο Πίνακας «ΓΕΝΙΚΑ ΣΤΟΙΧΕΙΑ ΑΘΛΗΤΗ» που περιέχει τα στοιχεία ταυτότητας του αθλητή. Στον πίνακα αυτό υπάρχουν δύο πεδία για το φύλο του αθλητή και ένα (υπολογιζόμενο) για την ηλικία. Υπάρχουν δηλαδή άχρηστα πεδία. Άχρηστο φαίνεται ότι είναι και το πεδίο «ΕΤΟΣ», αφού από τις ημερομηνίες που καταχωρούμε στους άλλους πίνακες (ΣΩΜΑΤΟΜΕΤΡΙΚΑ, κλπ) μπορούμε να βρούμε, για κάποιο έτος, αν ένας αθλητής είναι ενεργός ή όχι. 2. Ο πίνακας «ΠΙΝΑΚΑΣ ΧΡΟΝΩΝ ΑΘΛΗΤΗ», που περιέχει στοιχεία επιδόσεων και σωματομετρικά (ΥΨΟΣ, ΒΑΡΟΣ) για τον αθλητή. 3. Ο πίνακας «ΣΩΜΑΤΟΜΕΤΡΙΚΑ» που περιέχει σωματομετρικά στοιχεία για τους αθλητές. Ο πίνακας αυτός δικαιολογείται μόνο αν πέρα από τα σωματομετρικά που μετρούμε ταυτόχρονα με τις επιδόσεις, κάνουμε και ξεχωριστές μετρήσεις. Το πεδίο «ΕΛΑΦΡΩΝ ΒΑΡΩΝ» εξαρτάται από το βάρος συνεπώς δεν είναι αναγκαίο. Στη ΒΔ που επισυνάπτω προσπάθησα να δείξω τι εννοώ με τα παραπάνω. Με τη σύνθετη φόρμα που περιέχει μπορούμε να δούμε, να προσθέσουμε, να διαγράψουμε και να τροποποιήσουμε στοιχεία στους τρεις πίνακες της ΒΔ. Ειδικά για τη διαχείριση των στοιχείων των πινάκων «ΣΩΜΑΤΟΜΕΤΡΙΚΑ» και «ΠΙΝΑΚΑΣ ΧΡΟΝΩΝ ΑΘΛΗΤΗ», πρώτα θα πρέπει να επιλέξουμε στην κύρια φόρμα τον αθλητή και μετά να εργαστούμε με τις υποφόρμες που υπάρχουν στις καρτέλες «Σωματομετρικά» και «Επιδόσεις». Η δευτερεύουσα φόρμα στην καρτέλα «Σωματομετρικά_Όλα» συγκεντρώνει και δείχνει τα σωματομετρικά στοιχεία και από τους δύο πίνακες. Αν και δεν ξέρω τι ακριβώς θέλεις, πιστεύω ότι, μελετώντας και δοκιμάζοντας τη ΒΔ, θα βοηθηθείς να βελτιώσεις τη σχεδίαση της δική σου. Φιλικά/Γιώργος Τελευταία επεξεργασία από το χρήστη kapetang : 01-08-11 στις 10:38. Αιτία: Αλλαγή συνημμένου |
#8
| |||
| |||
![]()
Καλησπέρα. Το «ΕΤΟΣ» μου δίνει τη δυνατότητα να βρω την τρέχουσα ηλικία του αθλητή κάτι που προσδιορίζει την κατηγορία του αθλητή, "παίδων", "εφήβων" κ.ά.. Όσο για το φύλλο είναι επίσης βασικό στις κατηγορίες, "παίδων", "κορασίδων" κ.ά.. Στον «ΠΙΝΑΚΑΣ ΧΡΟΝΩΝ ΑΘΛΗΤΗ» τα στοιχεία των μετρήσεων (βάρος, ύψος) είναι ταυτισμένα με τους χρόνους που έκανε με αυτές τις τιμές. Σήμερα μπορεί να είναι 70 κιλά, αλλά όταν έκανε τον τάδε χρόνο ήταν 65. Οι τρέχουσες τιμές βάρους και άλλων βρίσκονται στον πίνακα «ΣΩΜΑΤΟΜΕΤΡΙΚΑ». Όσο για το πεδίο «ΕΛΑΦΡΩΝ ΒΑΡΩΝ» βοηθά στην κατηγοριοποίηση των αθλητών. Το άθλημα είναι η κωπηλασία και τα βάρη παίζουν ρόλο. Υπάρχει π.χ. η δίκωπος ανδρών και η δίκωπος ελαφρών βαρών ανδρών. Τέλος πιστεύω ότι ένα πρόγραμμα μπορεί να σχεδιαστεί και να υλοποιηθεί με διαφορετικούς τρόπους και από διαφορετικούς δρόμους. Ευχαριστώ για τις απαντήσεις και τη βοήθειά σας |
#9
| |||
| |||
![]()
Καλημέρα Φαίνεται ότι το προηγούμενο μήνυμά μου δεν έγινε κατανοητό. Δεν ισχυρίζομαι ότι η ηλικία, το φύλο και η κατηγορία βάρους του αθλητή δεν είναι σημαντικά και δεν πρέπει να τα παρακολουθούμε. Απλά επισήμανα τα εξής: 1. Δε χρειάζεται στον πίνακα με τα στοιχεία ταυτότητας του αθλητή να υπάρχει το πεδίο «ΕΤΟΣ» στο οποίο κάθε χρόνο θα καταχωρούμε το τρέχον έτος. Κάθε υπολογιστής έχει ένα εσωτερικό ρολόι και κάθε στιγμή μπορούμε να έχουμε την τρέχουσα ημερομηνία και ώρα. Η access διαθέτει κατάλληλες συναρτήσεις για να πάρει τα στοιχεία αυτά. Ο τύπος year(Date()) μας δίνει το τρέχον έτος έτσι, αν σε κάποιο πλαίσιο κειμένου σε μία φόρμα ή έκθεση ή και σε κάποιο πεδίο ερωτήματος βάλουμε την έκφραση: = year(Date())-[ΕΤΟΣ ΓΕΝΝΗΣΗΣ] (στο ερώτημα χωρίς το =), θα έχουμε την ηλικία του αθλητή. 2. Στον πίνακα με τα προσωπικά στοιχεία υπάρχει το πεδίο κειμένου «ΦΥΛΟ», όπου καταχωρείται το φύλο (άρρεν, θήλυ) και το πεδίο τύπου Ναι/Όχι «ΑΡΡΕΝ». Δε χρειάζονται και τα δύο. Μπορούμε να έχουμε μόνο το «ΦΥΛΟ» ως πεδίο αναζήτησης που θα παίρνει δύο τιμές (άρρεν, θήλυ). Ή να έχουμε μόνο το «ΑΡΡΕΝ» και, αν θέλαμε σε κάποια φόρμα ή έκθεση να εμφανίζονται και οι λέξεις «άρρεν» ή «Θήλυ», θα προσθέταμε ένα πλαίσιο κειμένου με προέλευση τον τύπο: =IIF([ΑΡΡΕΝ];"άρρεν";"θήλυ"). 3. Το αν ένας αθλητής είναι «ΕΛΑΦΡΩΝ ΒΑΡΩΝ» εξαρτάται από το βάρος του. Αν υποθέσουμε ότι «ΕΛΑΦΡΩΝ ΒΑΡΩΝ» είναι οι αθλητές με βάρος λιγότερο των 60 κιλών, τότε με τον τύπο : IIF([ΒΑΡΟΣ]<60; "ΕΛΑΦΡΩΝ ΒΑΡΩΝ"; "") μπορούμε να εμφανίσουμε τη φράση «ΕΛΑΦΡΩΝ ΒΑΡΩΝ» για κάθε αθλητή αυτής της κατηγορίας. Στο προηγούμενο μήνυμά μου, για να κάνω τα παραπάνω πιο κατανοητά, επισύναψα και ένα δείγμα ΒΔ με μία φόρμα, που εμφανίζει τα παραπάνω στοιχεία (ηλικία, φύλο, κατηγορία βάρους), χωρίς να υπάρχουν στη βάση τα πεδία «ΕΤΟΣ», «ΑΡΡΕΝ» και «ΕΛΑΦΡΩΝ ΒΑΡΩΝ». Συμφωνώ απόλυτα με την επισήμανσή σου «πιστεύω ότι ένα πρόγραμμα μπορεί να σχεδιαστεί και να υλοποιηθεί με διαφορετικούς τρόπους και από διαφορετικούς δρόμους». Θα χαρώ και νομίζω ότι θα βοηθούσε και τα υπόλοιπα μέλη, αν κάποια στιγμή, ανέβαζες και τη δική σου υλοποίηση (το δικό σου δρόμο). Φιλικά/Γιώργος |
#10
| |||
| |||
![]()
Καλησπέρα. Ο δικός μου δρόμος, επειδή ξεκίνησα με τα μισά απ' όσα έχω τώρα στο πρόγραμμα, έχει γίνει δαιδαλώδης και όχι μόνο δεν θα βοηθούσε αλλά θα μπέρδευε του φίλους. Για παράδειγμα το πεδίο "Άρρεν" ΄"Ναι-Όχι" ήταν η αρχική επιλογή μου στον προσδιορισμό του φύλλου και όταν έβαλα το πεδίο Άρρεν-Θήλυ βαρέθηκα να το αλλάξω και έκανα το If ΦΥΛΛΟ ="Άρρεν" Then Άρρεν = true και το αντίθετο και άλλα τέτοια. Όσο για το έτος το έψαξα αλλά δεν μπόρεσα να το κάνω και θα ήταν το επόμενο ερώτημά μου σε σας. Μέχρι τώρα το ενημέρωνα με αλλεπάλληλα ερωτήματα (διαγραφής, ενημέρωσης). Το "ΕΛΑΦΡΩΝ ΒΑΡΩΝ" λειτουργεί έτσι όπως λες σε ατομικό επίπεδο. Αλλά υπάρχουν και πληρώματα από 2 έως οκτώ άτομα οπότε εκεί πρέπει να το ορίσω εγώ. Και μια που το συζητάμε, μια ερώτηση σχετική. Σε διαδικασία συμβάντος γράφω: If ΒΑΡΟΣ >= 72,500 Then ΕΛ. ΒΑΡΗ = Falsue και If ΒΑΡΟΣ <= 72,499 Then ΕΛ. ΒΑΡΗ = True. Εάν όμως τα κιλά είναι πάνω από 100, η πρώτη συνάρτηση δεν λειτουργεί. Λειτουργεί μέχρι τα 99,999 κιλά. Για άλλη μια φορά ευχαριστώ. Όταν το ολοκληρώσω θα το ανεβάσω |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
Δευτερεύουσα φόρμα και εγγραφές | kellis | Access - Ερωτήσεις / Απαντήσεις | 3 | 20-02-19 17:38 |
[ Φόρμες ] Δευτερεύουσα Φορμα | gaz_manos | Access - Ερωτήσεις / Απαντήσεις | 1 | 18-12-15 09:58 |
[ Φόρμες ] Κουμπί εύρεσης σε φόρμα που περιέχει δευτερεύουσα φόρμα | sakis297 | Access - Ερωτήσεις / Απαντήσεις | 2 | 21-11-14 19:23 |
Δευτερεύουσα φόρμα | Χρήστος | Access - Ερωτήσεις / Απαντήσεις | 3 | 27-11-13 11:11 |
[ Υποφόρμες ] Πρόβλημα με δευτερεύουσα φόρμα | gmax | Access - Ερωτήσεις / Απαντήσεις | 4 | 10-02-13 19:50 |
Η ώρα είναι 14:16.