Dialógus programozási oktatóanyag: Modulkészlet be SAP ABAP
SAP-Az ABAP kétféle programot támogat – a Report Program és a Dialog Program.
Ha az ABAP program felhasználói bevitelt igényel, akkor a párbeszédablakos programozás történik.
Ebben az oktatóanyagban megtudhatja:
- A jelentés és a párbeszédprogramok közötti különbség
- Példa tranzakció feldolgozásra a Dialog Programmingban
- A Dialógus program összetevői
A felhasználói párbeszéd a felhasználó és a program közötti interakció bármely formája, és az alábbiak bármelyike lehet
- Adatok bevitele
- Menüpont kiválasztása
- Kattintson egy gombra
- Kattintás vagy dupla kattintás egy bejegyzésre
A párbeszédablakot akkor is használjuk, ha oda-vissza kell navigálnunk a képernyők között
A párbeszédpanel programok 'M' – Modul Pool típussal jönnek létre. Nem hajthatók végre önállóan, és legalább egy tranzakciós kódhoz kell csatolni őket, amelyben megad egy kezdeti képernyőt.
A jelentés és a párbeszédprogramok közötti különbség
Beszámoló program:
A jelentés egy olyan program, amely jellemzően az adatbázis tábláiban lévő adatokat olvassa be és elemzi anélkül, hogy megváltoztatná a adatbázis.
Dialógus program:
Egy párbeszédprogram lehetővé teszi a rendszerrel való interaktív munkát és az adatbázis táblák tartalmának módosítását. Minden párbeszédprogramnak van egy bizonyos képernyősorozata, amelyet a rendszer egymás után dolgoz fel.
Egy minta tranzakciófeldolgozás a párbeszédes programozásban
A Dialógus program összetevői
Eltérően jelentést amely általában egy autonóm program létrehozását jelenti, amely más objektumoktól függetlenül is végrehajtható, a dialógus programfejlesztés több objektum fejlesztésével jár, amelyek közül egyik sem hajtható végre önállóan. Ehelyett az összes objektum hierarchikusan kapcsolódik a fő programhoz, és a párbeszédpanel főprogramja által meghatározott sorrendben kerül végrehajtásra..
A párbeszédprogram összetevői a következők:
Tranzakciós kód
- A tranzakciós kód elindít egy képernyősorozatot.
- A tranzakciós kódokat a Repository Browserben hozhatja létre az ABAP Workbenchben vagy a Tranzakció SE93 használatával.
- A tranzakciós kód egy ABAP programhoz és egy kezdeti képernyőhöz kapcsolódik.
- A CALL SCREEN utasítás segítségével bármelyik ABAP programból elindíthat képernyősorozatot.
Screens
- Minden párbeszédpanel egy SAP a rendszert egy vagy több képernyő vezérli.
- A Képernyő segítségével képernyőket hozhat létre Painter az ABAP Workbenchben az SE51 tranzakción keresztül
- Minden képernyő egy ABAP program.
- Ezek a képernyők egy „képernyőmaszkból” vagy „elrendezésből” és annak áramlási logikájából állnak. A képernyő elrendezése meghatározza a beviteli/kimeneti mezők és egyéb grafikus elemek, például jelölőnégyzetek és rádiógombok pozícióját. A folyamatlogika határozza meg a képernyőn belüli logikai feldolgozást.
GUI állapot
- Minden képernyőnek van grafikus felhasználói felülete(i), amelyek egy program független összetevői.
- Ez vezérli a menüsorokat, a szabványos eszköztárat, az alkalmazás eszköztárat, amelyekkel a felhasználó választhat funkciókat az alkalmazásban.
- Létrehozhatja őket az ABAP Workbenchben a menü segítségével Painter.
ABAP program
- Az R/3 rendszerben minden képernyő és GUI állapot egy ABAP programhoz tartozik.
- Az ABAP program tartalmazza azokat a párbeszéd modulokat, amelyeket a képernyőfolyamat logika hív meg, és feldolgozza a grafikus felhasználói felület állapotából származó felhasználói bevitelt is.
- A képernyőket használó ABAP-programokat párbeszédprogramoknak is nevezik.
- Modulkészletben (M típusú program); az első meghívandó feldolgozási blokk mindig egy párbeszéd modul. A képernyőket azonban más ABAP programokban is használhatja, például végrehajtható programokban vagy funkciómodulokban. Az első feldolgozási blokkot ezután másképpen hívják; például a futási környezet vagy egy eljáráshívás által. A képernyősorozat ezután a CALL SCREEN utasítással indul.
Screen Flow Logic
A Screen Flow logika elsősorban négy részre oszlik.
- Kimenet előtti folyamat (Kht.) esemény: amely a képernyő megjelenése előtt kerül feldolgozásra
- Folyamat bevitel után (PAI) esemény: amely egy felhasználói művelet után kerül feldolgozásra a képernyőn
- Eljárás segítségkérésre (P.O.H.): amely az F1 lenyomásakor kerül feldolgozásra
- Eljárás értékkérésre (Saját tulajdonú gépjármű): ami az F4 lenyomásakor kerül feldolgozásra
Dynpro
- A képernyőt a Flow logikájával együtt Dynpro-nak nevezik ("Dinamikus program", mivel a képernyőfolyamat logikája befolyásolja a programfolyamatot)
- Minden dynpro pontosan egy lépést vezérel a Dialog Programban.
- A programhoz tartozó képernyők számozott. A képernyő áramlási sorrendje lehet lineáris vagy ciklikus. Egy képernyőláncon belül akár egy másik képernyőláncot is hívhat, és feldolgozása után visszatérhet az eredeti lánchoz. A statikusan meghatározott következő képernyőt az ABAP program párbeszédpaneljeiből is felülírhatja.
ABAP Modul Pool
- PBO vagy PAI esemény esetén a Dynpro meghív egy ABAP párbeszédablakot. Az ilyen programok gyűjteményét ABAP modulkészletnek nevezzük.
- Például a PAI eseménynél meghívott modulok a felhasználói bevitel ellenőrzésére és a megfelelő párbeszédpanelek indítására szolgálnak, mint például a frissítési feladat.
- Minden dynpro belülről hívható egy tranzakció közös modulkészletre utal.
A párbeszédprogram felépítése
Folyamatfolyamat egy párbeszédprogramhoz