![]() |
Πρόβλημα με access - ενημέρωση πινάκων καλησπέρα παιδιά! Καλησπερα σε όλα τα παιδιά του forum. χρειάζομαι μια βοήθεια γιατί κυριολεκτικά έχει πάρει φωτιά ο κώλος μου. Έχω 2 πίνακες. Ο πρώτος (πίνακας1) έχει τα στοιχεία ασθενών ενός νοσοκομείου και έχει πρωτεύον κλειδί το ΑΜΚΑ τους. Ο δεύτερος πίνακας (πίνακας 2) έχει το ΑΜΚΑ σαν πρωτεύον κλειδί και κάποια οικονομικά στοιχεία του πελάτη (χρεώσεις,πιστώσεις κλπ). το πρόβλημα μου είναι το εξής. Θέλω όταν περνάω μια εγγραφή στον πίνακα 1 να δημιουργείται και μια εγγραφή στον πίνακα 2 με το ΑΜΚΑ του ασθενή ώστε να μην καταχωρώ τις εγγραφές 2 φορές. Οι 2 πίνακες έχουν σχέση ένα προς ένα. Υπάρχει κάποια λύση σε microsoft access interface για απο sql δύσκολα τα πράγματα. χίλια ευχαριστώ προκαταβολικά |
1 Συνημμένο(α) Αποστόλη καλημέρα Δες την συνημμένη βάση. Γνώμη μου είναι πως οι πίνακες θα πρέπει να έχουν σχέση 1 προς πολλά καθώς ο πελάτης είναι μοναδικός αλλά οι συναλλαγές πολλές. Βέβαια ίσως έχεις σκεφθεί διαφορετική προσέγγιση οπότε αλάζεις τις σχέσεις. |
Ευχαριστω παρα πολυ για την απαντηση σου...θα την τσεκαρω.τελευταια ερωτηση...οταν θελω να αθροισω 3 στηλες απο 3 διαφορετικους πινακες και να βρω ενα συνολικο αθροισμα,αυτο γινεται με εντολες access ή θελει κωδικα sql?γνωριζεις πως μπορει να γινει; |
Οι πίνακες έχουν κάποιο κοινό πεδίο? (πχ ΑΜΚΑ) Αν ναί γίνεται με ένα απλό ερώτημα. Προσθέτεις όλους τους πίνακες, δημιουργείς τις σχέσεις μεταξύ των και κάνεις το άθροισμα. πχ. Άθροισμα:tbl1.poso+tbl2.poso+tbl3.poso. |
βασικά είναι 2 οι απορίες μου και ζητάω προκαταβολικά συγνώμη που σε πρήζω, Απορία 1. Έχουμε 3 πίνακες ΑΣΘΕΝΕΙΣ(αμκα,όνομα,επίθετο) ΙΑΝΟΥΑΡΙΟΣ(αμκα, πίστωση,χρεωση,υπολοιπο) ΦΕΒΡΟΥΑΡΙΟΣ (αμκα, πίστωση,χρεωση,υπολοιπο). σε αυτούς πρωτεύων κλειδί είναι το αμκα και οι σχέσεις είναι 1 προς 1. θέλω να βρίσκω π.χ. τις συγκεντρωτικές χρεώσεις των 2 μηνών με βάση ένα αμκα πελάτη...δηάδή πόση συνολική χρέωση έχει ο πελάτης με αμκα 2121212121 για τους 2 μήνες. Απορία 2. Σε ένα πίνακα Α(χρέωση1, χρέωση 2, χρέωση 3, Συνολική χρέωση) θέλω μόλις συμπληρώνω τις τιμές στα 3 πρώτα πεδία να συμπληρώνεται αυτόματα το άθροισμα τους στο πεδίο Συνολική χρέωση. Αυτά και πάλι ευχαριστώ για το χρόνο σου!! :) |
Αποστόλη καλησπέρα Δεν έχει λογική να έχεις πίνακα για κάθε μήνα. Τον ρόλο αυτό τον παίζει η ημερομηνία συναλλαγής βάση της οποίας μπορείς να φτιάξεις ερωτήματα όπου κάνεις ομαδοποιήσεις ανα μήνα, 3μηνο, έτος κλπ και παίρνεις συγκεντρωτικά αποτελέσματα περιόδων. Ανέβασε ένα παράδειγμα ή αν δεν έχεις κατασταλάξει σχετικά με την σχεδίαση της βάσης, δώσε μας μια γενική ιδέα του τι στοιχεία θα καταχωρείς και τι συγκεντρωτικά αποτελέσματα θέλεις για να σου προτείνουμε κάτι. |
το έκανα με τον τρόπο που λες απλά θα γίνει χαμός στον πίνακα από τις πάρα πολλές εγγραφές. Θα το ξαναδοκιμάσω πάντως. Αυτό που με καίει είναι η δεύτερη απορία. Αν μπορώ να αθροίζω 3 πεδία μιάς εγγραφής σε ένα τέταρτοπεδίο στον ίδιο πίνακα...και η άθροιση να γίνεται αυτόματα...όπως στο excel όταν στο κελί υπάρχει η συνάρτηση sum. |
Μην σε προβληματίζει ο αριθμός των εγγραφών. Το σημαντικό είναι η σωστή σχεδίαση της βάσης. Έχω βάση με πάνω από 500.000 εγγραφές σε ένα πίνακα. Ως προς τα αθροίσματα η κατάσταση δεν είναι τόσο απλή όπως στο excel αλλά υπάρχουν πολλές λύσεις πολλές εκ των οποίων έχουν αναφερθεί σε διάφορα θέματα του Forum. Κυρίως ομαδοποιήσεις και μερικά αθροίσματα μπορείς να κάνεις πολύ εύκολα με τις Εκθέσεις. Ξεκίνα την σχεδίαση της βάσης σου, πέρασε κάποια παραδειγματικά δεδομένα και σε κάθε απορία σου ανέβασε συνημμένα ένα παράδειγμα με συγκεκριμένη ερώτηση-ερωτήσεις ώστε να βοηθηθείς και παράλληλα να αποκτήσεις επιπλέον γνώσεις στην σχεδίαση βάσεων δεδομένων. |
χίλια ευχαριστώ για τη βοήθεια ειλικρινά.θα ετοιμάσω ένα παράδειγμα και θα το ανεβάσω. :dft009: |
1 Συνημμένο(α) Καλησπέρα σε όλους! Επιτρέψτε μου να ανεβάσω και εγώ ένα σχετικό παράδειγμα στο μεταξύ. Το επισυναπτόμενο έχει έναν πίνακα για τους ασθενείς και έναν για τα ποσά. Δείτε του πίνακες για να ξέρετε τι θα πληκτρολογήσετε κατά την εκκίνηση του ερωτήματος "Sumary". Καλή συνέχεια! Τάσος |
1 Συνημμένο(α) Sarafis ανεβαζω ένα παραδειγματάκι σχετικά με το πρόβλημα της αυτόματης άθροισης πεδίων σε ένα πίνακα. Tasos επειδή αυτή τη στιγμή είμαι σε pc με access 2003 δεν μπορώ να ανοίξω το αρχείο. :( |
1 Συνημμένο(α) Καλησπέρα! Αποστόλη, δες το συνημμένο σε *.mdb. Τάσος |
Tasos πολύ καλό το παράδειγμα που έκανες. μόνο που όταν πάω να το τρέξω μου λεεί ότι "στην έκφραση υπάρχει μη ορισμένη συνάρτηση FORMAT" αν την ξετικάρω μόνο με αφήνει να τρέξω το ερώτημα. φαντάζομαι ότι με κάποια τροποίηση θα μπορεί να μου ζητάει και το όνομα ή το αμκα του πελάτη ώστε να βρίσκω συγκεντρωτικές χρεώσεις ανα άτομο ε? το τελευταίο άλυτο πρόβλημα που έχω όμως (και για μένα το πιο δύσκολο) είναι το προηγούμενο που ανέβασα...αυτό με την αυτόματη άθροιση.έχεις καμία ιδέα? |
1 Συνημμένο(α) Αποστόλη στο συνημμένο εμφαίνεται ο ενδεδειγμένος τρόπος να καταχωρείς δεδομένα. Αυτό που περιγράφεις δεν γίνεται εκτός και αν η συναλαγή με το άτομο γίνεται μόνο μια φορά και οι συναλλαγές είναι συγκεκριμένες πχ τρείς δόσεις. |
Αποστόλη, θα πρέπει να μπεις στον VBE me ALT + F11, να επιλέξεις Tools >References και να αφαιρέσεις τυχόν τσεκαρισμένα στοιχεία που περιέχουν τη λέξη "MISSING". Δεν κοίταξα ακόμα το αρχείο σου αλλά δες πρώτα το αρχείο του Στέλιου. Τάσος |
Τασο αυριο θα φτιαξω το ερωτημα μου με το μπουσουλαπου μου εδωσες και αν εχω καποιο θεματακι σου λεω. :) Στελιο θα το δω το αρχειο αυριο γιατι τωρα μπαινω απο κιν.παντως ειναι αδικο να γινεται τοσο ευκολα συο excel ενα αθροισμα πεδιων και να μξγι εται στην access |
1 Συνημμένο(α) Αποστόλη Στην Access είναι λίγα τα πράγματα που δεν γίνονται. Προσπάθησα να σου εξηγήσω πως ε΄ναι η σωστή σχδίαση μιας σχεσιακής βάσης δεδομένων. Τώρα αν θές μόνο ένα πίνακα δες το ερώτημα στην συνημμένη βάση. Το άθροισμα των πεδίων που θές υπολογίζεται με απλές πράξεις. Η τιμή δεν καταχωρείται στον πίνακα, μπορεί να γίνει και αυτό αλλά δεν έχει νόημα να καταχωρείς υπολογιζόμενα πεδία σε πίνακες, είναι σπατάλη χώρου. Ελπίζω να σε κάλυψα. |
Tasos σχετικά με το κώδικα sql pου μου έδωσες στο αρχείο testsum θέλω μια μικρή βοήθεια. Θα ήθελα να ζητάει έτος,αρχικο μήνα, τελικό μήνα όπως το έκανες εσυ αλλά και αμκα ώστε να μου επιστρέφει για το άτομο που ζητάω συνολική χρέωση, πίστωση και υπόλοιπο. Σου επισυνάπτω και τη βάση δεδομένων ώστε να καταλάβεις τι ζητάω και να το τροποποίησεις στα δικά μου πεδία... σόρρυ για το πρήξιμο αλλά με αυτή τη λεπτομέρεια τελειώνω το project. :) Υ.Γ. το αρχείο στείλτο αν θέλεις σε *.accdb επειδη το αρχείο της βάσης ήταν μεγάλο το ανέβασα εδω ΚΛΙΝΙΚΗ.accdb - Speedy Share - upload your files here |
Καλησπέρα! Αποστόλη, άνοιξε το ερώτημα σε προβολή SQL και αντικατέστησε τον κώδικα SQL που περιέχει με τον με τον παρακάτω: Κώδικας: PARAMETERS [Όρισε Έτος] Short, [Όρισε αρχικό μήνα] Short, [Όρισε τελικό μήνα] Short, [Όρισε κωδικό ΑΜΚΑ] Text ( 255 );Τάσος |
βασικά πριν από λίγα λεπτά ανέβασα τη βάση που έχω φτιάξει...οπότε φαντάζομαι ότι αυτός ο κώδικας δε θα τρέχει για τη βάση μου εε?γιατι βλέπω μέσα στον κώδικα άλλα ονόματα πεδίων... |
τον δοκίμασα να τον βάλω στη δική μου βάση με κάποιες τροποποιήσεις αλλά δεν τρέχει...:019: μπορείς να τον τροποποιήσεις λίγο? |
1 Συνημμένο(α) Αποστόλη, θα πρέπει να συμπιέσεις τη βάση σου σε ZIP (μέγεθος μετά την συμπίεση < 200ΚΒ) και να την ανεβάσεις στο φόρουμ κανονικά. Γιατί να εγκαταστήσει κάποιος πρόγραμμα με "υποπρογράμματα" για να δει τη βάση σου; Σου επισυνάπτω παράδειγμα με το ερώτημα του προηγούμενου μου μηνύματος. Άνοιξε το ερώτημα που περιέχεται σε μορφή επεξεργασίας για να δεις πως λειτουργεί. Δες επίσης τις παραμέτρους που έχουν προσδιοριστεί (καρτέλα Σχεδίαση>Παράμετροι). Όπως προανέφερε και ο Στέλιος, έτσι όπως έχεις σχεδιάσει τη βάση σου να ξέρεις ότι θα αντιμετωπίσεις αρκετές ή αξεπέραστες δυσκολίες μέχρι να την τελειοποιήσεις. Φιλικά Τάσος |
1 Συνημμένο(α) παιδιά να τα βάλουμε σε μια σειρά γιατί έχω χάσει λίγο την μπάλα. το ερώτημα που μου έστειλες εσύ λειτουργεί πολύ καλά στο παράδειγμα της βάσης σου αλλά δε δέχεται σαν κριτήριο το αμκα του ασθενή ώστε να είναι εξατομικευμένα τα αποτελέσματα του ερωτήματος. επισυνάπτω συμπιεσμένη τη βάση μου ώστε αν μπορέσεις να δημιουργήσεις πάνω στη δική μου βάση το ερώτημα αυτο. που θα ζητάει δηλαδή αμκα, έτος και μήνα (αρχικό και τελικό από το πεδίο α πληρωμή ) και θα επιστρέφει τις συνολικές χρεώσεις πιστώσεις και υπόλοιπο τους ασθενούς στο χρονικό διάστημα αυτό. |
| Η ώρα είναι 23:42. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.