πως γινεται να τυπώσεω σε report 10 τυχαια records

Συζητήσεις για την τοπική βάση δεδομένων Access της Microsoft

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
vage78
Δημοσιεύσεις: 3
Εγγραφή: 12 Μαρ 2009 14:01

πως γινεται να τυπώσεω σε report 10 τυχαια records

Δημοσίευση από vage78 » 17 Μαρ 2009 13:55

Πως γίνεται ?

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

πως γινεται να τυπώσεω σε report 10 τυχαια records

Δημοσίευση από dva_dev » 17 Μαρ 2009 14:48

Θα φτιάξεις ένα query που να επιστρέφει τα 10 τυχαία records και θα χρησιμοποιήσεις αυτό σαν record source για το report σου.
Αν θέλεις αργότερα τα 10 να τα κάνεις 5 ή 20 αρκεί να αλλάξεις το query σου και το report θα εξακολουθήσει να δουλεύει χωρίς να πειράξεις τίποτα.

vage78
Δημοσιεύσεις: 3
Εγγραφή: 12 Μαρ 2009 14:01

πως γινεται να τυπώσεω σε report 10 τυχαια records

Δημοσίευση από vage78 » 20 Μαρ 2009 12:02

Πως κανω το to query να μου φερει 10 τυχαία records και καθε φορα που το εκτελώ να μην μου φερνει τα ιδια records??

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

πως γινεται να τυπώσεω σε report 10 τυχαια records

Δημοσίευση από dva_dev » 20 Μαρ 2009 14:53

Φτιάχνουμε ένα νέο module και βάζουμε τον εξής κώδικα, ώστε να δημιουργήσουμε μία function που να μας επιστρέφει έναν τυχαίο ακέραιο κάθε φορά:

Κώδικας: Επιλογή όλων

Option Explicit

Public Function getrandom(x) As Long
    Randomize (Timer)
    getrandom = Rnd() * 2147483647
End Function
Εστω ότι ο πίνακας που θέλουμε να φέρουμε τις τυχαίες εγγραφές ονομάζεται "mytable" με primary key (id)
Δημιουργούμε ένα νέο query (query2) και του δίνουμε

Κώδικας: Επιλογή όλων

select mytable.*, getrandom(id) as dummy from mytable
Δημιουργούμε ένα δεύτερο query (query3) και του δίνουμε

Κώδικας: Επιλογή όλων

select top 10 * from query2 order by dummy
αν θέλουμε 10 εγγραφές, (βάζουμε όσες θέλουμε).

Πάμε στο report μας και στο Record Source βάζουμε αντί του mytable που είχαμε το query3.

Φυσικά το πεδίο dummy το αγνοούμε εντελώς.

Απάντηση

Επιστροφή στο “MS Access”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες