SAP ABAP adatszótár (SE11)

⚡ Okos összefoglaló

SAP Az ABAP Data Dictionary (SE11) központosítja az összes metaadat-definíciót, amelyet az SAP alkalmazások. Ez az oldal ismerteti a három újrafelhasználható szintet – tartományok, adatelemek és táblázatok –, valamint az olyan összesített objektumokat, mint a nézetek, keresési súgók és zárolási objektumok.

  • ???? Alapvető definíció: Az ABAP szótár a metaadatok központi tárolója, amely leírja, hogyan definiálódnak és hasznosulnak újra minden mező, tábla és nézet a rendszerben. SAP rendszer.
  • 🧱 Három újrafelhasználható szint: A tartományok technikai attribútumokat tartalmaznak, az adatelemek szemantikai jelentést adnak hozzá, a táblázatok vagy struktúrák pedig ezeket az elemeket rekordokká állítják össze.
  • 🔗 Összesített objektumok: A nézetek több tábla adatait kombinálják, a keresés segíti a bevitelt, a zárolt objektumok pedig védik a rekordokat egyidejű hozzáférés esetén.
  • 🔒 Zárási mechanizmus: Az ENQUEUE és DEQUEUE függvénymodulok zárolási objektumokból generálódnak, és a feldolgozás után mindig fel kell oldaniuk a zárolást.
  • 🇧🇷 Létrehozási munkafolyamat: Az SE11 tranzakció transzparens táblázatokat hoz létre mezők, kézbesítési osztály, technikai beállítások definiálásával, majd az objektum aktiválásával.
  • 🧭 Főbb tranzakciók: Az SE11, SE13, SE14, SE16 és SM30 lefedési definícióját, technikai beállításait, adatbázis-segédprogramjait, adatmegjelenítését és karbantartását tartalmazza.

SAP ABAP adatszótár SE11

Mi az a Data Dictionary?

A Data Dictionary az információkezelő rendszerben található adatok központi információforrása. Fő funkciója az adatdefiníciók (vagy „metaadatok”) létrehozásának és kezelésének támogatása.

In SAPEzt a központi tárolót ABAP szótárnak nevezik, és az SE11 tranzakcióval tartják karban. Az ABAP program által használt összes táblát, mezőt, nézetet és zárolást egyszer írják le itt, majd mindenhol újra felhasználják, így a definíciót soha nem kell megismételni az egyes programokon belül.

ABAP adatszótár

A fenti képernyő az SE11 kezdőképernyőjét mutatja, ahol minden szótár objektumtípus ki van választva a megjelenítés vagy módosítás előtt. Mielőtt megnéznénk ezeket az objektumtípusokat, segít megérteni, hogy miért SAP ezeket a metaadatokat a használó programokon kívül tartja.

Miért fontos az ABAP szótár?

Az ABAP szótár azért létezik, mert SAP elválasztja az adatok leírását a feldolgozó programoktól. Egy mező, például a beszerzési bizonylat száma, pontosan egyszer kerül leírásra, és minden jelentés, képernyő és függvénymodul, amelynek szüksége van rá, erre az egyetlen leírásra hivatkozik.

Ez a központi definíció négy gyakorlati előnnyel jár. A konzisztencia garantált, mivel egy tartományon végrehajtott módosítás azonnal elér minden olyan mezőt, amely egy adatelemen keresztül hivatkozik rá. A redundancia megszűnik, mivel a fejlesztők újra felhasználják a meglévő definíciókat ahelyett, hogy újakat találnának ki. Integrity védett, mivel az értéktartományokat, ellenőrző táblákat és idegen kulcsokat a szótár, nem pedig az alkalmazáskód ellenőrzi. Végül a szótár adatbázis-független, így az SE11-ben definiált tábla automatikusan létrejön az alapul szolgáló adatbázisban a megfelelő natív típusokkal.

A szótár futásidőben is aktív. A képernyők közvetlenül belőle olvassák be a mezőcímkéket, a súgószövegeket és az értéktartományokat, ezért jelenik meg egy F1 súgó vagy egy F4 értéklista egyetlen sornyi extra kód nélkül. Az alábbi három szint megértése elmagyarázza, hogyan szerveződik ez az újrafelhasználás.

ABAP szótár 3 szint

Az ABAP szótár objektumai három szinten helyezkedtek el, amelyek támogatják újrafelhasználhatóságukat. Ezek a szintek a következők:

  1. Domains
  2. Adatelemek
  3. Táblázatok és szerkezetek

Minden szint az előzőre épül: egy tartomány biztosítja a technikai attribútumokat, egy adatelem üzleti jelentést ad ezeknek az attribútumoknak, és egy tábla vagy struktúra egy rekordba csoportosítja az adatelemeket. Nézzük meg őket részletesebben –

Domains

  • Egy táblázatmező műszaki jellemzőit írja le
  • Meghatároz egy értéktartományt, amely leírja a mezők megengedett adatértékeit
  • Az azonos tartományra hivatkozó mezők (a hozzájuk rendelt adatelemeken keresztül) a tartomány módosításakor módosulnak
  • Konzisztenciát biztosít

Volt. Beszerzési bizonylat száma (EBELN)

Szótár: Display Domains

A fenti tartományképernyő csak az adattípust és -hosszúságot definiálja. Az érték üzleti jelentését a következő szint, az adatelem adja meg.

Adatelemek

  • Leírja egy szakterület szerepét technikai kontextusban
  • Az azonos szemantikai jelentésű mezők ugyanarra az adatelemre vonatkozhatnak
  • A mező információkat tartalmazza

Volt. Beszerzési bizonylat száma (EBELN)

Szótár: Adatelemek megjelenítése

Az adatelemek képernyője tartalmazza a mezőcímkéket és a dokumentációt, amelyeket a felhasználók a képernyőn látnak. Az adatelemek ezután táblázatokba vannak kombinálva.

Asztalok

  • Jelenítse meg azokat az adatbázistáblákat, amelyekben az adatok ténylegesen találhatók.
  • A táblák az ABAP szótárban az adatbázistól függetlenül definiálhatók.
  • A táblázat mezői a hozzájuk tartozó (adatbázis-független) SAP ABAP adattípusok és hossza.

Szótár: Display Tables

Struktúrák

  • Olyan rekorddeklarációk, amelyek NEM felelnek meg egy adatbázistáblázatnak.
  • Csakúgy, mint a felhasználó által meghatározott adattípus.
  • Táblázatként definiálva, majd ABAP programokból címezhető.
  • A struktúrák csak a program futási ideje alatt tartalmaznak adatokat.

Szótár: Megjelenítési struktúrák

Az alábbi táblázat áttekintést nyújt a három szint összehasonlításáról.

Szintek Amit meghatároz Adatokat tárol? Tipikus példa
Domén Technikai attribútumok: adattípus, hossz, értéktartomány Nem EBELN (10. FEJEZET)
Adatelem Szemantikai jelentés: mezőcímkék, dokumentáció, F1 súgó Nem EBELN — Beszerzési dokumentum száma
Táblázat Az adatbázisban létrehozott mezőrekord Igen, kitartóan EKKO — Beszerzési dokumentum fejléc
Szerkezet Egy programon belül használt mezők rekordja Igen, csak futásidőben Munkaterület egy belső asztal

Az ABAP szótár összesített objektumai

Aggregált eszközök, amelyek több összetevőből állnak. Az ABAP szótárban az összesített objektumok olyan objektumok, amelyek több különböző átlátszó táblából származnak.

  1. Nézetek
  2. Keresés a súgóban
  3. Objektumok zárolása

Nézzük meg őket részletesen

Nézetek

  • Megtekintések SAP – Az ABAP-ot több táblázat között elosztott adatok összegzésére használják
  • A nézet adatait fizikailag nem tárolják. Ehelyett egy nézet adatai egy vagy több másik táblából származnak
  • Egy adott alkalmazás igényeihez van szabva

Szótár: Display Views

Keresés a súgóban

  • A keresési súgó egy olyan eszköz, amely segít az adatrekordok keresésében a rendszerben
  • Egy hatékony és felhasználóbarát keresés segíti a felhasználókat ott, ahol egy rekord kulcsa ismeretlen

Szótár: Display Search Help

Objektumok zárolása

  • Ugyanazon adatrekord két felhasználó egyidejű elérése a SAP a rendszert egy zármechanizmus szinkronizálja.
  • A zárak beállítása és feloldása bizonyos funkciómodulok meghívásával történik. Ezek a funkciómodulok automatikusan generálódnak az ABAP/4 szótárban lévő úgynevezett zárobjektumok definíciójából

Funkciómodulok : Enqueue_ – az asztali sor zárolásához_ – a zár kioldásához

Szótár: Display Lock Objects

⚠️ Figyelmeztetés: Az ENQUEUE paranccsal beállított és a DEQUEUE paranccsal soha fel nem oldott zárolás a felhasználói munkamenet végéig aktív marad. Mindig hívja meg a DEQUEUE modult, beleértve a program hibaútvonalát is.

Miután megértettük az objektumtípusokat, a következő szakasz egy átlátható táblázat létrehozásával alkalmazza azokat az SE11-ben.

Hogyan hozzunk létre egy átlátszó táblázatot az SE11-ben

Az átlátszó tábla a leggyakoribb szótárobjektum, mivel egy az egyhez kapcsolatban áll az adatbázisban található fizikai táblával. Az alábbi lépések egyet a nulláról hoznak létre.

  1. Nyitva SE11: Írja be az SE11 tranzakciót, válassza ki a Adatbázis tábla választógombra, írjon be egy nevet az ügyfél névterébe (Z vagy Y betűvel kezdődően), és válassza a Teremt.
  2. Adja meg a rövid leírást és a szállítási osztályt: A Attribútumok lapon adjon meg egy rövid szöveget, és állítsa be a kézbesítési osztályt, amely megmondja SAP hogyan viselkednek az adatok egy kliensmásolat vagy frissítés során. Az A kézbesítési osztályt az alkalmazásadatokhoz, a C osztályt pedig az adatok testreszabásához használják.
  3. Állítsa be a karbantartási attribútumot: A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Kiállítás/karbantartás engedélyezett így később karbantartási nézet generálható SE55 vagy SM30 segítségével.
  4. Definiálja a mezőket: A Fields lapon adja hozzá az MANDT-t első kulcsmezőként az MANDT adatelemmel, majd adja hozzá az üzleti kulcsmezőket. Minden mezőt egy adatelem típusoz, amely viszont egy tartományra hivatkozik, így a korábban leírt három szintet újra felhasználjuk, nem pedig újradefiniáljuk.
  5. Műszaki beállítások karbantartása: Kattints Technikai beállítások (SE13 tranzakció) és állítsa be az adatosztályt, például APPL0 a törzsadatokhoz, a várható méretkategóriával együtt. Ezek az értékek határozzák meg a táblaterületet és a kezdeti méretet az adatbázisban.
  6. Aktiválja: Sajtó AktiváljaAz aktiválás létrehozza a fizikai táblát az adatbázisban, és használhatóvá teszi a definíciót az ABAP programokban.

💡 Tipp: Hozz létre idegen kulcsokat minden olyan mezőhöz, amelyet egy ellenőrzőtábla alapján kell validálni. A szótár ezután automatikusan kikényszeríti a kapcsolatot, és nincs szükség validációs kódra a programon belül.

Miután a tábla aktív, közvetlenül megcímezhető egy ABAP programból a következővel: Nyílt SQLAz alábbi példa beolvassa a SCARR szabványos szótártáblát egy belső táblába, és listázza annak tartalmát.

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.

Mivel a belső tábla TYPE STANDARD TABLE OF scarr típussal van tipizálva, minden mezőhossz és adattípus a szótárból származik. Ha a tábla definíciója megváltozik, a program az aktiválás után szerkesztés nélkül rögzíti a változást.

Alapvető ABAP szótár tranzakció Codes

A következő tranzakciók a szótárobjektumok definiálásának, ellenőrzésének és karbantartásának napi munkáját fedik le.

tranzakció Cél
SE11 Adatszótár kezdőképernyője (csak SE12 kijelző)
SE13 ABAP szótár: Technikai beállítások
SE14 Adatbázis segédprogram
SE15 Adattári Információs Rendszer
SE16 Adatböngésző
SE17 Általános asztali megjelenítés
SE55 Táblázat nézet karbantartása
SM30 Asztalkarbantartás

GYIK

Az SE11 egy szótárobjektum definícióját kezeli, például egy tábla mezőit és kulcsait. Az SE16 megjeleníti és szűri a táblában tárolt adatsorokat. Az egyik a metaadatokat, a másik a rekordokat kezeli.

Igen. Egy adatelem közvetlenül is felvehet egy előre definiált típust ahelyett, hogy egy tartományra hivatkozna. A tartomány továbbra is ajánlott, mert központosítja az értéktartományt, és lehetővé teszi, hogy egy módosítás elérje az azt használó összes mezőt.

Egy átlátszó tábla egyértelmű egyezést mutat egy fizikai adatbázistáblával. Egy poolozott tábla egy adatbázistáblát oszt meg sok kis szótártáblával, így csak Open SQL-lel olvasható, soha natív SQL-lel.

A mesterséges intelligencia asszisztensei, mint például SAP Az ABAP fejlesztőeszközök Joule- és kódasszisztensei mezőneveket javasolnak, adatelemeket javasolnak egy új táblához, elmagyarázzák az ismeretlen szabványos táblákat, és megjelölik a hiányzó idegen kulcsokat az objektum aktiválása előtt.

A mesterséges intelligencia elkészítheti a mezőlistát, az adattípusokat és az elnevezéseket, de a definíciót továbbra is egy fejlesztőnek kell felülvizsgálnia és aktiválnia. A kézbesítési osztályt, a technikai beállításokat és az idegen kulcsokat emberi validációnak kell alávetni a továbbítás előtt.

Foglald össze ezt a bejegyzést a következőképpen: