Ανανέωση ιστοσελίδας

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 15-01-11, 17:04
Όνομα: Χρήστος Φ.
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 498
Προεπιλογή Φίλτρο

Καλησπέρα.
Θα ήθελα βοήθεια σ'ένα πρόβλημα που μου προέκυψε.
Έχω έναν πίνακα με πεδία: [ΠΕΡΙΓΡΑΦΗ] και [ΣΧΕΣΗ]. Στο πεδίο [ΣΧΕΣΗ] επιλέγεται μια απ' τις 2 τιμές: ΠΕΛΑΤΗΣ, ΠΡΟΜΗΘΕΥΤΗΣ.

Ας υποθέσουμε οτι βλέπυμε τις εγγραφές του παραπάνω πίνακα σε Φόρμα.
Θα ήθελα να έχω ένα combobox όπου όταν επιλέγω ΠΕΛΑΤΕΣ να φιλτράρει τις εγγραφές και να φαίνονται μόνο οι ΠΕΛΑΤΕΣ και όταν επιλέγω ΠΡΟΜΗΘΕΥΤΕΣ να εμφανίζονται μόνο αυτοί.
Απάντηση με παράθεση
  #2  
Παλιά 15-01-11, 19:31
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα
Χρήστο, στη ΒΔ που επισυνάπτω υπάρχει μία υλοποίηση αυτού που ζητάς.
Στο σύνθετο πλαίσιο πρόσθεσα και μία επιλογή «ΟΛΟΙ» για να εμφανίζονται όλοι οι συναλλασσόμενοι.
Η λειτουργικότητα της φόρμας οφείλεται στον παρακάτω κώδικα
Κώδικας:
Private Sub cboFilter_AfterUpdate()
    If Me.cboFilter = "<<ΟΛΟΙ>>" Then
        Me.Filter = ""
    Else
        Me.Filter = "[ΣΧΕΣΗ]='" & Me.cboFilter & "'"
    End If
    Me.FilterOn = True
End Sub
Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb FilterWithComboBox.mdb (244,0 KB, 61 εμφανίσεις)
Απάντηση με παράθεση
  #3  
Παλιά 15-01-11, 19:50
Όνομα: Χρήστος Φ.
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 498
Προεπιλογή Σ' ευχαριστώ πολύ...

Θα ήθελα τη συμβουλή σου και σε κάτι ακόμη. Αν κάποιος είναι πελάτης θέλω να του περνάω έσοδα ενώ αν είναι προμηθευτής θέλω να του περνάω έξοδα. Σε μια έκθεση θα ήθελα να βλέπω ανα εβδομάδα τα έσοδα και τα έξοδα.

Αυτό που σκέφτομαι είναι: μια δευτερεύουσα φόρμα (συνδεδεμένη με την κύρια στο CodeID)...όπου θα δίνω ημερομηνία, ποσό και ένα πεδίο όπου θα επιλέγω ΕΔΟΔΑ ή ΕΞΟΔΑ. Είναι καλή ιδέα;
Απάντηση με παράθεση
  #4  
Παλιά 15-01-11, 20:07
Όνομα: Χρήστος Φ.
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 498
Προεπιλογή μάλλον οχι...

Σίγουρα οχι δευτερεύουσα φόρμα γιατί τότε η κύρια φόρμα δεν θα μπορεί να είναι συνεχής. Μάλλον και κάποιο κουμπάκι...
Απάντηση με παράθεση
  #5  
Παλιά 16-01-11, 11:16
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα

