SAP ABAP andmesõnastik (SE11)
⚡ Nutikas kokkuvõte
SAP ABAP Data Dictionary (SE11) koondab kõik metaandmete definitsioonid, mida kasutab SAP rakendused. See leht selgitab kolme korduvkasutatavat taset – domeenid, andmeelemendid ja tabelid – ning koondatud objekte, näiteks vaateid, otsinguabisid ja lukustusobjekte.
Mis on andmesõnastik?
Andmesõnastik on teabehaldussüsteemi andmete keskne teabeallikas. Selle põhiülesanne on toetada andmedefinitsioonide (ehk metaandmete) loomist ja haldamist.
In SAPSeda keskset salvestusruumi nimetatakse ABAP-sõnastikuks ja seda hallatakse tehinguga SE11. Iga ABAP-programmi poolt kasutatav tabel, väli, vaade ja lukk kirjeldatakse siin üks kord ja seejärel kasutatakse neid kõikjal uuesti, seega ei pea definitsiooni üksikute programmide sees kunagi kordama.
Ülalolev ekraanipilt näitab SE11 algekraani, kus iga sõnastikuobjekti tüüp valitakse enne selle kuvamist või muutmist. Enne nende objektitüüpide vaatamist on kasulik mõista, miks SAP hoiab need metaandmed väljaspool programme, mis neid kasutavad.
Miks ABAP-sõnaraamat on oluline
ABAP-sõnaraamat on olemas, sest SAP eraldab andmete kirjelduse programmidest, mis seda töötlevad. Selline väli nagu ostudokumendi number kirjeldatakse täpselt üks kord ja iga aruanne, ekraan ja funktsioonimoodul, mis seda vajab, viitab sellele üksikule kirjeldusele.
See keskne definitsioon pakub nelja praktilist eelist. Järjepidevus on tagatud, sest domeenis tehtud muudatus jõuab koheselt iga väljani, mis sellele andmeelemendi kaudu viitab. Koondamine kaob, kuna arendajad taaskasutavad olemasolevaid definitsioone uute loomise asemel. Integrity on kaitstud, kuna väärtusvahemikud, kontrolltabelid ja võõrvõtmed valideeritakse sõnastiku, mitte rakenduskoodi abil. Lõpuks on sõnastik andmebaasist sõltumatu, seega luuakse SE11-s määratletud tabel alusandmebaasis automaatselt õigete natiivtüüpidega.
Sõnastik on aktiivne ka käitusajal. Ekraanid loevad oma väljade silte, abitekste ja väärtusvahemikke otse sellest, mistõttu kuvatakse F1 abi või F4 väärtuste loend ilma ühegi lisakoodireata. Allpool toodud kolme taseme mõistmine selgitab, kuidas see taaskasutamine on korraldatud.
ABAP sõnaraamat 3 taset
ABAP-sõnastiku objektid asusid kolmel tasandil, mis toetavad nende taaskasutatavust. Need tasemed on:
- Domeenid
- Andmeelemendid
- Tabelid ja struktuurid
Iga tase tugineb eelnevale: domeen annab tehnilised atribuudid, andmeelement annab neile atribuutidele ärilise tähenduse ja tabel või struktuur koondab andmeelemendid kirjeks. Vaatleme neid lähemalt –
Domeenid
- Kirjeldab tabelivälja tehnilisi omadusi
- Määrab väärtusvahemiku, mis kirjeldab väljade lubatud andmeväärtusi
- Samale domeenile viitavad väljad (nendele määratud andmeelementide kaudu) muutuvad, kui domeenis tehakse muudatus
- Tagab järjepidevuse
Nt Ostudokumendi number (EBELN)
Ülaltoodud domeeniekraan määratleb ainult andmetüübi ja pikkuse. Selle väärtuse ärilise tähenduse annab järgmine tase ehk andmeelement.
Andmeelemendid
- Kirjeldab valdkonna rolli tehnilises kontekstis
- Sama semantilise tähendusega väljad võivad viidata samale andmeelemendile
- Sisaldab välja teavet
Nt Ostudokumendi number (EBELN)
Andmeelementide ekraanil kuvatakse väljade silte ja dokumentatsiooni, mida kasutajad ekraanil näevad. Seejärel ühendatakse andmeelemendid tabeliteks.
Tabelid
- Esitage andmebaasitabelid, kus andmed tegelikult asuvad.
- Tabeleid saab määratleda ABAP-sõnastiku andmebaasist sõltumatult.
- Tabeli väljad on määratletud nendega (andmebaasist sõltumatud) SAP ABAP andmetüübid ja pikkused.
Struktuurid
- Kas kirjedeklaratsioonid, mis EI vasta andmebaasi tabelile.
- Täpselt nagu kasutaja määratud andmetüüp.
- Määratletakse nagu tabel ja seejärel saab seda ABAP-programmidest käsitleda.
- Struktuurid sisaldavad andmeid ainult programmi käitamise ajal.
Allolev tabel võrdleb kolme taset lühidalt.
| Tase | Mida see määratleb | Salvestab andmeid? | Tüüpiline näide |
|---|---|---|---|
| Domeen | Tehnilised atribuudid: andmetüüp, pikkus, väärtusvahemik | Ei | EBELN (TÜKK 10) |
| Andmeelement | Semantiline tähendus: väljasildid, dokumentatsioon, F1 abi | Ei | EBELN — ostudokumendi number |
| Tabel | Andmebaasis loodud väljade kirje | Jah, järjekindlalt | EKKO — Ostu dokumendi päis |
| struktuur | Ainult programmi sees kasutatavate väljade kirje | Jah, ainult käitusajal | Tööala sisemine laud |
ABAP-sõnastiku koondobjektid
Agregeeritud tähendab, mis koosneb mitmest komponendist. ABAP-sõnastikus on koondatud objektid objektid, mis pärinevad mitmest erinevast läbipaistvast tabelist.
- views
- Otsi Abi
- Objektide lukustamine
Vaatleme neid üksikasjalikult
views
- Vaated sisse SAP – ABAP-e kasutatakse mitme tabeli vahel jaotatud andmete kokkuvõtmiseks
- Vaate andmeid tegelikult füüsiliselt ei salvestata. Selle asemel saadakse vaate andmed ühest või mitmest muust tabelist
- See on kohandatud konkreetse rakenduse vajadustele
Otsi Abi
- Otsinguabi on tööriist, mis aitab teil otsida süsteemist andmekirjeid
- Tõhus ja kasutajasõbralik otsing abistab kasutajaid, kui kirje võtit pole teada
Objektide lukustamine
- Kahe kasutaja samaaegne juurdepääs samale andmekirjele SAP süsteem sünkroniseeritakse lukumehhanismi abil.
- Lukud seadistatakse ja vabastatakse teatud funktsioonimoodulite kutsumisega. Need funktsioonimoodulid genereeritakse automaatselt nn lukuobjektide definitsioonist ABAP/4 sõnastikus
Funktsioonimoodulid : Järjekord_ – lauajärjekorra lukustamiseks_ – luku vabastamiseks
⚠️ Hoiatus: Lukustus, mis on seatud ENQUEUE abil ja mida DEQUEUE abil kunagi ei vabastata, jääb aktiivseks kuni kasutaja seansi lõpuni. Kutsuge alati välja DEQUEUE moodul, sealhulgas programmi veateel.
Kui objektitüübid on selged, rakendab järgmine osa neid, luues SE11-s läbipaistva tabeli.
Kuidas luua SE11-s läbipaistev tabel
Läbipaistev tabel on kõige levinum sõnastikuobjekt, kuna sellel on üks-ühele seos andmebaasi füüsilise tabeliga. Alltoodud sammud loovad sellise tabeli nullist.
- Avatud SE11: Sisestage tehing SE11, valige Andmebaasi tabel raadionuppu, tippige kliendi nimeruumi nimi (algab Z- või Y-tähega) ja valige Looma.
- Sisestage lühike kirjeldus ja tarneklass: Kohta Näitajad vahekaardil lisage lühike tekst ja määrake edastusklass, mis ütleb SAP kuidas andmed kliendi koopia või uuendamise ajal käituvad. Rakendusandmete jaoks kasutatakse edastusklassi A ja andmete kohandamiseks klassi C.
- Määrake hoolduse atribuut: Vali Väljapanek/hooldus lubatud seega saab hooldusvaate hiljem genereerida SE55 või SM30 abil.
- Määrake väljad: Kohta Valdkonnad Lisage vahekaardil MANDT esimese võtmeväljana koos andmeelemendiga MANDT ja seejärel lisage ettevõtte võtmeväljad. Iga väli on tüpitud andmeelemendi järgi, mis omakorda viitab domeenile, seega eelnevalt kirjeldatud kolme taset taaskasutatakse, mitte ei defineerita ümber.
- Säilita tehnilised sätted: Click Tehnilised seaded (tehing SE13) ja määrake andmeklass, näiteks APPL0 põhiandmete jaoks, koos eeldatava suuruskategooriaga. Need väärtused määravad tabeliruumi ja algse suuruse andmebaasis.
- Aktiveeri: press ActivateAktiveerimine genereerib andmebaasis füüsilise tabeli ja muudab definitsiooni ABAP-programmides kasutatavaks.
💡 Näpunäide: Looge iga välja jaoks võõrvõtmed, mida tuleb kontrolltabeli abil valideerida. Seejärel jõustab sõnastik seose automaatselt ja programmi sees pole vaja valideerimiskoodi.
Kui tabel on aktiivne, saab seda ABAP-programmist otse käsitleda käsuga Avatud SQLAllolev näide loeb standardse sõnastikutabeli SCARR sisemisse tabelisse ja loetleb selle sisu.
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.
Kuna sisemine tabel on tüübiga TYPE STANDARD TABLE OF scarr, siis iga väljapikkus ja andmetüüp pärinevad sõnastikust. Kui tabeli definitsioon muutub, võtab programm muudatuse pärast aktiveerimist üle ilma igasuguste muudatusteta.
Oluline ABAP-sõnastiku tehing Codes
Järgmised tehingud hõlmavad sõnastikuobjektide määratlemise, kontrollimise ja haldamise igapäevast tööd.
| tehing | Eesmärk |
|---|---|
| SE11 | Andmesõnastiku avakuva (ainult SE12 ekraan) |
| SE13 | ABAP-sõnastik: tehnilised sätted |
| SE14 | Andmebaasi utiliit |
| SE15 | Hoidla infosüsteem |
| SE16 | Andmebrauser |
| SE17 | Üldine lauakujundus |
| SE55 | Tabelivaate hooldus |
| SM30 | Laua hooldus |









