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.

  • 📚 Põhidefinitsioon: ABAP-sõnastik on metaandmete keskne salvestuskoht, mis kirjeldab, kuidas iga välja, tabelit ja vaadet defineeritakse ja taaskasutatakse kogu andmebaasis. SAP süsteemi.
  • 🧱 Kolm korduvkasutatavat taset: Domeenid sisaldavad tehnilisi atribuute, andmeelemendid lisavad semantilist tähendust ja tabelid või struktuurid koondavad need elemendid kirjeteks.
  • 🔗 Koondatud objektid: Vaated ühendavad andmeid mitmest tabelist, otsing aitab sisestamist ja lukustusobjektid kaitsevad kirjeid samaaegse juurdepääsu ajal.
  • 🔒 Lukustusmehhanism: Funktsioonimoodulid ENQUEUE ja DEQUEUE genereeritakse lukustusobjektidest ning need peavad pärast töötlemist alati lukustuse vabastama.
  • 🛠️ Loomise töövoog: Tehing SE11 loob läbipaistvad tabelid, määratledes väljad, edastusklassi, tehnilised sätted ja seejärel objekti aktiveerides.
  • 🧭 Peamised tehingud: SE11, SE13, SE14, SE16 ja SM30 hõlmavad definitsiooni, tehnilisi sätteid, andmebaasi utiliite, andmete kuvamist ja hooldust.

SAP ABAP-i andmesõnastik SE11

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.

ABAP andmesõnastik

Ü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:

  1. Domeenid
  2. Andmeelemendid
  3. 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)

Sõnastik: Kuva domeenid

Ü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)

Sõnastik: kuva andmeelemendid

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.

Sõnastik: Kuva tabelid

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.

Sõnastik: kuvastruktuurid

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.

  1. views
  2. Otsi Abi
  3. 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

Sõnastik: Kuvavaated

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

Sõnastik: Kuva otsingu abi

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

Sõnastik: Kuva lukustusobjektid

⚠️ 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.

  1. Avatud SE11: Sisestage tehing SE11, valige Andmebaasi tabel raadionuppu, tippige kliendi nimeruumi nimi (algab Z- või Y-tähega) ja valige Looma.
  2. 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.
  3. Määrake hoolduse atribuut: Vali Väljapanek/hooldus lubatud seega saab hooldusvaate hiljem genereerida SE55 või SM30 abil.
  4. 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.
  5. 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.
  6. 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

KKK

SE11 haldab sõnastikuobjekti definitsiooni, näiteks tabeli välju ja võtmeid. SE16 kuvab ja filtreerib selles tabelis talletatud andmeridu. Üks haldab metaandmeid, teine ​​kirjeid.

Jah. Andmeelement saab domeenile viitamise asemel võtta otse eelnevalt määratletud tüübi. Domeeni kasutamine on siiski soovitatav, kuna see tsentraliseerib väärtusvahemiku ja võimaldab ühel muudatusel jõuda iga väljani, mis seda kasutab.

Läbipaistval tabelil on üks-ühele vaste füüsilise andmebaasi tabeliga. Ühistabel jagab ühte andmebaasi tabelit paljude väikeste sõnastikutabelitega, seega saab seda lugeda ainult Open SQL-iga, mitte kunagi natiivse SQL-iga.

Tehisintellekti assistendid, näiteks SAP ABAP-i arendustööriistade Joule'i ja koodi assistendid pakuvad välja väljanimesid, pakuvad uue tabeli jaoks andmeelemente, selgitavad harjumatuid standardtabeleid ja märgistavad puuduvad võõrvõtmed enne objekti aktiveerimist.

Tehisintellekt saab küll väljade loendi, andmetüübid ja nimed koostada, kuid definitsiooni peab arendaja ikkagi üle vaatama ja aktiveerima. Tarneklass, tehnilised sätted ja võõrvõtmed vajavad enne edastamist inimese poolt valideerimist.

Võta see postitus kokku järgmiselt: