Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   Φόρμες, υποφόρμες, παράδειγμα με διαγράμματα (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/682-formes-ypoformes-paradeigma-me-diagrammata.html)

agi37 27-07-10 11:07

Φόρμες, υποφόρμες, παράδειγμα με διαγράμματα
 
Καταρχήν καλημέρα!

Είμαι καινούρια στο forum και οφείλω να ομολογήσω ότι έχω μείνει έκπληκτη από το έργο σας. Μπράβο παιδιά, ευτυχώς που υπάρχετε και σεις!!!:handshake:

Εδώ και κάτι μέρες παλεύω με μια βάση σε Access 2003 όπου καταχώρησα κάποια διαχρονικά δεδομένα μιας υπηρεσίας. Στόχος σε πρώτη φάση είναι η ανάκτηση αυτών και η απεικόνιση τους σε reports και διαγράμματα.

Θα ήθελα να ρωτήσω τα ακόλουθα::confused1::confused1:

α) Οι φόρμες που έχω κάνει αποτελούνται από υποφόρμες και ανακτώ πληροφορίες επιλέγοντας με λίστα τιμών=έτος (από Ερώτημα/Πίνακα). Όλα ΟΚ. Όταν όμως ανοίγω μια άλλη φόρμα (η οποία είναι κουμπί πάνω στην κεντρική φόρμα) για να δω πιο αναλυτικά επιπλέον κάποια δεδομένα επιστρέφοντας στην κεντρική φόρμα και αρχίζοντας το παίξιμο της ροδέλας του ποντικιού τότε αλλάζουν όλες οι τιμές στις υποφόρμες που υπάρχουν χωρίς όμως να ενημερώνεται η λίστα τιμών. Καταλαβαίνεται ότι αυτό δίνει λάθος πληροφορία. Αν ξαναεπιλέξω μια τιμή από τη λίστα λειτουργούν όλα κανονικά. Τί ρύθμιση πρέπει να κάνω στη φόρμα?

β)Θέλω να μου στείλετε κανά παράδειγμα με διαγράμματα, πως από έναν πίνακα ή ερώτημα μπορώ να πλοτάρω κάποια πεδία?

γ)Την τρίτη ερώτηση θα την κάνω αργότερα γιατί πιστεύω ότι είδη σας έχω κουράσει με την μακρηγορία μου.

Ευχαριστώ εκ των προτέρων,

Φιλικά,
agi37:bye::bye::bye:

Tasos 27-07-10 16:08

Καλησπέρα σε όλους!

Ανθή καλωσόρισες στο φόρουμ!

Στην πρώτη ερώτηση σου απλά φρόντισε να ανοιγεις τη νέα φόρμα
σε παράθυρο διαλόγου. Έτσι, η εστίαση σε οπιοδήποτε άλλο σημείο της εφαρμογής θα είναι αδύνατη.
Αυτό επιτυγχάνεται στο φύλλο ιδιοτητήτων της νέας φόρμας στην καρτέλα "Μορφή" επιλέγοντας "Στυλ περιγράμματος" = "Διάλογος"
ή
Αν πίσω από το κουμπί που ανοίγει τη νέα φόρμα υπάρχει μακροεντολή,
τότε στο όρισμα ενέργειας "κατάσταση παραθύρου", επιλεξε "Παράθυρο διαλόγου"

Αν πάλι πρόκειται για Κώδικα VBA τότε η γραμμή του κώδικα που ανοίγει νέα φόρμα
θα πρέπει να περιέχει στο έκτο όρισμα της (WindowMode) να περιέχει τη σταθερά "acDialog"

δηλ.: DoCmd.OpenForm "formName", , , , , acDialog

Στη δεύτερη ερώτηση σου θα σου πρότεινα να ρίξεις μια ματια στον παρακάτω σύνδεσμο:
Αποτελέσματα αναζήτησης για "γράφημα access" - Access - Microsoft Office

Καλή συνέχεια λοιπόν!

Φιλικά

Τάσος

agi37 28-07-10 07:37

1 Συνημμένο(α)
Καλημέρα Τάσο φυσικά και σε ολόκληρη την παρέα.

Έκανα τις αλλαγές που πρότεινες αλλά δυστυχώς ούτε η μια λύση δουλεύει ούτε η άλλη.:cry4:

