SAP ABAP podatkovni rječnik (SE11)
⚡ Pametni sažetak
SAP ABAP rječnik podataka (SE11) centralizira svaku definiciju metapodataka koju koristi SAP aplikacije. Ova stranica objašnjava tri razine koje se mogu ponovno koristiti - domene, podatkovne elemente i tablice - plus agregirane objekte kao što su prikazi, pomoć pri pretraživanju i objekti zaključavanja.

Što je rječnik podataka?
Rječnik podataka središnji je izvor informacija za podatke u sustavu upravljanja informacijama. Njegova glavna funkcija je podrška stvaranju i upravljanju definicijama podataka (ili "metapodacima").
In SAP, ovo centralno spremište naziva se ABAP rječnik i održava se transakcijom SE11. Svaka tablica, polje, pogled i zaključavanje koje koristi ABAP program ovdje se opisuje jednom, a zatim se ponovno koristi svugdje, tako da se definicija nikada ne mora ponavljati unutar pojedinačnih programa.
Gornji zaslon prikazuje početni zaslon SE11, gdje se svaka vrsta objekta rječnika odabire prije nego što se prikaže ili promijeni. Prije nego što pogledamo te vrste objekata, korisno je razumjeti zašto SAP čuva ove metapodatke izvan programa koji ih koriste.
Zašto je ABAP rječnik važan
ABAP rječnik postoji jer SAP odvaja opis podataka od programa koji ih obrađuju. Polje poput broja dokumenta o kupnji opisuje se točno jednom, a svako izvješće, zaslon i funkcijski modul kojem je potreban upućuje na taj jedan opis.
Ova središnja definicija pruža četiri praktične prednosti. Konzistentnost je zajamčena jer promjena napravljena na domeni odmah dopire do svakog polja koje se na nju odnosi putem podatkovnog elementa. Redundancija nestaje jer programeri ponovno koriste postojeće definicije umjesto da izmišljaju nove. Integrity je zaštićen, jer se rasponi vrijednosti, tablice provjera i strani ključevi provjeravaju rječnikom, a ne aplikacijskim kodom. Konačno, rječnik je neovisan o bazi podataka, pa se tablica definirana u SE11 automatski stvara u temeljnoj bazi podataka s ispravnim izvornim tipovima.
Rječnik je također aktivan za vrijeme izvođenja. Zasloni izravno iz njega čitaju oznake polja, tekstove pomoći i raspone vrijednosti, zbog čega se pomoć za F1 ili popis vrijednosti za F4 pojavljuje bez ijednog retka dodatnog koda. Razumijevanje triju razina u nastavku objašnjava kako je organizirana ta ponovna upotreba.
ABAP rječnik 3 razine
Objekti u ABAP rječniku nalaze se na tri razine koje podržavaju njihovu ponovnu upotrebu. Ove razine su:
- Domene
- Elementi podataka
- Stolovi i strukture
Svaka razina nadovezuje se na prethodnu: domena osigurava tehničke atribute, podatkovni element daje tim atributima poslovno značenje, a tablica ili struktura grupira podatkovne elemente u zapis. Pogledajmo ih detaljnije –
Domene
- Opisuje tehničke karakteristike polja tablice
- Određuje raspon vrijednosti koji opisuje dopuštene vrijednosti podataka za polja
- Polja koja se odnose na istu domenu (putem podatkovnih elemenata koji su im dodijeljeni) mijenjaju se kada se izvrši promjena domene
- Osigurava dosljednost
npr. Broj dokumenta nabave (EBELN)
Gornji ekran domene definira samo tip podataka i duljinu. Poslovno značenje te vrijednosti daje sljedeća razina, element podataka.
Elementi podataka
- Opisuje ulogu polja u tehničkom kontekstu
- Polja istog semantičkog značenja mogu se odnositi na isti podatkovni element
- Sadrži informacije o polju
npr. Broj dokumenta nabave (EBELN)
Zaslon s podatkovnim elementima sadrži oznake polja i dokumentaciju koju korisnici vide na zaslonu. Podatkovni elementi se zatim kombiniraju u tablice.
Tablice
- Predstavljaju tablice baze podataka u kojima se podaci zapravo nalaze.
- Tablice se mogu definirati neovisno o bazi podataka u ABAP rječniku.
- Polja tablice definirana su svojim (neovisno o bazi podataka) SAP ABAP tipovi podataka i duljine.
Strukture
- Jesu deklaracije zapisa koje NE odgovaraju tablici baze podataka.
- Baš kao korisnički definirana vrsta podataka.
- Definirano kao tablica i tada se može adresirati iz ABAP programa.
- Strukture sadrže podatke samo tijekom izvođenja programa.
Donja tablica uspoređuje tri razine na prvi pogled.
| Nivo | Što definira | Pohranjuje podatke? | Tipičan primjer |
|---|---|---|---|
| Domena | Tehnički atributi: tip podataka, duljina, raspon vrijednosti | Ne | EBELN (ZNAK 10) |
| Element podataka | Semantičko značenje: oznake polja, dokumentacija, pomoć za F1 | Ne | EBELN — Broj dokumenta o kupnji |
| Stol | Zapis polja koji se kreira u bazi podataka | Da, uporno | EKKO — Zaglavlje dokumenta o nabavi |
| Struktura | Zapis polja koja se koriste samo unutar programa | Da, samo za vrijeme izvođenja | Radno područje za interni stol |
Agregirani objekti ABAP rječnika
Skupni znači koji se sastoji od nekoliko komponenti. U Rječniku ABAP, agregirani objekti su objekti koji dolaze iz nekoliko različitih transparentnih tablica.
- Posjeta
- Traži pomoć
- Zaključajte objekte
Pogledajmo ih detaljno
Posjeta
- Pogledi u SAP – ABAP se koriste za sažimanje podataka koji su raspoređeni među nekoliko tablica
- Podaci pogleda zapravo nisu fizički pohranjeni. Podaci pogleda se umjesto toga izvode iz jedne ili više drugih tablica
- Prilagođen je potrebama specifične primjene
Traži pomoć
- Pomoć za pretraživanje je alat koji vam pomaže u traženju zapisa podataka u sustavu
- Učinkovito i jednostavno pretraživanje pomaže korisnicima tamo gdje je ključ zapisa nepoznat
Zaključajte objekte
- Istovremeni pristup istom podatkovnom zapisu od strane dva korisnika u SAP sustav je sinkroniziran mehanizmom za zaključavanje.
- Brave se postavljaju i otpuštaju pozivanjem određenih funkcijskih modula. Ovi funkcijski moduli generiraju se automatski iz definicije takozvanih objekata zaključavanja u rječniku ABAP/4
Funkcijski moduli : Stavi u red_ – za zaključavanje tablice dequeue_ – za otpuštanje brave
⚠️ Upozorenje: Zaključavanje koje je postavljeno s ENQUEUE i nikada nije otpušteno s DEQUEUE ostaje aktivno do završetka korisničke sesije. Uvijek pozovite DEQUEUE modul, uključujući i putanju pogreške programa.
Nakon što smo razumjeli tipove objekata, sljedeći odjeljak ih primjenjuje stvaranjem transparentne tablice u SE11.
Kako stvoriti prozirnu tablicu u SE11
Transparentna tablica je najčešći objekt rječnika jer ima odnos jedan-na-jedan s fizičkom tablicom u bazi podataka. Koraci u nastavku omogućuju stvaranje jedne od nule.
- Otvori SE11: Unesite transakciju SE11, odaberite Tablica baze podataka radio gumb, upišite ime u imenski prostor kupca (počinje sa Z ili Y) i odaberite stvoriti.
- Unesite kratki opis i razred isporuke: Na Značajke karticu, dodajte kratki tekst i postavite klasu isporuke koja govori SAP kako se podaci ponašaju tijekom klijentske kopije ili nadogradnje. Klasa isporuke A koristi se za podatke aplikacije, a C se koristi za prilagođavanje podataka.
- Postavite atribut održavanja: Odaberite Dozvoljeno izlaganje/održavanje tako da se pregled održavanja kasnije može generirati pomoću SE55 ili SM30.
- Definirajte polja: Na Polja Tab, dodajte MANDT kao prvo ključno polje s podatkovnim elementom MANDT, a zatim dodajte ključna poslovna polja. Svako polje je tipizirano podatkovnim elementom, koji se pak odnosi na domenu, pa se tri ranije opisane razine ponovno koriste umjesto da se redefiniraju.
- Održavajte tehničke postavke: Kliknite Tehničke postavke (transakcija SE13) i postavite klasu podataka, na primjer APPL0 za glavne podatke, zajedno s očekivanom kategorijom veličine. Ove vrijednosti određuju tablični prostor i početnu veličinu u bazi podataka.
- Aktivirati: Press AktiviratiAktivacija generira fizičku tablicu u bazi podataka i čini definiciju upotrebljivom u ABAP programima.
💡 Savjet: Kreirajte strane ključeve za svako polje koje se mora provjeriti u odnosu na kontrolnu tablicu. Rječnik zatim automatski provodi odnos i nije potreban nikakav validacijski kod unutar programa.
Nakon što je tablica aktivna, može joj se pristupiti izravno iz ABAP programa pomoću Otvori SQLPrimjer u nastavku čita standardnu tablicu rječnika SCARR u internu tablicu i navodi njezin sadržaj.
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.
Budući da je interna tablica tipizirana s TYPE STANDARD TABLE OF scarr, svaka duljina polja i tip podataka dolaze iz rječnika. Ako se definicija tablice promijeni, program preuzima promjenu nakon aktivacije bez ikakvog uređivanja.
Bitna transakcija ABAP rječnika Codes
Sljedeće transakcije pokrivaju svakodnevni rad definiranja, provjere i održavanja objekata rječnika.
| transakcija | Svrha |
|---|---|
| SE11 | Početni zaslon rječnika podataka (samo za SE12 zaslon) |
| SE13 | ABAP rječnik: Tehničke postavke |
| SE14 | Uslužni program za bazu podataka |
| SE15 | Informacijski sustav repozitorija |
| SE16 | Preglednik podataka |
| SE17 | Opći prikaz stola |
| SE55 | Održavanje prikaza tablice |
| SM30 | Održavanje stola |








