ABAP

ABAP
Az első változat kelte 1983
Befolyásolta Cobol
Weboldal scn.sap.com/community/abap

Az ABAP egy saját programozási nyelv , az SAP szoftvercsomag része . Jelenleg az a nyelv, amelyet a NetWeaver platform részét képező webalkalmazások szervereinek programozásában használnak a szoftvercsomagok megvalósításához .

A verzió ABAP / 4 az objektumot , a szám 4 további utalva tartozó osztálya nyelv a negyedik generációs .

Történelem

A betűszó ABAP eredetileg állt A llgemeiner B erichts egy ufbereitungs p rozessor ( generikus processzor jelentés előállítására ), és később angolosította mint A dvanced B usiness Egy LKALMAZÁS P ROGRAMOZÁS.

ABAP egyik utódai Cobol és megjelent a 1980-as években a hullám a negyedik generációs nyelvek (L4G) . Az SAP R / 2 alkalmazás adatkimeneteinek (ún. Jelentések ) előállításához használt nyelv származéka, amelyre sok multinacionális vállalat építtette szakmai alkalmazás-architektúráját. Ezt követően az ABAP az 1992-ben megjelent SAP R / 3 alkalmazások referencianyelveként maradt fenn .

Eredetileg ez a nyelv magában foglalta a logikai adatbázis fogalmát, amelynek lehetővé kell tennie minden felhasználó számára a szükséges jelentések elkészítését. Valójában kiderült, hogy az ilyen nyelvű programok kidolgozását a gyakorlatban csak szilárd tapasztalattal rendelkező szakemberek végezhetik.

Ezt követően a nyelvet kibővítették egy objektum-orientált adatmodellre (ABAP Objects) a 4.5-ös verziójától, amelyet végül egy általánosabb, NetWeaver nevű termék nyelveként kell integrálni. Ez utóbbi az ABAP-ot és a Java-t egyaránt használja .

Értelmezett nyelv.

Nyelvi összetevők

A forráskód  : közvetlenül az SAP SAP Workbench nevű komponensébe van írva,és az eszköz információs bázisában lesz tárolva. Ez a nyelv, mint a java , meg kell összeállítani annak érdekében, hogy végre kell hajtani. A java-val ellentétben azonban az SAP processzor minden program használata előtt ellenőrzi, hogy rendelkezik-e a program legújabb verziójával. Ha nem, akkor menet közben újrafordítják.

Az adatszótár ( DDIC )  : az adatbázis el van rejtve a programozó elől . Ezért olyan záradékokon keresztül jut hozzá, amelyek maguk a nyelv részei. Hasonlóképpen, az adatmodell kezelése egy olyan összetevőn keresztül történik, amely maga hozza létre vagy módosítja az adattáblákat. Ez az adatszótár a következőket tartalmazza:

A közlekedési eszköz . Minden alkalommal, amikor egy programot módosítanak, azt a létrehozott környezetből egy tesztkörnyezetbe, majd a termelési környezetbe kell szállítani (ezeknek a környezetek mindegyikének külön adatkészlete van, egynél több információ is lehet. rendszer). Ezt a műveletet egy szállítási megrendelés végrehajtásával hajtják végre .

Az adatbázisokkal való kommunikáció SQL lekérdezéseken keresztül történik . Az SAP első verzióiban nagyon leegyszerűsítettek, de az új verziók bonyolultabbá válnak, különösen az SAP ECC legújabb verzióival (Ehp7) és természetesen az S / 4HANA-val.

Mire az ABAP?

Az ABAP a NetWeaver megjelenéséig az SAP R / 3 rendszerek építőköve volt . Lehetővé teszi az alábbiak elérését:

Az ABAP az objektumok programozásának integrálása érdekében fejlődött. Az objektumprogramozás összes fogalma megtalálható az ABAP Objects programban. Az ABAP Objects az ABAP nyelv kiterjesztése, amellyel teljes mértékben kompatibilis: így lehetséges, hogy a programnak mind eljárási, mind objektum-orientált része van, mert a program eljárási folyamata bármikor képes példányt létrehozni egy osztályról majd hívja meg az imént létrehozott objektum metódusait.

