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/3901-forma-ypofoforma.html)

grigoris1 01-11-15 23:40

φόρμα υποφοφορμα
 
είμαι νέος με την acces.προσπαθώ να φτιάξο ένα πρόγραμμα συνεργείου.έχω 2 πίνακες .στον έναν έχω τα στοιχεία πελάτη με idoxima.στον δεύτερο έχω τα στοιχεία των κινήσεων που έχω δηλαδή ημερομηνία Χιλιόμέτρα και εργασιες.με idkiniseis.αυτό που θέλω είναι στην φόρμα να βλέπω τα στοιχεία του πελάτη και στην υποφόρμα όλες το κινήσεις που έχω κάνει.
αυτήν την στιγμή πάντα στην υποφόρμα μου βγάζει όλες τις κινήσεις από όλους του πελάτες και όχι από τον συγκεκριμένο. και να μπορο να προσθέσω μια καινούρια κίνηση.

Spirosgr 02-11-15 00:29

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

Τι θα πρέπει να γίνει:
Βάλε, στην κύρια φόρμα ένα combo και ανάλογα με το όχημα που θα επιλέγεις,
να φιλτράρεται η υποφόρμα.

Αυτό προϋποθέτει
Στο combo αυτό...
(ιδιότητες > δεδομένα > row sourse )
ένα ερώτημα sql μορφής

SELECT tbl_οχήματα.ID, tbl_οχήματα.αριθμόςΚυκλ FROM tbl_οχήματα ORDER BY tbl_οχήματα.αριθμόςΚυκλ;

και στο event > after update του combo
ένα κώδικα μορφής

Private Sub cboSdisplay_AfterUpdate()
With Me!sub_οχήματα.Form
.Filter = "[αριθμόςΚυκλ] = " & Me!cboSdisplay.Value
.FilterOn = True
End With
End Sub

όπου sub_οχήματα.Form η υποφόρμα και
Me!cboSdisplay το combo

Spirosgr 02-11-15 10:43

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

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

grigoris1 02-11-15 11:08

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

grigoris1 02-11-15 21:00

εδω οπως το εχο φτιαξει

grigoris1 02-11-15 21:12

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

Αρχική Δημοσίευση από grigoris1 (Μήνυμα 22431)
εδω οπως το εχο φτιαξει

δες το και πες μου τι γινεται.

Spirosgr 03-11-15 09:49

Καλημέρα
Γρηγόρη, για να γίνει η βάση αυτή ... πρόγραμμα, θέλει δουλίτσα.
Προσπάθησε, να την «συμμαζέψεις» όσο μπορείς και ακολούθησε τις οδηγίες, στο post #2.

grigoris1 03-11-15 21:23

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

Αρχική Δημοσίευση από Spirosgr (Μήνυμα 22435)
Καλημέρα
Γρηγόρη, για να γίνει η βάση αυτή ... πρόγραμμα, θέλει δουλίτσα.
Προσπάθησε, να την «συμμαζέψεις» όσο μπορείς και ακολούθησε τις οδηγίες, στο post #2.

εχω φτιαξει ενα καινουριο.αν μπορεις φτιαχε μου μονο αναλογος οτι εχε στην σελιδα 1 να φιλτραρεται στην σελιδα 2 και στην σελιδα3.και τα αλλα θα τα φτιαξω σιγα σιγα .
βοηθησεμε εχω κολησει.

kapetang 03-11-15 21:48

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

Το βασικότερο στην ανάπτυξη μιας εφαρμογής Access είναι η σωστή σχεδίαση της ΒΔ.

Στο συνημμένο αρχείο φαίνονται οι βασικοί πίνακες που πρέπει να περιέχει η ΒΔ, καθώς και οι σχέσεις μεταξύ των πινάκων.

Επειδή η σχέση μεταξύ των κατόχων οχημάτων (πίνακας Katoxoi) και των οχημάτων (πίνακας Oximata) είναι πολλά προς πολλά απαιτείται, για την υλοποίησή της, ένας ενδιάμεσος πίνακας.

Ο πίνακας αυτός είναι ο KatoxoiOximata, ο οποίος για κάθε κάτοχο (KatoxosID) μας δίνει τα οχήματά του (τα OximataID).

Αντιστρόφως ο ίδιος πίνακας μας δίνει επίσης για κάθε όχημα (OximaID) τους ιδιοκτήτες του (τα KatoxosID).

Η ΒΔ περιέχει και κάποιες φόρμες για τη διαχείριση (προσθήκη, τροποποίηση και διαγραφή) των δεδομένων και την εμφάνισή τους.

1) Η φόρμα frmOximata_Kiniseis μπορεί να χρησιμοποιηθεί για τη διαχείριση των δεδομένων των πινάκων Oximata και Kiniseis.

2) Η φόρμα frmKatoxoi_Oximata μπορεί να χρησιμοποιηθεί για τη διαχείριση των πινάκων Katoxoi και KatoxoiOximata.

3) Η φόρμα frmKatoxoi_Oximata_Kiniseis μπορεί να εξυπηρετήσει στην εμφάνιση (αναζήτηση) στοιχείων.

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

Με τη μετακίνηση σε κάθε κύρια εγγραφή (σε κάθε αυτοκίνητο του xxxxxxx) θα βλέπουμε τα στοιχεία του αυτοκινήτου, καθώς και τις κινήσεις του.

4) Η φόρμα frmOximata_Kiniseis_AnaKatoxo δείχνει τα ίδια στοιχεία με την προηγούμενη με τη διαφορά το φιλτράρισμα γίνεται με σύνθετο πλαίσιο.

Γρηγόρη, μπορείς να μελετήσεις τη συνημμένη ΒΔ και να την προσαρμόσεις στις απαιτήσεις σου.

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

grigoris1 03-11-15 22:35

Γιώργο θα το κοιτάξω .σε ευχαριστώ.


Η ώρα είναι 15:40.

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


Search Engine Optimization by vBSEO 3.3.2