Οδηγός Προγραμματισμού διαλόγου: Module Pool in SAP ABAP
SAP-Το ABAP υποστηρίζει δύο τύπους προγραμμάτων – Πρόγραμμα αναφοράς και Πρόγραμμα διαλόγου.
Εάν το πρόγραμμά σας ABAP απαιτεί είσοδο από τον χρήστη, χρησιμοποιείται ο προγραμματισμός διαλόγου.
Σε αυτό το σεμινάριο θα μάθετε:
- Διαφορά μεταξύ προγραμμάτων αναφοράς και διαλόγου
- Δείγμα επεξεργασίας συναλλαγών στον Προγραμματισμό διαλόγου
- Στοιχεία του προγράμματος διαλόγου
Ένα παράθυρο διαλόγου χρήστη είναι οποιαδήποτε μορφή αλληλεπίδρασης μεταξύ του χρήστη και του προγράμματος και μπορεί να είναι οποιοδήποτε από τα ακόλουθα
- Εισαγωγή δεδομένων
- Επιλογή στοιχείου μενού
- Κάνοντας κλικ σε ένα κουμπί
- Κάνοντας κλικ ή διπλό κλικ σε μια καταχώριση
Το πρόγραμμα διαλόγου χρησιμοποιείται επίσης όταν χρειάζεται να πλοηγηθούμε εμπρός και πίσω μεταξύ των οθονών
Τα προγράμματα διαλόγου δημιουργούνται με τον τύπο «M» – Module Pool. Δεν μπορούν να εκτελεστούν ανεξάρτητα και πρέπει να επισυναφθούν σε τουλάχιστον έναν κωδικό συναλλαγής στον οποίο προσδιορίζετε μια αρχική οθόνη.
Διαφορά μεταξύ προγραμμάτων αναφοράς και διαλόγου
Πρόγραμμα αναφοράς:
Μια αναφορά είναι ένα πρόγραμμα που συνήθως διαβάζει και αναλύει δεδομένα σε πίνακες βάσης δεδομένων χωρίς να αλλάζει τους πίνακες βάσεις δεδομένων.
Πρόγραμμα διαλόγου:
Ένα πρόγραμμα διαλόγου σάς επιτρέπει να εργάζεστε διαδραστικά με το σύστημα και να αλλάζετε τα περιεχόμενα των πινάκων της βάσης δεδομένων. Κάθε πρόγραμμα διαλόγου έχει μια συγκεκριμένη σειρά οθονών που επεξεργάζεται το σύστημα η μία μετά την άλλη.
Ένα δείγμα επεξεργασίας συναλλαγών στον προγραμματισμό διαλόγου
Στοιχεία του προγράμματος διαλόγου
Σε αντίθεση με αναφέρουν που γενικά συνεπάγεται τη δημιουργία ενός αυτόνομου προγράμματος που μπορεί να εκτελεστεί ανεξάρτητα από άλλα αντικείμενα, η ανάπτυξη προγράμματος διαλόγου συνεπάγεται την ανάπτυξη πολλαπλών αντικειμένων κανένα από τα οποία δεν μπορεί να εκτελεστεί μόνο του. Αντίθετα, όλα τα αντικείμενα συνδέονται ιεραρχικά με το κύριο πρόγραμμα και εκτελούνται με μια ακολουθία που υπαγορεύεται από το Κύριο Πρόγραμμα διαλόγου.
Τα στοιχεία ενός προγράμματος διαλόγου είναι:
Κωδικός συναλλαγής
- Ο κωδικός συναλλαγής ξεκινά μια ακολουθία οθόνης.
- Μπορείτε να δημιουργήσετε κωδικούς συναλλαγής στο πρόγραμμα περιήγησης αποθετηρίου στον πάγκο εργασίας ABAP ή χρησιμοποιώντας το Transaction SE93.
- Ένας κωδικός συναλλαγής συνδέεται με ένα πρόγραμμα ABAP και μια αρχική οθόνη.
- Μπορείτε να ξεκινήσετε μια ακολουθία οθόνης από οποιοδήποτε πρόγραμμα ABAP χρησιμοποιώντας τη δήλωση CALL SCREEN.
Οθόνες
- Κάθε διάλογος σε ένα SAP το σύστημα ελέγχεται από μία ή περισσότερες οθόνες.
- Δημιουργείτε οθόνες χρησιμοποιώντας την οθόνη Painter στον πάγκο εργασίας ABAP μέσω της συναλλαγής SE51
- Κάθε οθόνη ανήκει σε ένα Πρόγραμμα ABAP.
- Αυτές οι οθόνες αποτελούνται από μια «μάσκα οθόνης» ή «διάταξη» και τη λογική ροής της. Η οθόνη έχει μια διάταξη που καθορίζει τις θέσεις των πεδίων εισόδου/εξόδου και άλλων γραφικών στοιχείων, όπως πλαίσια ελέγχου και κουμπιά επιλογής. Μια λογική ροής καθορίζει τη λογική επεξεργασία εντός της οθόνης.
Κατάσταση GUI
- Κάθε οθόνη έχει μια κατάσταση(ες) γραφικού περιβάλλοντος (GUI) που είναι ανεξάρτητα στοιχεία ενός προγράμματος.
- Αυτό ελέγχει τις γραμμές μενού, την τυπική γραμμή εργαλείων, τη γραμμή εργαλείων εφαρμογής , με τις οποίες ο χρήστης μπορεί να επιλέξει λειτουργίες στην εφαρμογή.
- Μπορείτε να τα δημιουργήσετε στον πάγκο εργασίας ABAP χρησιμοποιώντας το Μενού Painter.
Πρόγραμμα ABAP
- Κάθε κατάσταση οθόνης και GUI στο σύστημα R/3 ανήκει σε ένα πρόγραμμα ABAP.
- Το πρόγραμμα ABAP περιέχει τις ενότητες διαλόγου που καλούνται από τη λογική ροής οθόνης και επεξεργάζονται επίσης την είσοδο του χρήστη από την κατάσταση GUI.
- Τα προγράμματα ABAP που χρησιμοποιούν οθόνες είναι επίσης γνωστά ως προγράμματα διαλόγου.
- Σε μια ομάδα μονάδων (πρόγραμμα τύπου M). το πρώτο μπλοκ επεξεργασίας που καλείται είναι πάντα μια ενότητα διαλόγου. Ωστόσο, μπορείτε επίσης να χρησιμοποιήσετε οθόνες σε άλλα προγράμματα ABAP, όπως εκτελέσιμα προγράμματα ή λειτουργικές μονάδες. Το πρώτο μπλοκ επεξεργασίας ονομάζεται τότε διαφορετικά. για παράδειγμα, από το περιβάλλον χρόνου εκτέλεσης ή μια κλήση διαδικασίας. Στη συνέχεια, η ακολουθία οθόνης ξεκινά χρησιμοποιώντας τη δήλωση CALL SCREEN.
Λογική ροής οθόνης
Η λογική της ροής οθόνης χωρίζεται κυρίως σε τέσσερα στοιχεία.
- Διαδικασία πριν από την έξοδο (Pbo) συμβάν: το οποίο υποβάλλεται σε επεξεργασία πριν εμφανιστεί η οθόνη
- Διαδικασία μετά την εισαγωγή (PAI) συμβάν: το οποίο υποβάλλεται σε επεξεργασία μετά από μια ενέργεια χρήστη στην οθόνη
- Διαδικασία κατόπιν αιτήματος βοήθειας (P.O.H.): το οποίο επεξεργάζεται όταν πατηθεί το F1
- Διαδικασία κατόπιν αιτήματος αξίας (POV): το οποίο επεξεργάζεται όταν πατηθεί το F4
Dynpro
- Μια οθόνη μαζί με τη λογική της ροής ονομάζεται Dynpro («Δυναμικό πρόγραμμα» αφού η λογική ροής οθόνης επηρεάζει τη ροή του προγράμματος)
- Κάθε dynpro ελέγχει ακριβώς ένα βήμα του προγράμματος διαλόγου σας.
- Οι οθόνες που ανήκουν σε ένα πρόγραμμα είναι αριθμημένα. Η ακολουθία ροής οθόνης μπορεί να είναι είτε γραμμική είτε κυκλική. Μέσα από μια αλυσίδα οθόνης, μπορείτε ακόμη και να καλέσετε μια άλλη αλυσίδα οθόνης και, αφού την επεξεργαστείτε, να επιστρέψετε στην αρχική αλυσίδα. Μπορείτε επίσης να παρακάμψετε την στατικά καθορισμένη επόμενη οθόνη μέσα από τις μονάδες διαλόγου του προγράμματος ABAP.
ABAP Module Pool
- Σε ένα συμβάν PBO ή PAI, το Dynpro καλεί ένα πρόγραμμα διαλόγου ABAP. Η συλλογή τέτοιων προγραμμάτων ονομάζεται ομάδα μονάδων ABAP.
- Για παράδειγμα, οι λειτουργικές μονάδες που καλούνται στο συμβάν PAI χρησιμοποιούνται για τον έλεγχο της εισόδου του χρήστη και για την ενεργοποίηση κατάλληλων βημάτων διαλόγου, όπως η εργασία ενημέρωσης.
- Όλοι οι dynpro να καλούνται από μέσα ένας η συναλλαγή αναφέρεται σε μια κοινή ομάδα μονάδων.
Δομή Προγράμματος Διαλόγου
Ροή διαδικασίας για ένα πρόγραμμα διαλόγου