Συνημμένα σου στέλνω ένα print screen της κεντρικής φόρμας και του κώδικα στη φόρμα 'Συγκεντρωτικά'.

Όπως ανέφερα και χθές όταν κάνω εύρεση με τη λίστα τιμών (ΕΤΟΣ) όλα ΟΚ όμως μόλις ανοίξω π.χ. τη φόρμα 'Συγκεντρωτικός Πίνακας' και επιστρέψω πάλι πίσω παίζοντας με τη ροδέλα του ποντικιού αλλάζουν όλες οι τιμές εκτός από το πεδίο 'ΕΤΟΣ'. Γιατί?

Ευχάριστω και πάλι που ασχολήθηκες με το πρόβλημα μου,
Φιλικά,
Ανθή.

kapetang 28-07-10 09:42

Καλημέρα στην παρέα

Ανθή πιστεύω ότι, καθώς περιστρέφεις τη ροδέλα, αλλάζει η τρέχουσα εγγραφή.
Αυτό θα μπορούσες να το εξακριβώσεις, αν σε προβολή σχεδίασης και στο φύλλο ιδιοτήτων έκανες τη ρύθμιση: Μορφή > Κουμπιά μετακίνησης > Ναι, για να βλέπεις την τρέχουσα εγγραφή.
Νομίζω ότι το πρόβλημα θα λυθεί αν (σε προβολή σχεδίασης) κάνεις τη ρύθμιση: Άλλα > κυκλική εναλλαγή > Τρέχουσα εγγραφή.

Φιλικά/Γιώργος

Tasos 28-07-10 10:52

1 Συνημμένο(α)
Καλημέρα Ανθή,
Πιστεύω και συμφωνώ με το Γιώργο ότι καθώς περιστρέφεις τη ροδέλα, αλλάζει η τρέχουσα εγγραφή, κάτι που δεν θέλεις να συμβαίνει
όταν έχεις ανοίξει τη νέα φόρμα.
Μ αυτό το σκεπτικό σου πρότεινα να ανοίξεις τη νέα φόρμα ως διάλογο που μάλλον δεν το έκανες κανονικά.
Γιατί αν το έκανες, σε καμία περίπτωση δεν θα είχες τη δυνατότητα να επιστρέψεις στην αρχική σου φόρμα και να κάνεις οτιδήποτε αφού η εστίαση θα διατηρείτο στη νέα φόρμα/διάλογο.

Απ ότι παρατηρώ στις εικόνες σου, στον κώδικα που ανοίγει τη νέα φόρμα
δεν υπάρχει το έκτο όρισμα (WindowMode) που θα έπρεπε να περιέχει τη σταθερά "acDialog" όπως είχα περιγράψει.

Υπάρχει κάτι που δεν κατανόησα στην ερώτηση σου;

Δες ένα παραδειγματάκι στο συνημμένο παρακάτω.

Φιλικά

Τάσος

agi37 28-07-10 12:18

Κάνω κάτι λάθος???
 
Παράθεση:

Αρχική Δημοσίευση από kapetang (Μήνυμα 3310)
Καλημέρα στην παρέα

Ανθή πιστεύω ότι, καθώς περιστρέφεις τη ροδέλα, αλλάζει η τρέχουσα εγγραφή.
Αυτό θα μπορούσες να το εξακριβώσεις, αν σε προβολή σχεδίασης και στο φύλλο ιδιοτήτων έκανες τη ρύθμιση: Μορφή > Κουμπιά μετακίνησης > Ναι, για να βλέπεις την τρέχουσα εγγραφή.

ΟΚ βάζωντας ξανά τα κουμπιά μετακίνησης το μόνο που κερδίζω είναι να βλέπω σε ποια εγγραφή βρίσκομαι όταν μετακινώ την ροδέλα. Το πρόβλημα παραμένει. ΣΤΟ ΠΕΔΙΟ 'ΕΤΟΣ' ΔΕΝ ΕΧΩ ΜΕΤΑΚΙΝΗΣΗ. Δηλαδή δεν γνωρίζω σε ποιο έτος αναφέρονται οι τιμές που δίνει το κάθε πεδίο από όλες τις υποφόρμες.

