| Access samples - Χρήσιμα αρχεία & παραδείγματα Αρχεία Ms-Access διαθέσιμα για τα μέλη του Forum. |
![]() |
| | Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
|
#1
| |||
| |||
|
Δημιουργός: Γιώργος Καπετανόπουλος (Έτος 2012) Περιβάλλον: Acces 2003, 2007, 2010 ---------------------------------------------------------------------- Ένα χρονικό διάστημα ορίζεται από τη στιγμή έναρξης (Start) και τη στιγμή λήξης (End). Επίσης μπορεί να οριστεί από τη στιγμή έναρξης (Start) και τη διάρκεια. Επειδή, όταν είναι γνωστή η έναρξη και η διάρκεια ενός διαστήματος, εύκολα μπορεί να οριστεί η λήξη του, παρακάτω υποθέτω ότι το χρονικό διάστημα θα ορίζεται από την αρχή και το τέλος του και θα συμβολίζεται ως κλειστό διάστημα [Start, End]. Για παράδειγμα η ηλικία μπορεί να θεωρηθεί ως διάστημα με Strat=ημερομηνία έναρξης και End=τρέχουσα ημερομηνία. Επίσης η κανονική άδεια είναι διάστημα με Strat=ημερομηνία έναρξης και End=ημερομηνία λήξης. Για την αποθήκευση ενός διαστήματος σ’ ένα πίνακα απαιτούνται δύο πεδία ημερομηνίας, ένα (Apo) για την αποθήκευση της έναρξης και ένα (Eos) για την αποθήκευση της λήξης. Η συνημμένη ΒΔ παρακολουθεί τις απουσίες του προσωπικού μιας επιχείρησης, συνεπώς αποθηκεύει και διαχειρίζεται χρονικά διαστήματα. Περιέχει αρκετές συναρτήσεις και διαδικασίες που δίνουν λύσεις σε αρκετά προβλήματα διαχείρισης διαστημάτων. Συγκεκριμένα πραγματοποιούν: 1) Τον υπολογισμό της διάρκειας σε έτη, μήνες και μέρες, που απαιτείται για τον προσδιορισμό της ηλικίας ή του χρόνου υπηρεσίας ενός εργαζόμενου. 2) Βρίσκουν την τομή δύο διαστημάτων Τομή είναι το κοινό τμήμα [tStart, tEnd] δύο διαστημάτων [Start1, End1] και [Start2, End2]. Απαιτείται όταν θέλουμε να διαιρέσουμε ένα διάστημα σε μικρότερα τμήματα πχ μηνιαία. 3) Προσδιορίζουν αν ένα διάστημα τέμνεται με ένα ή περισσότερα διαστήματα ενός πίνακα Σ’ ένα πίνακα με τις απουσίες του προσωπικού τα χρονικά διαστήματα, για τον ίδιο εργαζόμενο, δεν πρέπει να τέμνονται. Όταν καταχωρούμε διαστήματα ή τροποποιούμε, με τη βοήθεια της σχετικής συνάρτησης, μπορούμε να διαπιστώσουμε αν υπάρχει τομή και να αποτρέψουμε την αποθήκευση της εγγραφής, αν υπάρχει. 4) Τον έλεγχο, αν ένας πίνακας περιέχει τεμνόμενα διαστήματα Αυτό στη ΒΔ γίνεται με το ερώτημα ApousiesTomi_Qr, που δημιουργήθηκε εύκολα ορίζοντας τα κατάλληλα κριτήρια στο καρτεσιανό γινόμενο του πίνακα Apousies με τον εαυτό του. Ο έλεγχος αυτός είναι χρήσιμος για πίνακες που δεν επιτρέπεται τομή διαστημάτων. 5) Δημιουργία μηνιαίων διαστημάτων Τα χρονικά διαστήματα, πχ απουσίας, μπορεί να εκτείνονται σ ‘ένα η περισσότερους μήνες ή και έτη. Για εργαζόμενους που αμείβονται μηνιαία, είναι συνεπώς χρήσιμη μια διαδικασία που θα διαιρούσε τα αποθηκευμένα χρονικά διαστήματα σε μηνιαία και θα τα αποθήκευε σ’ άλλο πίνακα με μηνιαία στοιχεία. 6) Προσδιορισμός των εργάσιμων ημερών και των αργιών ενός διαστήματος Πολλές φορές χρειάζεται να ξέρουμε πόσες εργάσιμες και πόσες αργίες περιέχονται σ ‘ένα χρονικό διάστημα. Ένα παράδειγμα αποτελούν οι κανονικές άδειες στις οποίες χρεώνονται μόνο οι εργάσιμες μέρες. Για να προσδιοριστούν οι αργίες (Σαββατοκύριακα, επίσημες γιορτές) πρέπει να καθορίσουμε τις επίσημες γιορτές. Αυτό γίνεται με τη συνάρτηση ToPasxa, που καθορίζει την ημερομηνία του Πάσχα και τη διαδικασία OrismosEorton, που δημιουργεί τις γιορτές και τις αποθηκεύει σ’ ένα αντικείμενο τύπου Scripting.Dictionary. 7) Το τέλος ενός διαστήματος από την αρχή του και τον αριθμό των εργάσιμων ημερών Αυτό είναι χρήσιμο για τον προσδιορισμό της ημερομηνίας λήξης μιας κανονικής άδειας, όταν γνωρίζουμε την ημερομηνία έναρξης και τον αριθμό των εργάσιμων ημερών. Αν μετά την ημερομηνία συμπλήρωσης των εργάσιμων ημερών υπάρχουν συνεχόμενες αργίες, συνυπολογίζονται. Για τον υπολογισμό της ημερομηνίας του Πάσχα χρησιμοποιήθηκε η συνάρτηση που ανέβασε στο φόρουμ ο Τάσος (διαχειριστής). Επίσης για την ανάπτυξη των συναρτήσεων που αναφέρονται στις περιπτώσεις 1, 6 και 7 χρησιμοποιούνται κάποιες ιδέες από παρόμοια εργασία του Τάσου. Εκτός από τη ΒΔ, στο συμπιεσμένο φάκελο περιέχεται και ένα αρχείο .doc, με λεπτομερείς οδηγίες. Για τη σωστή εγκατάσταση της ΒΔ, θα πρέπει: 1) Η ΒΔ και το αρχείο .doc να εγκατασταθούν στον ίδιο φάκελο. 2) Ο φάκελος να οριστεί ως ασφαλής τοποθεσία. 3) Στο περιβάλλον της VBA να γίνει αναφορά στη βιβλιοθήκη Microsoft Scripting Runtime. Σχόλια και προτάσεις για διορθώσεις και βελτιώσεις είναι πάντα ευπρόσδεκτα. Φιλικά/Γιώργος Τελευταία επεξεργασία από το χρήστη kapetang : 04-12-12 στις 16:51. Αιτία: Αλλαγή συνημμένου για συμβατότητα με 2003 |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
| Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
| Χειρισμός χρονικών διαστημάτων | spavlos | Access - Ερωτήσεις / Απαντήσεις | 3 | 23-10-13 19:48 |
Η ώρα είναι 01:55.


Αλλαγή σε γραμμικό τρόπο

