SAP Λεξικό δεδομένων ABAP (SE11)
⚡ Έξυπνη Σύνοψη
SAP Το ABAP Data Dictionary (SE11) συγκεντρώνει κάθε ορισμό μεταδεδομένων που χρησιμοποιείται από SAP εφαρμογές. Αυτή η σελίδα εξηγεί τα τρία επαναχρησιμοποιήσιμα επίπεδα — τομείς, στοιχεία δεδομένων και πίνακες — καθώς και συγκεντρωτικά αντικείμενα όπως προβολές, βοήθεια αναζήτησης και αντικείμενα κλειδώματος.
Τι είναι το Λεξικό Δεδομένων;
Το Λεξικό Δεδομένων είναι μια κεντρική πηγή πληροφοριών για τα δεδομένα σε ένα σύστημα διαχείρισης πληροφοριών. Η κύρια λειτουργία του είναι να υποστηρίζει τη δημιουργία και τη διαχείριση ορισμών δεδομένων (ή «μεταδεδομένων»).
In SAP, αυτό το κεντρικό αποθετήριο ονομάζεται Λεξικό ABAP και συντηρείται με τη συναλλαγή SE11. Κάθε πίνακας, πεδίο, προβολή και κλείδωμα που χρησιμοποιείται από ένα πρόγραμμα ABAP περιγράφεται εδώ μία φορά και στη συνέχεια επαναχρησιμοποιείται παντού, επομένως ένας ορισμός δεν χρειάζεται ποτέ να επαναληφθεί μέσα σε μεμονωμένα προγράμματα.
Η παραπάνω οθόνη δείχνει την αρχική οθόνη του SE11, όπου κάθε τύπος αντικειμένου λεξικού επιλέγεται πριν εμφανιστεί ή αλλάξει. Πριν εξετάσουμε αυτούς τους τύπους αντικειμένων, είναι χρήσιμο να κατανοήσουμε γιατί SAP διατηρεί αυτά τα μεταδεδομένα εκτός των προγραμμάτων που τα χρησιμοποιούν.
Γιατί έχει σημασία το λεξικό ABAP
Το λεξικό ABAP υπάρχει επειδή SAP διαχωρίζει την περιγραφή των δεδομένων από τα προγράμματα που τα επεξεργάζονται. Ένα πεδίο όπως ο αριθμός του παραστατικού αγοράς περιγράφεται ακριβώς μία φορά και κάθε αναφορά, οθόνη και λειτουργική μονάδα που το χρειάζεται αναφέρεται σε αυτήν τη μοναδική περιγραφή.
Αυτός ο κεντρικός ορισμός προσφέρει τέσσερα πρακτικά οφέλη. Η συνέπεια είναι εγγυημένη, επειδή μια αλλαγή που γίνεται σε έναν τομέα φτάνει αμέσως σε κάθε πεδίο που αναφέρεται σε αυτόν μέσω ενός στοιχείου δεδομένων. Ο πλεονασμός εξαλείφεται, καθώς οι προγραμματιστές επαναχρησιμοποιούν υπάρχοντες ορισμούς αντί να εφευρίσκουν νέους. Integrity προστατεύεται, καθώς τα εύρη τιμών, οι πίνακες ελέγχου και τα ξένα κλειδιά επικυρώνονται από το λεξικό και όχι από τον κώδικα της εφαρμογής. Τέλος, το λεξικό είναι ανεξάρτητο από τη βάση δεδομένων, επομένως ένας πίνακας που ορίζεται στο SE11 δημιουργείται αυτόματα στην υποκείμενη βάση δεδομένων με τους σωστούς εγγενείς τύπους.
Το λεξικό είναι επίσης ενεργό κατά τον χρόνο εκτέλεσης. Οι οθόνες διαβάζουν τις ετικέτες πεδίων, τα κείμενα βοήθειας και τα εύρη τιμών απευθείας από αυτό, γι' αυτό και εμφανίζεται μια λίστα βοήθειας F1 ή μια λίστα τιμών F4 χωρίς ούτε μία γραμμή επιπλέον κωδικοποίησης. Η κατανόηση των τριών επιπέδων παρακάτω εξηγεί πώς οργανώνεται αυτή η επαναχρησιμοποίηση.
Λεξικό ABAP 3 επιπέδων
Τα αντικείμενα στο λεξικό ABAP βρίσκονταν σε τρία επίπεδα που υποστηρίζουν την επαναχρησιμοποίησή τους. Αυτά τα επίπεδα είναι:
- Domains
- Στοιχεία δεδομένων
- Πίνακες και δομές
Κάθε επίπεδο βασίζεται στο προηγούμενο: ένας τομέας παρέχει τα τεχνικά χαρακτηριστικά, ένα στοιχείο δεδομένων δίνει σε αυτά τα χαρακτηριστικά μια επιχειρηματική σημασία και ένας πίνακας ή δομή ομαδοποιεί τα στοιχεία δεδομένων σε μια εγγραφή. Ας τα εξετάσουμε λεπτομερώς –
Domains
- Περιγράφει τα τεχνικά χαρακτηριστικά ενός πεδίου πίνακα
- Καθορίζει ένα εύρος τιμών που περιγράφει επιτρεπόμενες τιμές δεδομένων για τα πεδία
- Τα πεδία που αναφέρονται στον ίδιο τομέα (μέσω των στοιχείων δεδομένων που τους έχουν εκχωρηθεί) αλλάζουν όταν γίνεται αλλαγή στον τομέα
- Εξασφαλίζει συνέπεια
Πρώην. Αριθμός παραστατικού αγοράς (EBELN)
Η παραπάνω οθόνη τομέα ορίζει μόνο τον τύπο και το μήκος δεδομένων. Η επιχειρηματική σημασία αυτής της τιμής παρέχεται από το επόμενο επίπεδο, το στοιχείο δεδομένων.
Στοιχεία Δεδομένων
- Περιγράφει τον ρόλο που παίζει ένα πεδίο σε ένα τεχνικό πλαίσιο
- Τα πεδία της ίδιας σημασιολογικής σημασίας μπορούν να αναφέρονται στο ίδιο στοιχείο δεδομένων
- Περιέχει τις πληροφορίες πεδίου
Πρώην. Αριθμός παραστατικού αγοράς (EBELN)
Η οθόνη στοιχείων δεδομένων περιέχει τις ετικέτες πεδίων και την τεκμηρίωση που βλέπουν οι χρήστες σε μια οθόνη. Στη συνέχεια, τα στοιχεία δεδομένων συνδυάζονται σε πίνακες.
πίνακες
- Αντιπροσωπεύστε τους πίνακες βάσεων δεδομένων όπου βρίσκονται πραγματικά τα δεδομένα.
- Οι πίνακες μπορούν να οριστούν ανεξάρτητα από τη βάση δεδομένων στο λεξικό ABAP.
- Τα πεδία του πίνακα ορίζονται με τα (ανεξάρτητα από τη βάση δεδομένων) SAP Τύποι δεδομένων ABAP και μήκη.
Δομές
- Είναι δηλώσεις εγγραφών που ΔΕΝ αντιστοιχούν σε Πίνακα Βάσης Δεδομένων.
- Ακριβώς όπως ο τύπος δεδομένων που ορίζεται από το χρήστη.
- Ορίζεται σαν πίνακας και μπορεί στη συνέχεια να αντιμετωπιστεί από προγράμματα ABAP.
- Οι δομές περιέχουν δεδομένα μόνο κατά τη διάρκεια του χρόνου εκτέλεσης ενός προγράμματος.
Ο παρακάτω πίνακας συγκρίνει τα τρία επίπεδα με μια ματιά.
| Επίπεδο | Τι ορίζει | Αποθηκεύει δεδομένα; | Τυπικό παράδειγμα |
|---|---|---|---|
| Domain | Τεχνικά χαρακτηριστικά: τύπος δεδομένων, μήκος, εύρος τιμών | Οχι | ΕΜΠΕΛΝ (ΧΑΡΑΚΤΗΡΑΣ 10) |
| Στοιχείο δεδομένων | Σημασιολογική σημασία: ετικέτες πεδίων, τεκμηρίωση, βοήθεια με το F1 | Οχι | EBELN — Αριθμός Εγγράφου Αγοράς |
| Τραπέζι | Μια εγγραφή πεδίων που δημιουργείται στη βάση δεδομένων | Ναι, επίμονα | EKKO — Κεφαλίδα εγγράφου αγοράς |
| Structure | Μια εγγραφή πεδίων που χρησιμοποιούνται μόνο μέσα σε ένα πρόγραμμα | Ναι, μόνο κατά τον χρόνο εκτέλεσης | Χώρος εργασίας για ένα εσωτερικό τραπέζι |
Συγκεντρωτικά Αντικείμενα του Λεξικού ABAP
Συγκεντρωτικά μέσα που αποτελούνται από πολλά συστατικά. Στο Λεξικό ABAP, τα συγκεντρωτικά αντικείμενα είναι αντικείμενα που προέρχονται από πολλούς διαφορετικούς διαφανείς πίνακες.
- Προβολές
- αναζήτησε βοήθεια
- Κλείδωμα αντικειμένων
Ας τα δούμε αναλυτικά
Προβολές
- Προβολές σε SAP – Τα ABAP χρησιμοποιούνται για τη σύνοψη δεδομένων που κατανέμονται σε διάφορους πίνακες.
- Τα δεδομένα μιας προβολής δεν αποθηκεύονται πραγματικά φυσικά. Αντίθετα, τα δεδομένα μιας προβολής προέρχονται από έναν ή περισσότερους άλλους πίνακες
- Είναι προσαρμοσμένο στις ανάγκες μιας συγκεκριμένης εφαρμογής
αναζήτησε βοήθεια
- Η βοήθεια αναζήτησης είναι ένα εργαλείο που σας βοηθά να αναζητήσετε εγγραφές δεδομένων στο σύστημα
- Μια αποτελεσματική και φιλική προς το χρήστη αναζήτηση βοηθά τους χρήστες όπου το κλειδί μιας εγγραφής είναι άγνωστο
Κλείδωμα αντικειμένων
- Ταυτόχρονη πρόσβαση στην ίδια εγγραφή δεδομένων από δύο χρήστες στο SAP το σύστημα συγχρονίζεται με μηχανισμό κλειδώματος.
- Οι κλειδαριές ρυθμίζονται και απελευθερώνονται με την κλήση ορισμένων λειτουργικών μονάδων. Αυτές οι λειτουργικές μονάδες δημιουργούνται αυτόματα από τον ορισμό των λεγόμενων αντικειμένων κλειδώματος στο λεξικό ABAP/4
Λειτουργικές μονάδες : Enqueue_ – να κλειδώσει το τραπέζι dequeue_ – για να ελευθερώσετε την κλειδαριά
⚠️ Προειδοποίηση: Ένα κλείδωμα που έχει οριστεί με ENQUEUE και δεν έχει αποδεσμευτεί ποτέ με DEQUEUE παραμένει ενεργό μέχρι να ολοκληρωθεί η συνεδρία χρήστη. Να καλείτε πάντα τη λειτουργική μονάδα DEQUEUE, συμπεριλαμβανομένης της διαδρομής σφάλματος του προγράμματος.
Έχοντας κατανοήσει τους τύπους αντικειμένων, η επόμενη ενότητα τους εφαρμόζει δημιουργώντας έναν διαφανή πίνακα στο SE11.
Πώς να δημιουργήσετε έναν διαφανή πίνακα στο SE11
Ένας διαφανής πίνακας είναι το πιο συνηθισμένο αντικείμενο λεξικού, επειδή έχει μια σχέση ένα προς ένα με έναν φυσικό πίνακα στη βάση δεδομένων. Τα παρακάτω βήματα δημιουργούν έναν από την αρχή.
- Ανοιχτό SE11: Εισαγάγετε τη συναλλαγή SE11, επιλέξτε το Πίνακας βάσης δεδομένων κουμπί επιλογής, πληκτρολογήστε ένα όνομα στον χώρο ονομάτων πελατών (ξεκινώντας με Z ή Y) και επιλέξτε δημιουργώ.
- Εισαγάγετε τη σύντομη περιγραφή και την κατηγορία παράδοσης: Στις Γνωρίσματα καρτέλα, προσθέστε ένα σύντομο κείμενο και ορίστε την κλάση παράδοσης, η οποία λέει SAP πώς συμπεριφέρονται τα δεδομένα κατά τη διάρκεια μιας αντιγραφής από τον πελάτη ή μιας αναβάθμισης. Η κλάση παράδοσης A χρησιμοποιείται για δεδομένα εφαρμογής και η C χρησιμοποιείται για την προσαρμογή δεδομένων.
- Ορίστε το χαρακτηριστικό συντήρησης: Επιλέξτε Επιτρέπεται η προβολή/συντήρηση έτσι ώστε μια προβολή συντήρησης να μπορεί αργότερα να δημιουργηθεί με SE55 ή SM30.
- Ορίστε τα πεδία: Στις Πεδία καρτέλα, προσθέστε το MANDT ως το πρώτο πεδίο κλειδιού με στοιχείο δεδομένων MANDT και, στη συνέχεια, προσθέστε τα πεδία κλειδιού επιχείρησης. Κάθε πεδίο πληκτρολογείται από ένα στοιχείο δεδομένων, το οποίο με τη σειρά του αναφέρεται σε έναν τομέα, επομένως τα τρία επίπεδα που περιγράφηκαν προηγουμένως επαναχρησιμοποιούνται αντί να επαναπροσδιορίζονται.
- Διατήρηση τεχνικών ρυθμίσεων: Πατήστε Τεχνικές ρυθμίσεις (συναλλαγή SE13) και ορίστε την κλάση δεδομένων, για παράδειγμα APPL0 για τα κύρια δεδομένα, μαζί με την αναμενόμενη κατηγορία μεγέθους. Αυτές οι τιμές καθορίζουν τον χώρο πίνακα και το αρχικό μέγεθος στη βάση δεδομένων.
- Θέτω εις ενέργειαν: Τύπος Θέτω εις ενέργειανΗ ενεργοποίηση δημιουργεί τον φυσικό πίνακα στη βάση δεδομένων και καθιστά τον ορισμό χρησιμοποιήσιμο σε προγράμματα ABAP.
💡 Συμβουλές: Δημιουργήστε ξένα κλειδιά για κάθε πεδίο που πρέπει να επικυρωθεί σε σχέση με έναν πίνακα ελέγχου. Στη συνέχεια, το λεξικό επιβάλλει αυτόματα τη σχέση και δεν απαιτείται κωδικός επικύρωσης μέσα στο πρόγραμμα.
Μόλις ο πίνακας είναι ενεργός, μπορεί να διευθυνσιοδοτηθεί απευθείας από ένα πρόγραμμα ABAP με Ανοίξτε την SQLΤο παρακάτω παράδειγμα διαβάζει τον τυπικό πίνακα λεξικού SCARR σε έναν εσωτερικό πίνακα και παραθέτει τα περιεχόμενά του.
REPORT zdemo_ddic_read. * Internal table typed directly from the dictionary table SCARR DATA: lt_scarr TYPE STANDARD TABLE OF scarr, ls_scarr TYPE scarr. SELECT carrid carrname currcode FROM scarr INTO TABLE lt_scarr. LOOP AT lt_scarr INTO ls_scarr. WRITE: / ls_scarr-carrid, ls_scarr-carrname, ls_scarr-currcode. ENDLOOP.
Επειδή ο εσωτερικός πίνακας πληκτρολογείται με TYPE STANDARD TABLE OF scarr, κάθε μήκος πεδίου και τύπος δεδομένων προέρχεται από το λεξικό. Εάν αλλάξει ο ορισμός του πίνακα, το πρόγραμμα αντιλαμβάνεται την αλλαγή μετά την ενεργοποίηση χωρίς καμία επεξεργασία.
Βασική συναλλαγή λεξικού ABAP Codes
Οι ακόλουθες συναλλαγές καλύπτουν την καθημερινή εργασία ορισμού, ελέγχου και συντήρησης αντικειμένων λεξικού.
| Συναλλαγή | Σκοπός |
|---|---|
| SE11 | Αρχική οθόνη λεξικού δεδομένων (μόνο οθόνη SE12) |
| SE13 | Λεξικό ABAP: Τεχνικές ρυθμίσεις |
| SE14 | Βοηθητικό πρόγραμμα βάσης δεδομένων |
| SE15 | Σύστημα Πληροφοριών Αποθετηρίου |
| SE16 | Πρόγραμμα περιήγησης δεδομένων |
| SE17 | Γενική Επιτραπέζια Οθόνη |
| SE55 | Συντήρηση προβολής πίνακα |
| SM30 | Συντήρηση τραπεζιού |