Νομίζω ότι το πρόβλημα θα λυθεί αν (σε προβολή σχεδίασης) κάνεις τη ρύθμιση: Άλλα > κυκλική εναλλαγή > Τρέχουσα εγγραφή.

Επίσης έκανα και αυτή την αλλαγή στην φόρμα μου αλλά δυστυχώς καμιά αλλαγή.

Φιλικά/Γιώργος

Βρε παιδιά μήπως δεν το εξηγώ σωστά?:hmm:

Πάντως ευχαριστώ πολύ που ασχολήστε με το πρόβλημα μου, το εκτιμώ ιδιαίτερα.

Φιλικά,
Ανθή.

agi37 28-07-10 12:29

Παράθεση:

Αρχική Δημοσίευση από Tasos (Μήνυμα 3312)
Καλημέρα Ανθή,
Πιστεύω και συμφωνώ με το Γιώργο ότι καθώς περιστρέφεις τη ροδέλα, αλλάζει η τρέχουσα εγγραφή, κάτι που δεν θέλεις να συμβαίνει
όταν έχεις ανοίξει τη νέα φόρμα.
Μ αυτό το σκεπτικό σου πρότεινα να ανοίξεις τη νέα φόρμα ως διάλογο που μάλλον δεν το έκανες κανονικά.

Τάσο μου φυσικά και έκανα τις αλλαγές που μου υπέδειξες, αλλά δεν μπορώ να καταλάβω γιατί δεν δουλεύει!!!

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

Απ ότι παρατηρώ στις εικόνες σου, στον κώδικα που ανοίγει τη νέα φόρμα
δεν υπάρχει το έκτο όρισμα (WindowMode) που θα έπρεπε να περιέχει τη σταθερά "acDialog" όπως είχα περιγράψει.

Να σε ενημερώσω ότι εγώ σου έστειλα ένα δείγμα του κώδικα πριν κάνω δοκιμές με αυτά που μου υπέδειξες.

Υπάρχει κάτι που δεν κατανόησα στην ερώτηση σου;

Μάλλον εγώ δεν μπορώ να σας δώσω να καταλάβετε τί ακριβώς συμβαίνει. Χίλια συγνώμη αλλά το επίπεδό μου δεν είναι και πολύ καλό στην Access, σχεδόν μια 10ετια έχω να ασχοληθώ με Βάσεις.

Δες ένα παραδειγματάκι στο συνημμένο παρακάτω.

Θα κάνω μια ακόμη δοκιμή και τα ξαναλέμε.

Φιλικά

Τάσος

Και πάλι συγνώμη για την ταλαιπωρία

Καλό μεσημέρι!!!!
Ανθή.

Tasos 28-07-10 12:48

Ανθή, το φόρουμ αυτό υπάρχει για να βοηθά τα μέλη του να εμπλουτίσουν τις γνώσεις τους!

Λέγοντας μέλη, εννοώ εσένα το Γιώργο, εμένα και γενικά τον καθέναν από μας που συμμετέχει στις συζητήσεις.

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

Καλή συνέχεια!

Φιλικά

Τάσος

agi37 28-07-10 13:08

Τάσο να 'σαι καλά! Μου δίνεις κουράγιο να το παλέψω!
Αυτό που πρότεινες θα κάνω, θα σας στείλω ένα δείγμα της βάσης και να δουλέψουμε επί της εφαρμογής. Επείδη το αρχείο μου έχει φτάσει 32ΜΒ πρέπει να το 'καθαρίσω' λίγο και θα σας στείλω δείγμα.
Αλήθεια, πως μπορούμε να μειώσουμε το μέγεθος μιας βάσης? Να ενημερώσω ότι δεν έχω μέσα εικόνες, διαγράμματα κλπ...

Ευχαριστώ και πάλι!

agi37 29-07-10 08:43

1 Συνημμένο(α)
Καλημέρα στην παρέα!!!

Συνημμένα παραθέτω ένα δείγμα της βάσης μου. Θα εκτιμούσα ιδιαίτερα αν κάποιος μπορεί να επιλύση το πρόβλημα που αντιμετωπίζω.:hmm:

Ευχαριστώ εκ των προτέρων.
Ανθή.

