1 ΘΕΜΑ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ Μηχανογράφηση υπηρεσιών καταστημάτων Self-Video TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τ.Ε.Ι. ΣΕΡΡΩΝ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ Ευάγγελος Ούτσιος Φοιτήτριες Γάτση Θεοδώρα Θεοφανίδου Αναστασία
2 ΣΚΟΠΟΣ Σκοπός αυτής της πτυχιακής εργασίας είναι η υλοποίηση προγράμματος για τη σωστή λειτουργία των εφαρμογών ενός καταστήματος 24 hours Self-Video. Σκοπός αυτής της πτυχιακής εργασίας είναι η υλοποίηση προγράμματος για τη σωστή λειτουργία των εφαρμογών ενός καταστήματος 24 hours Self-Video.
3 Η ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΧΩΡΙΖΕΤΑΙ ΣΕ ΤΡΙΑ ΤΜΗΜΑΤΑ Δημιουργία μίας βάσης δεδομένων για την αποθήκευση των δεδομένων σε πίνακες. Δημιουργία ενός προγράμματος στην C++ Builder το οποίο διαχειρίζεται ο ιδιοκτήτης. Δημιουργία ενός προγράμματος στην C++ Builder το οποίο χρησιμοποιεί ο πελάτης.
4 ΕΡΓΑΛΕΙΑ ΥΛΟΠΟΙΗΣΗΣ Ms Access 2000 C++ Builder 5
5 SELF-VIDEO Τα είναι η μεγαλύτερη και πλέον συγκροτημένη αλυσίδα καταστημάτων αυτόματης εξυπηρέτησης που έφερε την επανάσταση στον χώρο της οικιακής ψυχαγωγίας. Τα Self-Video είναι η μεγαλύτερη και πλέον συγκροτημένη αλυσίδα καταστημάτων αυτόματης εξυπηρέτησης που έφερε την επανάσταση στον χώρο της οικιακής ψυχαγωγίας. Επιτρέπουν στους πελάτες τους να εξυπηρετηθούν 24 ώρες την ημέρα, 7 μέρες την εβδομάδα χρησιμοποιώντας διαρκώς αναβαθμισμένα Service που τους προσφέρει η νέα τεχνολογία. Επιτρέπουν στους πελάτες τους να εξυπηρετηθούν 24 ώρες την ημέρα, 7 μέρες την εβδομάδα χρησιμοποιώντας διαρκώς αναβαθμισμένα Service που τους προσφέρει η νέα τεχνολογία. Πιο συγκεκριμένα ο πελάτης με την εγγραφή αποκτά μια προσωπική κάρτα μέλους η οποία του επιτρέπει να έχει πρόσβαση στο κατάστημα οποιαδήποτε στιγμή και να επιλέξει μέσα από τις οθόνες αυτόματης εξυπηρέτησης την αγαπημένη του ταινία ή παιχνίδι σε Play-Station. Πιο συγκεκριμένα ο πελάτης με την εγγραφή αποκτά μια προσωπική κάρτα μέλους η οποία του επιτρέπει να έχει πρόσβαση στο κατάστημα οποιαδήποτε στιγμή και να επιλέξει μέσα από τις οθόνες αυτόματης εξυπηρέτησης την αγαπημένη του ταινία ή παιχνίδι σε Play-Station.
6 ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Μία βάση δεδομένων ενός οργανισμού ή μιας επιχείρησης είναι μια συλλογή αλληλοσυσχετιζόμενων, διαμοιραζόμενων (shared) λειτουργικών στοιχείων (operational data) και μόνιμων δεδομένων που αποθηκεύονται μαζί (για μεγάλο χρονικό διάστημα) χωρίς άχρηστους πλεονασμούς για την ταυτόχρονη εξυπηρέτηση πολλών εφαρμογών. Μία βάση δεδομένων ενός οργανισμού ή μιας επιχείρησης είναι μια συλλογή αλληλοσυσχετιζόμενων, διαμοιραζόμενων (shared) λειτουργικών στοιχείων (operational data) και μόνιμων δεδομένων που αποθηκεύονται μαζί (για μεγάλο χρονικό διάστημα) χωρίς άχρηστους πλεονασμούς για την ταυτόχρονη εξυπηρέτηση πολλών εφαρμογών.
7 ΤΥΠΟΙ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Τοπικές Βάσεις Δεδομένων Client/Server Βάσεις Δεδομένων
8 Client/Server ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ένα κατάστημα στην πραγματικότητα χρησιμοποιεί βάση δεδομένων τύπου Client-Server. Και αυτό γιατί υπάρχει ένας κεντρικός υπολογιστής(Server) τον οποίο διαχειρίζεται ο ιδιοκτήτης. Και οι επιμέρους υπολογιστές (Client) τους οποίους χρησιμοποιούν οι πελάτες και συνδέονται με τον κεντρικό υπολογιστή μέσω τοπικού δικτύου. Ένα κατάστημα Self-Video στην πραγματικότητα χρησιμοποιεί βάση δεδομένων τύπου Client-Server. Και αυτό γιατί υπάρχει ένας κεντρικός υπολογιστής(Server) τον οποίο διαχειρίζεται ο ιδιοκτήτης. Και οι επιμέρους υπολογιστές (Client) τους οποίους χρησιμοποιούν οι πελάτες και συνδέονται με τον κεντρικό υπολογιστή μέσω τοπικού δικτύου.
9 Η ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΟΥ SELF-VIDEO Για τις ανάγκες της δική μας πτυχιακής εργασίας δημιουργήσαμε μία τοπική βάση δεδομένων σε MsAccess, όπου θα αποθηκεύονται τα δεδομένα τα οποία εισάγουμε από τα προγράμματα Customer_application και self_Video της Builder, στα αντίστοιχα πεδία των πινάκων της Access. Ο λόγος για τον οποίο δεν χρησιμοποιήσαμε Client/Server βάση δεδομένων ήταν γιατί και οι δύο εφαρμογές και του πελάτη και του ιδιοκτήτη βρίσκονται σε έναν υπολογιστή και όχι σε τοπικό δίκτυο. Για τις ανάγκες της δική μας πτυχιακής εργασίας δημιουργήσαμε μία τοπική βάση δεδομένων σε MsAccess, όπου θα αποθηκεύονται τα δεδομένα τα οποία εισάγουμε από τα προγράμματα Customer_application και self_Video της Builder, στα αντίστοιχα πεδία των πινάκων της Access. Ο λόγος για τον οποίο δεν χρησιμοποιήσαμε Client/Server βάση δεδομένων ήταν γιατί και οι δύο εφαρμογές και του πελάτη και του ιδιοκτήτη βρίσκονται σε έναν υπολογιστή και όχι σε τοπικό δίκτυο.
10 Δημιουργία των απαραίτητων πινάκων Οι πίνακες που δημιουργήσαμε είναι οι εξής : Cards Περιέχει όλα τα στοιχεία που αφορούν την κάρτα ενός πελάτη, όπως το PIN και τα χρήματα. Charges Περιέχει τις τιμές για κάθε κατηγορία χρέωσης. Credits Περιέχει τα στοιχεία που αφορούν τις ανανεώσεις χρημάτων των καρτών. Customer Περιέχει τα στοιχεία που αφορούν τους πελάτες. Films Περιέχει τα στοιχεία που αφορούν τις ταινίες. Traffic Περιέχει στοιχεία για τις κινήσεις των ταινιών (ενοικιάσεις, καταθέσεις, χρεώσεις)
11 ΣΥΝΔΕΣΗ ΒΑΣΗΣ-BUILDER Για να μπορέσουμε σε μια εφαρμογή στην C++ Builder να συνδέσουμε μια βάση δεδομένων σε Ms Access θα πρέπει πρώτα από όλα να χρησιμοποιήσουμε το εργαλείο ODBC. Για να μπορέσουμε σε μια εφαρμογή στην C++ Builder να συνδέσουμε μια βάση δεδομένων σε Ms Access θα πρέπει πρώτα από όλα να χρησιμοποιήσουμε το εργαλείο ODBC. Το ODBC είναι γενικά γνωστό για τη σύνδεση με τις βάσεις δεδομένων. Για πολλούς σχεδιαστές το ODBC παίζει τον ίδιο ρόλο στην εφαρμογή τους με το ρόλο που η BDE παίζει στη ζωή των Borland σχεδιαστών. Το ODBC είναι γενικά γνωστό για τη σύνδεση με τις βάσεις δεδομένων. Για πολλούς σχεδιαστές το ODBC παίζει τον ίδιο ρόλο στην εφαρμογή τους με το ρόλο που η BDE παίζει στη ζωή των Borland σχεδιαστών.
12 Βήματα για την δημιουργία ODBC Driver Ανοίγουμε το Control Panel Επιλέγουμε το Administrative Tools και στη συνέχεια Το Data Sources (ODBC) Επιλέγουμε το Tab System DSN
13 Το παράθυρο ODBC Data Source Administrator Πατάμε το κουμπί Add…
14 Δημιουργία ενός καινούριου Data Source Επιλέγουμε ως ODBC Driver, το Microsoft Access Driver
15 Ρύθμιση του ODBC MSAccess Επιλέγουμε την σωστή βάση από το σκληρό δίσκο.
16 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ ALIAS Αφού έχουμε δημιουργήσει τον, το επόμενο βήμα είναι η δημιουργία ενός Alias μέσω του, το οποίο θα συνδέεται με την βάση δεδομένων που έχουμε δημιουργήσει. Αφού έχουμε δημιουργήσει τον ODBC Driver, το επόμενο βήμα είναι η δημιουργία ενός Alias μέσω του SQL Explorer, το οποίο θα συνδέεται με την βάση δεδομένων που έχουμε δημιουργήσει. Το Alias είναι αυτό που θα χρησιμοποιηθεί για να συνδέσουμε την βάση δεδομένων με τα διάφορα Data Control και Data Access Components της Builder.
17 Περιγραφή των εφαρμογών στην C++ Builder Η σύνδεση της βάσης δεδομένων και της Builder γίνεται στο DataModule. Η σύνδεση της βάσης δεδομένων και της Builder γίνεται στο DataModule. Ο αρχικός σκοπός του TDataModule είναι να παρέχει ένα μέρος όπου μπορούμε να καθορίσουμε τα μέσα για ένα σύνολο πινάκων. Ο αρχικός σκοπός του TDataModule είναι να παρέχει ένα μέρος όπου μπορούμε να καθορίσουμε τα μέσα για ένα σύνολο πινάκων. Οι λόγοι για τους οποίους χρησιμοποιούμε TDataModule από το να βάζουμε τους πίνακες κατευθείαν στην φόρμα είναι λόγοι αρχιτεκτονικής σχεδίασης. Οι λόγοι για τους οποίους χρησιμοποιούμε TDataModule από το να βάζουμε τους πίνακες κατευθείαν στην φόρμα είναι λόγοι αρχιτεκτονικής σχεδίασης. Είναι επίσης ένα μέρος για να δημιουργήσουμε τα επαναχρησιμοποιούμενα μέσα (TTable, TQuery, TDataSource κ.α.) για την πρόσβαση δεδομένων. Είναι επίσης ένα μέρος για να δημιουργήσουμε τα επαναχρησιμοποιούμενα μέσα (TTable, TQuery, TDataSource κ.α.) για την πρόσβαση δεδομένων.
18 DataModule του προγράμματος Self-Video
19 ΠΕΡΙΓΡΑΦΗ ΤΩΝ ΑΝΤΙΚΕΙΜΕΝΩΝ ΣΤΟ DATA MODULE TTable Το χρησιμοποιούμε για να έχουμε απευθείας πρόσβαση στις εγγραφές και στα πεδία που ανήκουν στη βάση δεδομένων στις εγγραφές και στα πεδία που ανήκουν στη βάση δεδομένων TDataSource Tο χρησιμοποιούμε για τη σύνδεση ανάμεσα σ’ ένα σύνολο δεδομένων ( dataset ) και στα data-aware controls σύνολο δεδομένων ( dataset ) και στα data-aware controls TDataBase Αντικείμενο για τη σύνδεση με τη βάση δεδομένων. Επιλέγουμε στην ιδιότητα Alias Name το alias που φτιάξαμε για τη βάση μας. TQuery Αντικείμενο για τη δημιουργία δηλώσεων. TQuery Αντικείμενο για τη δημιουργία BCB SQL δηλώσεων.
20 ΠΡΟΓΡΑΜΜΑ SELF_VIDEO Το πρώτο πρόγραμμα που δημιουργήσαμε στην Builder είναι το Self_Video το οποίο διαχειρίζεται ο ιδιοκτήτης του καταστήματος. Με την χρήση αυτού του προγράμματος ο ιδιοκτήτης μπορεί να εκτελέσει τις ακόλουθες λειτουργίες: Το πρώτο πρόγραμμα που δημιουργήσαμε στην Builder είναι το Self_Video το οποίο διαχειρίζεται ο ιδιοκτήτης του καταστήματος. Με την χρήση αυτού του προγράμματος ο ιδιοκτήτης μπορεί να εκτελέσει τις ακόλουθες λειτουργίες: 1. Εισαγωγή μιας καινούριας ταινίας στο κατάστημα 2. Επεξεργασία των στοιχείων μιας ήδη υπάρχουσας ταινίας. 3. Διαγραφή μιας ταινίας. 4. Εισαγωγή ενός καινούριου πελάτη. 5. Επεξεργασία των στοιχείων ενός πελάτη. 6. Δυνατότητα παρακολούθησης ιστορικών στοιχείων, όσον αφορά την κίνηση των ταινιών και των πελατών. 7. Ανάληψη και κατάθεση ταινίας από τον ιδιοκτήτη. 8. Αλλαγή στις τιμές χρέωσης. 9. Επίβλεψη των ενοικιασμένων ταινιών καθώς και τις τρέχουσες χρεώσεις τους. 10. Παρακολούθηση των ανανεώσεων κάθε πελάτη στην κάρτα του (πίστωση κάρτας) ημερησίως, μηνιαίως, και συνολικά.
21 DataModule της εφαρμογής Customer_Application
22 ΠΡΟΓΡΑΜΜΑ CUSTOMER_APPLICATION Το δεύτερο πρόγραμμα που δημιουργήσαμε στην Builder είναι το το οποίο χρησιμοποιεί ο πελάτης. Μ’ αυτό το πρόγραμμα ο πελάτης μπορεί να εκτελέσει τις ακόλουθες ενέργειες: Το δεύτερο πρόγραμμα που δημιουργήσαμε στην Builder είναι το Customer_Application το οποίο χρησιμοποιεί ο πελάτης. Μ’ αυτό το πρόγραμμα ο πελάτης μπορεί να εκτελέσει τις ακόλουθες ενέργειες: 1. Ανάληψη μιας ταινίας, 2. Κατάθεση μιας ταινίας και τέλος 3. να προσθέσει χρήματα στην κάρτα του.
23 Ακολουθεί παρουσίαση των προγραμμάτων