Χρήστο, στη βάση δεδομένων που επισυνάπτω, για την καταχώρηση των ποσών, παρουσιάζονται δύο λύσεις:
1. Με κύρια φόρμα και δευτερεύουσα (frmSinalasomeniPosa). Επειδή η κύρια φόρμα δεν είναι συνεχής, για να διευκολυνθεί η επιλογή των συναλλασσόμενων, πρόσθεσα δύο πτυσσόμενα πλαίσια για το φιλτράρισμά τους.
2. Με την προσθήκη κουμπιού στη φόρμα των συναλλασσομένων για το άνοιγμα της φόρμας καταχώρησης των ποσών (frmPosa) κατάλληλα φιλτραρισμένης.
Ποια είναι καλύτερη δεν ξέρω. Εγώ προτιμώ τη σύνθετη φόρμα. Εξαρτάται και από το σχεδιασμό της εφαρμογής.
Το πεδίο για να διακρίνεις αν το ποσό που καταχωρείται είναι έσοδο ή έξοδο δε χρειάζεται. Αυτό διευκρινίζεται από τη σχέση του συναλλασσόμενου (πελάτης=έσοδο, προμηθευτής=έξοδο). Για να δεις πως γίνεται πρόσθεσα ένα ερώτημα (qrySinalasomeniPosa) στο οποίο περιέχονται και τα πεδία «ΕΣΟΔΑ» και «ΕΞΟΔΑ».
Την έκθεση μπορείς να τη βασίσεις στο ερώτημα.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb FilterWithComboBox2.mdb (400,0 KB, 61 εμφανίσεις)
Απάντηση με παράθεση
  #6  
Παλιά 16-01-11, 11:58
Όνομα: Χρήστος Φ.
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 498
Προεπιλογή Σ' ευχαριστώ πολύ...

Όσο περίμενα δες λίγο τι έφτιαξα.

Τελευταία επεξεργασία από το χρήστη Χρήστος : 16-10-16 στις 18:58.
Απάντηση με παράθεση
  #7  
Παλιά 16-01-11, 13:56
Το avatar του χρήστη Meteora
Συντονιστής
Όνομα: Νίκος
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 28-12-2008
Περιοχή: Θεσσαλονίκη
Μηνύματα: 1.033
Προεπιλογή

Καλημέρα...
Δυο σχόλια με σκοπό να βοηθήσω στο μέτρο των μικρών δυνατοτήτων.
α) Πρόσφατα εγκατέστησα μια εφαρμογή μου σε δίκτυο και διαπίστωσα οτι η εντολή me.filter="" (που ουσιαστικά αναιρεί το φίλτρο) δεν δούλεψε! Δεν γνωρίζω τι φταίει, έχω κάποιες σκέψεις, αλλά δεν έχω την εξήγηση. Έτσι ο κώδικας που χρησιμοποιεί ο Γιώργος, προτείνω (έτσι έλυσα το πρόβλημά μου...) να γραφεί ως εξής:
Κώδικας:
 
Private Sub cboFilter_AfterUpdate()
    If Me.cboFilter = "<<ΟΛΟΙ>>" Then
        Me.FilterOn = False
    Else
        Me.Filter = "[ΣΧΕΣΗ]='" & Me.cboFilter & "'"
       Me.FilterOn = True
    End If
End Sub
2) Διάβασα ότι :
Παράθεση:
Σίγουρα οχι δευτερεύουσα φόρμα γιατί τότε η κύρια φόρμα δεν θα μπορεί να είναι συνεχής. Μάλλον και κάποιο κουμπάκι...
Αυτό δεν είναι σωστό! Μπορεί η κύρια φόρμα να είναι συνεχής. Απλά ! Η access βγάζει ένα μήνυμα περί απαγόρευσης, όταν μια φόρμα την σέρνεις πχ στο υποσέλιδο της κύριας, αλλά αυτό το κάνει διότι δεν έχει υπόψην της -ακόμη - την σχέση των περιεχομένων των δυο φορμών. Επιλέγεις λοιπόν την δευτερεύουσα φόρμα και στην καρτέλα 'Δεδομένα', εργάζεσαι στην ιδιότητα 'σύνδεση πρωτευόντων πεδίων' κάνεις κλικ στις τελείες ορίζοντας τα πεδία για να γίνει η σύνδεση των περιεχομένων των φορμών. Στη συνέχεια επιλέγεις την κύρια φόρμα και στην καρτέλα 'μορφή' επιλέγεις την 'συνεχή φόρμα' στην ιδιότητα 'προεπιλεγμένη προβολή'
Αυτά είχα να καταθέσω στη συζήτηση. Καλή συνέχεια...
Με εκτίμηση
Νίκος Δ.

Υστερολόγιο: Ανεβάζω ένα μικρό παράδειγμα όπου κύρια και δευτερύουσα φόρμά, έχουν μορφή 'συνεχούς φόρμας'
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb pelates.mdb (336,0 KB, 62 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη Meteora : 16-01-11 στις 14:16.
Απάντηση με παράθεση
  #8  
Παλιά 16-01-11, 14:34
Όνομα: Χρήστος Φ.
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 498
Προεπιλογή Ευχαριστώ...

Ευχαριστώ πολύ για τις παρατηρήσεις και τη βοήθεια...
Απάντηση με παράθεση
  #9  
Παλιά 16-01-11, 16:42
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Χρήστο, κατά τη γνώμη μου, για τη δημιουργία μιας σωστής βάσης δεδομένων, πρέπει συνοπτικά:
1. Να καθορίσουμε σαφώς το σκοπό της (τι θα κάνει).
2. Να καθορίσουμε τα απαιτούμενα δεδομένα και να τα οργανώσουμε σε κατάλληλους πίνακες.
3. Να καθορίσουμε τις ιδιότητες των πεδίων των πινάκων (τύπος, μοναδικά, απαιτούμενα, κλπ) και τα ευρετήρια.
4. Να δώσουμε κατάλληλα ονόματα στα αντικείμενα της βάσης. Για παράδειγμα ονόματα με παρενθέσεις απαγορεύονται.
5. Να καθορίσουμε τις σχέσεις των πινάκων.
Βλέποντας τη ΒΔ που ανέβασες σχημάτισα την εντύπωση ότι δεν έδωσες τη δέουσα βαρύτητα στο σωστό σχεδιασμό της βάσης. Ουσιαστικά η βάση είναι μια συνένωση κάποιων δειγμάτων ΒΔ, που παρουσιάστηκαν από μέλη του φόρουμ για να εξηγήσουν κάποιες απαντήσεις σε τεθέντα ερωτήματα.
Οι απαντήσεις στο φόρουμ θα πρέπει να θεωρούνται ιδέες (εργαλεία) που χρειάζονται προσαρμογή για να ενταχθούν σε μια σωστά σχεδιασμένη βάση δεδομένων.
Τελειώνοντας πιστεύω ότι πρώτα θα πρέπει να ασχοληθείς με τη σωστή σχεδίαση της ΒΔ και στη συνέχεια με το περιβάλλον χρήσης της (φόρμες εκθέσεις).

Φιλικά/Γιώργος
Απάντηση με παράθεση
  #10  
Παλιά 16-01-11, 17:06
Όνομα: Χρήστος Φ.
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-12-2010
Περιοχή: Θεσσαλονίκη
Μηνύματα: 498
Προεπιλογή Πράγματι...

Έχεις απόλυτο δίκιο.
Είχα ξεχάσει να ορίσω ακεραιότητα αναφορών (Βασικότατο)...αλλά δεν έχω περάσει ακόμη δεδομένα γι' αυτό και ήμουν χαλαρός.
Τώρα όσο αφορά το σχεδιασμό ακόμη ψάχνομαι...
Πάντος έχεις δίκιο...όσοι βλέπουν τις βάσεις μου λένε το ίδιο πράγμα: Κάνει ωραία πράγματα...μπράβο.....και άλλα χαριτωμένα....αλλά όσοι πραγματικά ξέρουν μου λένε:λάθος ονόματα...πολύπλοκοι συσχετισμοί....
Πάντως ψάχνομαι ...και ευχαριστώ για τις παρατηρήσεις.
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Συναρτήσεις] Φίλτρο manolis Excel - Ερωτήσεις / Απαντήσεις 9 07-05-14 16:47
[VBA] φίλτρο manos77 Excel - Ερωτήσεις / Απαντήσεις 2 15-10-11 23:31
[VBA] Φίλτρο mdragon Excel - Ερωτήσεις / Απαντήσεις 4 14-09-11 21:54
Φίλτρο Χρήστος Access - Ερωτήσεις / Απαντήσεις 2 06-05-11 12:48
[ Ερωτήματα ] Φίλτρο ΝΑΙ, ΟΧΙ, ΟΛΑ devcon Access - Ερωτήσεις / Απαντήσεις 4 29-03-11 16:19


Η ώρα είναι 17:29.