Tasos 29-07-10 10:25

1 Συνημμένο(α)
Καλημέρα Ανθή!

Στο παρακάτω συνημμένο αλλάχτηκαν οι γραμμές του κώδικα VBA:

Αρχική γραμμή: DoCmd.OpenForm stDocName, , , stLinkCriteria

Μετά την αλλαγή: DoCmd.OpenForm stDocName, , , stLinkCriteria, , acDialog

Έτσι, με το όρισμα acDialog ανοίγουν οι φόρμες σου σε παράθυρο διαλόγου και δεν επιτρέπουν
την απώλεια της εστίασης τους άρα δεν μπορείς να κάνεις κάτι σε άλλη φόρμα.

Είναι αυτό που ζητάς;

Φιλικά

Τάσος

agi37 29-07-10 11:58

Γεια χαρά και πάλι!

Δεν θέλω να σε απογοητεύσω αλλά καμιά αλλαγή. Τον κώδικα που έχεις αλλάξει, όπως σου είχα αναφέρει και χθες, το δοκίμασα και δεν άλλαξε κάτι.
Μάλλον φταίω εγώ, δεν σας παρουσιάζω με σωστό τρόπο το πρόβλημά μου.
Λοιπόν προτείνω το εξής, ακολούθησε τα βήματα που εκτελώ και ‘γω για να καταλάβεις τι εννοώ:
  1. Επέλεξε μια τιμή στο πεδίο 'ΕΤΟΣ' (παρατηρείς ότι ενημερώνονται τα υπόλοιπα πεδία?)
  2. Άνοιξε τη φόρμα 'ΘΕΣΗ Α' (βλέπεις τιμές για το τρέχων έτος που έχεις επιλέξει)
  3. Κλείσε τη φόρμα (exit)
  4. Εάν τώρα παίξεις με τη ροδέλα του ποντικιού, τότε αρχίζουν και αλλάζουν οι τιμές σε όλα τα πεδία εκτός του 'ΕΤΟΥΣ' (αυτό δεν θέλω να γίνεται, ή αν συμβαίνει τότε να αλλάζει ταυτόχρονα με τα υπόλοιπα και το πεδίο 'ΕΤΟΣ' )
  5. Αυτό δεν συμβαίνει και σε σένα? ή μήπως όχι?
Θέλω να πιστεύω πως τώρα έχω γίνει κατανοητή.
Περιμένω νέα σου,
:thanks: Ανθή.

mdragon 29-07-10 12:11

Ανθή καλησπέρα,
παρακολουθώ το συνημένο σου αλλά δεν μου δημιουργεί το πρόβλημα που λες.
Δυστυχώς εγώ δεν μπορώ να σου βρώ τι φταίει.



Φιλικά,
Μάρω

agi37 29-07-10 12:20

Καλησπέρα Μάρω,

πολύ φοβάμαι ότι μάλλον κάτι γίνεται με τον υπολογιστή μου και την έκδοση του λογισμικού. Θα κάνω και εγώ μια δοκιμή από άλλο σύστημα.
Λες τελικά να παιδεύομαι άδικα?:omg2:

agi37 29-07-10 12:27

Α! Κάτι ακόμα,

Θέλω να δημιουργήσω "εντολές ??? ή ερωτήσεις???" όπου να μπορώ να επιλέξω π.χ. σε συγκεκριμένο 'ΕΤΟΣ' ή συνδυασμό 'ΕΤΩΝ' να μου ζητάει στη συνέχεια 'ΘΕΣΗ' και μετά 'ΠΕΔΙΑ' και κλικάρωντας τα επιθυμητά να τυπώνονται τα αποτελέσματα σε φόρμα ή έκθεση.
Καμιά βοήθεια?

kapetang 29-07-10 14:41

1 Συνημμένο(α)
Καλησπέρα στην παρέα

Ανθή και Τάσο, επειδή θα πρέπει να υπάρχει αντιστοιχία έτους και τρέχουσας εγγραφής, σκέφτηκα ότι θα ήταν προτιμότερο, αντί να γίνεται αναζήτηση στις εγγραφές, να φιλτράρονται ως προς το έτος.
Έτσι έκανα κάποιες μικρές αλλαγές (θα τις δείτε στην εφαρμογή που επισυνάπτω) στον κώδικα AfterUpdate της Λιστας79 στο Load της φόρμας και στην ιδιότητά της Δεδομένα > Κλειδώματα εγγραφών > Χωρίς κλειδώματα.

Φιλικά/Γιώργος

Tasos 29-07-10 16:16

1 Συνημμένο(α)
Παράθεση:

Αρχική Δημοσίευση από agi37 (Μήνυμα 3332)
  1. Επέλεξε μια τιμή στο πεδίο 'ΕΤΟΣ' (παρατηρείς ότι ενημερώνονται τα υπόλοιπα πεδία?)
  2. Άνοιξε τη φόρμα 'ΘΕΣΗ Α' (βλέπεις τιμές για το τρέχων έτος που έχεις επιλέξει)
  3. Κλείσε τη φόρμα (exit)
  4. Εάν τώρα παίξεις με τη ροδέλα του ποντικιού, τότε αρχίζουν και αλλάζουν οι τιμές σε όλα τα πεδία εκτός του 'ΕΤΟΥΣ' (αυτό δεν θέλω να γίνεται, ή αν συμβαίνει τότε να αλλάζει ταυτόχρονα με τα υπόλοιπα και το πεδίο 'ΕΤΟΣ' )
  5. Αυτό δεν συμβαίνει και σε σένα? ή μήπως όχι?

Καλησπέρα και πάλι.
Ανθή, για να απενεργοποιήσεις το ροδάκι του ποντικιού (Mouse Wheel) στην Access 2003 προϋποθέτει αρκετές διαδικασίες (λειτουργική μονάδα κλάσης ή συγκεκριμένο αρχείο DLL) και παράλληλα δημιουργεί προβλήματα σε δοκιμές του κώδικα (Debugging).

Σου προτείνω να συγχρονίσεις το μη δεσμευμένο πεδίο "Λίστα79" με το "ΕΤΟΣ"
της τρέχουσας εγγραφής.

Δες το συνημμένο παράδειγμα παρακάτω.

Ελπίζω να κατάλαβα το ζητούμενο σου! :dft010:

agi37 30-07-10 07:31

Καλημερούδια παιδιά!

Τάσο και Γιώργο, πραγματικά δεν έχω λόγια να εκφράσω την ευγνωμοσύνη μου!!!
ΕΥΧΑΡΙΣΤΩΩΩΩΩ!!!!!:thanks::thanks:
Καλά ε, είστε αστέρια, :respect::respect:
Τελικά είτε φίλτρο χρησιμοποιήσω είτε δέσμευση έχω το επιθυμητό αποτέλεσμα.
Και να φανταστείτε ότι αυτό μου συμβαίνει σε όλες τις φόρμες αυτής της δομής.

Όσο αναφορά τη χθεσινή τελευταία ερώτησή μου, καμιά πρόταση??

Φιλικά,
Ανθή.

kapetang 01-08-10 15:54

Καλησπέρα στην παρέα

Ανθή κοίταξα τη βάση που ανέβασες, αλλά δεν μπορώ να πω ότι κατάλαβα τη δομή και τη λογική της.
Επειδή εσύ τα γνωρίζεις, θα πρότεινα να αρχίσεις να υλοποιείς αυτό που θέλεις και αν συναντάς κάποια συγκεκριμένη δυσκολία, υπάρχει και το φόρουμ.
Σε γενικές γραμμές για να εμφανίσουμε στοιχεία, που ικανοποιούν κάποια κριτήρια:
1. Δημιουργούμε μία φόρμα (κριτηρίων), όπου θα επιλέγονται τα κριτήρια.
2. Ένα ερώτημα με τα πεδία τα οποία θέλουμε να εμφανίζονται και τις συνθήκες που θα ικανοποιούν. Οι συνθήκες υλοποιούνται με τη βοήθεια της φόρμας κριτηρίων.
3. Μία έκθεση, που θα στηρίζεται στο ερώτημα και θα έχει τα στοιχεία, όπως θέλουμε να εκτυπωθούν.
4. Ένα κουμπί στη φόρμα κριτηρίων που θα ανοίγει την έκθεση.

Φιλικά/Γιώργος


Η ώρα είναι 18:54.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2