Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
RecordSet με VBA
Φίλοι μου γειά σας, Αντιμετωπίζω το εξής πρόβλημα. Έχω έναν πίνακα μέσα στον οποίο βρίσκονται 18 ερωτήσεις που αποτελούν την βάση ενος σχετικού ερωτηματολογίου. Έχω δημιουργήσει μια σχετική φόρμα η οποία έχει σχεδιαστεί ακριβώς όπως μας δώθηκε η διαταγή (είναι για στρατιωτική χρήση) η οποία έχει σαν Record Source έναν δεύτερο πίνακα που σε καμια περίπτωση δεν συσχετίζεται με τον πρώτο που ανάφερα. Το πρόβλημα είναι το εξής; Στην φόρμα - ερωτηματολόγιο έχει τεθεί σαν Record Source ένα ερώτημα που σχετίζεται με τον δεύτερο πίνακα και εκεί μέσα πρέπει να καταχωρηθούν όλες οι απαντήσεις απο το ερωτηματολόγιο. Το ζήτημα είναι ότι στην φόρμα πρέπει να εμφανίζονται και οι ερωτήσεις του πρώτου πίνακα και για αυτό προσπάθησα να θέσω σαν Default Value για κάθε πεδίο - ερώτηση την ανάλογη εγραφή απο τον πρώτο πίνακα. Δυστυχώς αυτή η λύση δεν δουλεύει διότι πρέπε να είναι νέο Record για να εμφανίζονται οι ερωτήσεις που τέθηκαν στο Default Value κάθε πεδίου, πράγμα που όπως καταλαμβαίνετε μας δημιουργεί προβλημα. Έκανα κάποιες δοκιμές με κώδικα και κατά το άνοιγμα της φόρμας να δίνει τιμές στα ανάλογα πεδία με την λύση του RecordSet αλλά επειδή οι γνώσεις μου σε Vba είναι περιορισμένες δεν τα έχω καταφέρει. Εχω δημιουργήσει ένα σχετικό παράδειγμα του τί θέλω να κάνω και το κοινοποιώ εδώ μπας και κάποιος μπορεί να με βοηθήσει ως προς το ζητούμενο. Δυστυχώς δεν μπορώ να κοινοποιήσω ακριβώς την ιδια την βάση έστω χωρίς εγραφές μέσα διότι δεν μου επιτρέπεται οπως καταλαμβαίνεται. Θα εκτιμήσω την βοήθεια σας. Ευχαριστώ εκ προτέρων |
#2
| |||
| |||
Παιδιά αν μπορεί κάποιος να βοηθήσει, θα το εκτιμήσω αμέριστα. Εχω εντελώς "κολλήσει"... Ευχαριστώ |
#3
| ||||
| ||||
Καλημέρα Γιώργο. Τα δεδομένα τα έχεις στον πίνακα table1 και θες με ένα κουμπάκι να τα παρουσιάζεις σε μια φόρμα και ταυτόχρονα να τα αποθηκεύεις σε ένα πίνακα table2 !!! Κατά τα λοιπά ο πίνακας αυτός έχει δεδομένα που χρήζουν ιδιαίτερης προσοχής... Λοιπόν. Από τη στιγμή που τα δεδομένα υπάρχουν μόνο στον πίνακα table1, αυτή είναι η πηγή, είτε σε αρέσει, είτε όχι. Μάλλον κάτι άλλο έχεις στο μυαλό σου... To Recordset είναι ένα μέρος ενός όλου. Δεν καταλαβαίνω γιατί το αναζητάς ως λύση στη περίπτωση που περιγράφεις στην ανάρτηση σου. Έτσι -για την τιμή των όπλων- σε στέλνω και μια λύση. Ελπίζω τα μέλη του Forum να έχουν ιδέες πιο κοντινές σε ό,τι ψάχνεις. Με εκτίμηση Νίκος |
#4
| |||
| |||
Νίκο χαιρετώ και ευχαριστώ πολύ για την λύση, Ωστόσο, απο την αρχή την ανάρτησης του θέματος ήμουν σχεδόν βέβαιος πως θα δημιουργούσα ερωτηματικά ως προς το τι έχω και τι θέλω να κάνω. Έλα όμως που στην πράξη έτσι ακριβώς είναι τα πράγματα? Θέλω να δωσω μερικές διευκρινήσεις έτσι ώστε να πάρω στο τέλος και την ανάλογη βοήθεια. Λέω λοιπόν, έχω μια φόρμα (frmQuestions) η οποία παίρνει δεδομένα πράγματι απο ένα ερώτημα μέσα στο οποίο ένας απο τους τρείς πίνακες που συσχετίζονται είναι και ο πίνακας tblQuestioner. Ο πίνακας αυτός στην ουσία (και εδώ είναι η σύγχιση) γεμίζει με δεδομένα μέσω ενός ερωτήματος προσάρτησης δεδομένων που περιλαμβάνει τον πρώτο πίνακα. Στον πίνακα αυτό κανείς δεν έχει πρόσβαση (έρχεται απο άλλη βάση και είναι κλειδωμένη) και στην ουσία χρησιμεύει για να μπορεί η ιεραρχία να αλλάζει αυτοβούλως και όποτε θέλει τις ερωτήσεις χωρίς να τις γνωρίζει κανείς. Πρακτικά αυτό σημαίνει πως: 1. O πρώτος πίνακας (που είναι link δηλαδή) γεμίζει με δεδομένα - ερώτησεις και στην ουσία χρησιμεύει έτσι ώστε να λειτουργεί σαν μια "αποθήκη δεδομένων" η οποία αλλάζει κατά διαστήματα. 2. Στην φόρμα τώρα υπάρχουν τα αντίστοιχα σε αριθμό αδέσμευτα πεδία (18 unbound text fields) τα οποία εγώ θέλω να μπορούν να έχουν default τιμή την ερώτηση που περιλαμβάνει ο πρώτος πίνακας (link table) ανάλογα με το Row.Δηλαδή το πρώτο να έχει τιμή απο την πρώτη γραμμή του πίνακα, το πέμπτο απο την πέμπτη κλπ. Και εδώ είναι που "κουμπώνει" και η ιδέα του RecordSet που ανάφερα διότι υπολόγισα ότι ήτο δυνατό να μπορώ με κώδικα να καθορίσω ότι το κάθε unbound field θα παίρνει defaul τιμή απο την ανάλογη γραμμή του εν λόγο αν θελεις master table (link table). 3. Το τελευταίο σκέλος του ζητήματος έγγυται οτι: Κάθε ερώτηση που θα εμφανίζεται στην φόρμα θα "καθεται" ακριβώς δίπλα απο το πεδίο της ανάλογης απάντησης που είναι μέρος του δεύτερου άσχετου πίνακα. Δηλαδή για την ερώτηση 7, το unbound text field δείχνει τα δεδομένα της έβδομης γραμμής του link table και η απάντηση θα καταγραφεί στον δεύτερο πίνακα. Εδώ θα μπορούσε καλλιστα κάποιος να ισχυριστεί "και γιατί δεν συνδέεις του δύο πίνακες μεταξύ τους"?? Και η απάντηση μας είναι δια τον λόγο ότι δεν πρέπει αφενώς να μπορεί κάποιος να αλλιώσει την ερώτηση, και αφετέρου και να την διαγράψει κιόλας.! Φυσικά εδώ θα μπορούσες να μου έλεγες να κλειδώσω τα πεδία- ερωτήσεις άρα αποτρέπω την αλλιωση....το δέχομαι...όμως υπάρχουν σχεδιαστικοί λόγοι που δεν μπορώ να έχω κλειδωμένα αυτά τα πεδία.. Κλείνωντας αναφέρω πως είδα και μελέτησα την λύση που προτείνεις και θα ήθελα να πω ότι παρόλο που φαινομενικά πλησιάζει το ζητούμενο εντούτις και με βάση τα όσα ανάφερα δεν θα μπορούσε να εξυπηρετήσει απόλυτα τον σκοπό. Θα εκτιμούσα εάν τελικά θα μπορούσες να μου πρότεινες μια λύση έτσι ώστε: A. Τα δεδομένα απο τον master table (υπενθυμιζω link table) να μπορούν να καθορισθούν ως προεπιλεγμένη τιμή στα αδέσμευτα πεδία που ανάφερα, ανάλογα όπως είπα με την γραμμή προέλευσης τους. Δηλαδή για την πέμπτη γραμμή του πίνακα να μπορώ να δώσω τιμή στο πέμπτο αδέσμευτο πεδίο κλπ κλπ. Β. Εάν με τα όσα αναφέρω έχεις να προτείνεις κάτι διαφορετικό είναι απόλυτα εκτιμητέο ιδιαίτερα απο ένα άτομο καθόλα έμπειρο όπως και εσύ. Ευχαριστώ και πάλι προκαταρτικά. |
#5
| ||||
| ||||
Καλημέρα Γιώργο μας, να κάτι πιο πέρα από το προηγούμενο. Ελπίζω να βοηθά. Με εκτίμηση / Νίκος |
#6
| |||
| |||
Καλημέρα Νίκο, Ευχαριστώ που αφιέρωσες τον χρονο σου για να βοηθήσεις. Ειλικρηνά το εκτιμώ. Θα δώ την λύση που προτείνεις το απόγευμα όταν πάω σπίτι και θα επανέλθω. Σε κάθε περίπτωση ξανά σε ευχαριστώ φίλε μου. |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[ Φόρμες ] Αυτο το recordset δεν ειναι ενημερώσιμο! | dalavouras | Access - Ερωτήσεις / Απαντήσεις | 2 | 26-09-14 11:50 |
Ενημέρωση recordset | pdhmos | Access - Ερωτήσεις / Απαντήσεις | 10 | 08-11-10 15:00 |
Recordset με βάση το τρέχον φίλτρο | cghera | Access - Ερωτήσεις / Απαντήσεις | 3 | 07-11-10 22:42 |
Η ώρα είναι 21:38.