LE MAD Δημοσ. 28 Ιανουαρίου 2009 Δημοσ. 28 Ιανουαρίου 2009 γεια σας παιδια.θέλω να ταξινομήσω εγγραφές συμφωνα με ένα πεδιο 'ονοματεπωνυμο' σε μια έκθεση της access 2003 με μια σειρα δική μου όχι αύξουσα όυτε φθίνουσα.Υπάρχει κάποιος κώδικας σε visual basic που μπορώ να προσθέσω στο συμβάν load της έκθεσης που να δημιουργώ αυτην την ταξινόμηση;Το ανόματα στο πεδίο είναι λιγα,περιπου δεκα. Ευχαριστώ!
LE MAD Δημοσ. 28 Ιανουαρίου 2009 Μέλος Δημοσ. 28 Ιανουαρίου 2009 γεια σας παιδια.θέλω να ταξινομήσω εγγραφές συμφωνα με ένα πεδιο 'ονοματεπωνυμο' σε μια έκθεση της access 2003 με μια σειρα δική μου όχι αύξουσα όυτε φθίνουσα.Υπάρχει κάποιος κώδικας σε visual basic που μπορώ να προσθέσω στο συμβάν load της έκθεσης που να δημιουργώ αυτην την ταξινόμηση;Το ανόματα στο πεδίο είναι λιγα,περιπου δεκα. Ευχαριστώ!
attsifte Δημοσ. 28 Ιανουαρίου 2009 Δημοσ. 28 Ιανουαρίου 2009 Άν σου πώ οτι δεν είναι και πολύ κατανοητό αυτό που θές να κάνεις θα σου πώ ψέματα. Συνήθως στον sql κώδικα με ένα order by μπορείς να το κάνεις. Τώρα στην access το πώς δεν είμαι και τόσο σύγουρος να απαντήσω και δεν ξέρω άν μπορείς να αλλάξεις το sql κομμάτι και να βάλεις δικό σου order. Τώρα άν θές κάτι σε VB δοκίμασε το παρακάτω: Private Sub Form_Load() Dim connect As ADODB.Connection Set connect= New Connection connect.ConnectionString = '<το connection string με την βάση> connect.Open Dim ReportRS As recordSet Set ReportRS = New recordSet ReportRS.Open "select name1, ...... from table1 order by name2" <το δικό σου sql> , connect, 3, 3 Και αυτό είναι το recordset που θα συνδέσεις με το report.
attsifte Δημοσ. 28 Ιανουαρίου 2009 Δημοσ. 28 Ιανουαρίου 2009 Άν σου πώ οτι δεν είναι και πολύ κατανοητό αυτό που θές να κάνεις θα σου πώ ψέματα. Συνήθως στον sql κώδικα με ένα order by μπορείς να το κάνεις. Τώρα στην access το πώς δεν είμαι και τόσο σύγουρος να απαντήσω και δεν ξέρω άν μπορείς να αλλάξεις το sql κομμάτι και να βάλεις δικό σου order. Τώρα άν θές κάτι σε VB δοκίμασε το παρακάτω: Private Sub Form_Load() Dim connect As ADODB.Connection Set connect= New Connection connect.ConnectionString = '<το connection string με την βάση> connect.Open Dim ReportRS As recordSet Set ReportRS = New recordSet ReportRS.Open "select name1, ...... from table1 order by name2" <το δικό σου sql> , connect, 3, 3 Και αυτό είναι το recordset που θα συνδέσεις με το report.
LE MAD Δημοσ. 28 Ιανουαρίου 2009 Μέλος Δημοσ. 28 Ιανουαρίου 2009 ευχαριστω πολυ φίλε μου για την απαντηση.θα σου εξηγησω καλυτερα τι εννοώ: έχω μια βάση με δέκα περίπου ονοματα τους οποιους αν ένα καθε μηνα τους υπολογίζω με τα υπολοιπα πεδία τους τις υπερωριες.Υπαρχει η φορμα καταχώρησης για αυτήν τοην δουλεια, και μια έκθεση με όλα τα στοιχεία τους που την εκτυπώνω.Η έκθεση στην εκτύπωση μου τους ταξινομει με αυξουσα ή φθίνουσα.Εγώ για την δική μου ευκολία τους θέλω: πρωτος ας πούμε ο Νικος ταδε, 2ος ο Βαγγελης ......,πεδιο πεδιο πεδιο πεδιο 3ος ο Κωστας ........,πεδιο πεδιο πεδιο πεδιο 4ος οΑγγελος ........πεδιο πεδιο πεδιο πεδιο κλπ μεχρι τον τελευταιο Ο καθένας δηλαδή στην σειρά που την επιλέγω εγώ.θέλω δηλαδη την διαδικασία με την οποια θα φτιαξω την συγκεκριμένη ταξινόμηση,δεν την έχω φτιαξει. Αν μπορεις μπες στην σελιδα της access 2007 βοήθεια,και δες την ενότητα που μιλάει για την ταξινόμηση και ειδικότερα για την προσαρμοσμένη ταξινόμηση και θα καταλάβεις. εκέι χρησημοποιει μια συναρτηση IIF και γίνεται μπαμ η δουλειά,αλλα δεν δουλευει αυτο στην access 2003.θα το δώ αυτο που μου λες με τον κώδικα αν και μου φαίνεται λίγο δύσκολο για τα κυβικά μου.Οσο για την ORDER BY εχω την εντύπωση ότι κάνει ταξινόμηση βάση του πεδίου που της δίνεις σε αυξουσα σε φθίνουσα ή default.
LE MAD Δημοσ. 28 Ιανουαρίου 2009 Μέλος Δημοσ. 28 Ιανουαρίου 2009 ευχαριστω πολυ φίλε μου για την απαντηση.θα σου εξηγησω καλυτερα τι εννοώ: έχω μια βάση με δέκα περίπου ονοματα τους οποιους αν ένα καθε μηνα τους υπολογίζω με τα υπολοιπα πεδία τους τις υπερωριες.Υπαρχει η φορμα καταχώρησης για αυτήν τοην δουλεια, και μια έκθεση με όλα τα στοιχεία τους που την εκτυπώνω.Η έκθεση στην εκτύπωση μου τους ταξινομει με αυξουσα ή φθίνουσα.Εγώ για την δική μου ευκολία τους θέλω: πρωτος ας πούμε ο Νικος ταδε, 2ος ο Βαγγελης ......,πεδιο πεδιο πεδιο πεδιο 3ος ο Κωστας ........,πεδιο πεδιο πεδιο πεδιο 4ος οΑγγελος ........πεδιο πεδιο πεδιο πεδιο κλπ μεχρι τον τελευταιο Ο καθένας δηλαδή στην σειρά που την επιλέγω εγώ.θέλω δηλαδη την διαδικασία με την οποια θα φτιαξω την συγκεκριμένη ταξινόμηση,δεν την έχω φτιαξει. Αν μπορεις μπες στην σελιδα της access 2007 βοήθεια,και δες την ενότητα που μιλάει για την ταξινόμηση και ειδικότερα για την προσαρμοσμένη ταξινόμηση και θα καταλάβεις. εκέι χρησημοποιει μια συναρτηση IIF και γίνεται μπαμ η δουλειά,αλλα δεν δουλευει αυτο στην access 2003.θα το δώ αυτο που μου λες με τον κώδικα αν και μου φαίνεται λίγο δύσκολο για τα κυβικά μου.Οσο για την ORDER BY εχω την εντύπωση ότι κάνει ταξινόμηση βάση του πεδίου που της δίνεις σε αυξουσα σε φθίνουσα ή default.
attsifte Δημοσ. 29 Ιανουαρίου 2009 Δημοσ. 29 Ιανουαρίου 2009 Δοκίμασε και βάλε ένα κλειδί (id) στον πίνακα σου, ένα πεδίο Number, δώσε τιμές 1,2,3... αντίστοιχα για τον καθένα απο τα παιδία. Οπότε θα έχεις στον πίνακα: 1, Νικος, ...... ,πεδιο πεδιο πεδιο πεδιο 2, Βαγγελης, ...... ,πεδιο πεδιο πεδιο πεδιο 3, Κώστας, ...... ,πεδιο πεδιο πεδιο πεδιο κτλ Και μετά διάλεξε sort of order με το Id. Δές μέσα στο zip έχω μια μικρή βάση, άν μπορεί να σε βοηθήσει.
attsifte Δημοσ. 29 Ιανουαρίου 2009 Δημοσ. 29 Ιανουαρίου 2009 Δοκίμασε και βάλε ένα κλειδί (id) στον πίνακα σου, ένα πεδίο Number, δώσε τιμές 1,2,3... αντίστοιχα για τον καθένα απο τα παιδία. Οπότε θα έχεις στον πίνακα: 1, Νικος, ...... ,πεδιο πεδιο πεδιο πεδιο 2, Βαγγελης, ...... ,πεδιο πεδιο πεδιο πεδιο 3, Κώστας, ...... ,πεδιο πεδιο πεδιο πεδιο κτλ Και μετά διάλεξε sort of order με το Id. Δές μέσα στο zip έχω μια μικρή βάση, άν μπορεί να σε βοηθήσει. db1.zip
LE MAD Δημοσ. 29 Ιανουαρίου 2009 Μέλος Δημοσ. 29 Ιανουαρίου 2009 Ευχαριστώ πολύ φιλε μου,εισαι πρώτος!
LE MAD Δημοσ. 29 Ιανουαρίου 2009 Μέλος Δημοσ. 29 Ιανουαρίου 2009 Ευχαριστώ πολύ φιλε μου,εισαι πρώτος!
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.