Példák az ABAP programokra

A nagy klasszikus:

REPORT Z_XX_TRANSACTION. * * -- Commentaire de ligne * PARAMETERS p_input TYPE c LENGTH 16 DEFAULT 'Hello World!'. * *-- Affichage du résultat : * WRITE: / 'L''entrée était : ', p_input. Egy gyakoribb példa az adatbázis kereséssel: REPORT Z_XX_TRANSACTION. * * -- Déclaration de données * TABLES: tstc. "Tables des transactions * Tables internes pour lexemple DATA : "Transactions gt_tstc TYPE TABLE OF tstc, gs_tstc TYPE tstc, "Descriptions de transactions gt_tstct TYPE TABLE OF tstct, gs_tstct TYPE tstct. * " -- Début de la déclaration de l'écran de sélection SELECT-OPTIONS s_tcode FOR tstc-tcode OBLIGATORY. * * *------------------ START-OF-SELECTION. " -- Début de l'extraction des données *------------------ CLEAR: gt_tstc, gt_tstct. SELECT FROM tstc FIELDS * WHERE tcode IN @s_tcode INTO TABLE @gt_tstc. IF sy-subrc IS INITIAL. " Si la sélection s'est bien passée SORT gt_tstc BY tcode. " On trie la table par nom de transaction (facultatif) * SELECT FROM tstct FIELDS * FOR ALL ENTRIES IN @gt_tstc WHERE tcode = @gt_tstc-tcode AND sprsl = @sy-langu INTO TABLE @gt_tstct. IF sy-subrc IS INITIAL. SORT gt_tstct BY tcode. " On trie la table par nom de transaction " (obligatoire pour lecture dichotomique plus bas) ENDIF. ENDIF. * * *------------ TOP-OF-PAGE. *------------ " -- Haut de page (sur chaque page) WRITE / 'Programme exemple : liste de transactions '. SKIP. "Saut de ligne ULINE. "Ligne continue horizontal * * *------------ END-OF-PAGE. *------------ " -- Bas de page (sur chaque page) ULINE. * * *----------------- END-OF-SELECTION. "Traitement des données après sélection *----------------- LOOP AT gt_tstc INTO gs_tstc. "Boucle sur les transactions " Recherche de la description READ TABLE gt_tstct WITH KEY tcode = gs_tstc-tcode INTO gs_tstct BINARY SEARCH. "Lecture dichotomique ⇒ meilleure performance IF NOT sy-subrc IS INITIAL. " Erreur WRITE : / "Saut de ligne sy-vline, "Barre verticale gs_tstc-tcode, sy-vline, "Code puis barre (25) '-- Pas de description --', "Largeur du texte spécifiée sy-vline. "Barre verticale ELSE. WRITE : / "Saut de ligne sy-vline, "Barre verticale gs_tstc-tcode, sy-vline, "Code puis barre (25) gs_tstct-ttext, "Description sur 25 caractères sy-vline. "Barre verticale ENDIF. ENDLOOP.

A kiválasztási képernyő ad:

Képernyő kiválasztási vizsga ABAP.PNG

És az eredményért:

Eredménypélda ABAP.PNG

 

Megjegyzések és hivatkozások

  1. "  Könyvtanulás programozni az ABAP-val - Az SAP fejlesztésének alapjai (gyakorlatokkal és válaszokkal)  " , a www.editions-eni.fr oldalon (hozzáférés : 2020. szeptember 22. )

Lásd is

Kapcsolódó cikk

SAP (szoftvercsomag)

Külső linkek

  • SAP fejlesztői hálózat
  • PHP / SAPRFC interfész Web / PHP alkalmazások SAP- tal való összekapcsolására és BAPI-k, távoli futtatható funkciómodulok végrehajtására szolgál
  • sapetabap Az ABAP-nak szentelt tudásbázis francia nyelven
  • www.ecir.fr az ABAP programozási módszereinek fejlesztésére kifejlesztett megoldás, az ABAP verziójától vagy az alkalmazott SAP megoldástól függetlenül (ABAP motor szükséges)