SAP-ABAP palaiko dviejų tipų programas - ataskaitų programas ir dialogo programas. Ataskaitų programos naudojamos, kai reikia rodyti didelius duomenų kiekius
Šioje pamokoje sužinosite:
- Pasirinkimo ekranas
- Įvykiai ABAP ataskaitų programoje
- Ataskaitos formatavimas
- Interaktyvus ataskaitų programavimas
- Loginės duomenų bazės
Ataskaitų programų tikslas / naudojimas
- Jie naudojami, kai prieš pateikiant reikia pasirinkti ir apdoroti duomenis iš daugybės lentelių
- Naudojamas, kai ataskaitoms reikalingas specialus formatas
- Naudojama, kai ataskaitą reikia atsisiųsti iš SAP į „Excel“ lapą, kad jis būtų paskirstytas.
- Naudojamas, kai ataskaita turi būti išsiųsta konkrečiam asmeniui.
Svarbūs pastabos apie ataskaitų programą
- Ataskaitos programos visada yra vykdomosios programos. Programos tipas visada yra 1.
- Kiekviena ataskaitų programa atitinka tam tikrą programos tipą, ty su pardavimais ir platinimu, FI-CO ir kt. Ji taip pat gali būti kryžminė programa, ty „*“.
- Ataskaitų programavimas yra įvykių valdomas programavimas.
- Pirmoji ataskaitos programos eilutė visada yra Ataskaita
. - Norėdami užkirsti kelią sąrašo antraštei ar programos pavadinimui, nenaudojamas standartinis puslapio antraštės priedas.
- Konkrečios ataskaitos eilutės dydį galima nustatyti naudojant papildomos eilutės dydį
. - Konkretaus puslapio eilučių skaičių galima nustatyti naudojant papildomą eilučių skaičių n (n1) . N yra puslapio eilučių skaičius, o N1 - puslapio poraštėje rezervuotų eilučių skaičius.
- Norėdami parodyti bet kokią informaciją ar klaidos pranešimą, prie programos pridedame pranešimų klasę naudodami priedą: Message-id
. Pranešimų klasės palaikomos SE91.
Ataskaitanėra standartinės puslapio antraštėseilutės dydis eilučių skaičius pranešimo ID .
Pasirinkimo ekranas
„Pasirinkimo ekranas“ yra ekranas, kuriame nurodomos įvesties reikšmės, kurioms programa turėtų veikti.
Pasirinkimo ekranas paprastai generuojamas iš
- Parametrai
- Pasirinkti-Parinktys
Sintaksė
Pasirinkimo ekranas ekrano pradžiabloko <#> pasirinkimo ekranas prasideda rėmelio pavadinimu …… bloko <#> pasirinkimo ekranaspasirinkimo ekranas ekrano pabaiga
Parametrai
Parametrai padeda dinamiškai pasirinkti. Jie gali talpinti tik vieną reikšmę vienam programos vykdymo ciklui.
Sintaksė Parametrų
apibrėžimas kaip duomenų tipas
Parametrai p_id (30) tipas c.
Apibrėžti parametrus, pvz., Lentelės lauką.
Parametras p_id kaip- .
Parametrai gali būti žymimieji langeliai ir radijo mygtukai.
Parametrai p_id kaip žymės langelis. Parametrai p_id1 radijo mygtukų grupė.Parametrai p_id2 radijo mygtukų grupė .
Parametrai gali būti sąrašo laukelyje.
Parametras p_id kaip- kaip sąrašo laukelis
Pasirinkimo parinktys
Pasirinkimo parinktis naudojama reikšmių diapazonui ar verčių rinkiniui įvesti į programos
sintaksę
Select-options s_vbeln už vbak-vbeln.
Taip pat galite apibrėžti pasirinkimo parinktį, pvz., Kintamąjį
„select-options s_vbeln“, skirtas „vbak-vbeln“, nėra intervalų be pratęsimo
Įvykiai ABAP ataskaitų programoje
„ABAP“ ataskaitų programos yra įvykių programos . Skirtingi ataskaitos programos įvykiai yra šie:
programos įkėlimas
- Suaktyvina susietą įvykį vidinėje sesijoje įkėlus 1, M, F arba S tipo programą.
- Kiekvieną programą ir vidinę sesiją taip pat paleidžia susietą apdorojimo bloką tik vieną kartą.
- Apdorojimo blokas „LOAD-OF-PROGRAM“ turi maždaug tą pačią funkciją 1, M, F arba S tipo ABAP programai, kaip ir konstruktorius ABAP objektų klasėms.
Inicijavimas.
- Šis įvykis vykdomas prieš parodant pasirinkimo ekraną.
- Visų verčių inicijavimas.
- Galite priskirti kitas vertes nei numatytosios pasirinkimo ekrane.
- Pasirinkimo ekraną galite užpildyti kai kuriomis reikšmėmis vykdymo metu.
Pasirinkimo ekrane.
- Įvykis apdorojamas, kai apdorojamas pasirinkimo ekranas (PAI pabaigoje).
- Čia atliekamas įvestų verčių tikrinimas ir tikrinimas
Pasirinkimo pradžia.
- Čia programa pradeda pasirinkti reikšmes iš lentelių.
Pasirinkimo pabaiga.
- Pasirinkus visus duomenis, šis įvykis įrašo duomenis į ekraną.
Interaktyvūs renginiai
- Naudojamas interaktyviems pranešimams. Jis naudojamas norint sukurti išsamų sąrašą iš pagrindinio sąrašo.
Ataskaitos formatavimas
ABAP leidžia suformatuoti ataskaitas taip, kaip nori vartotojas. Pavyzdžiui, „Alternatyvios linijos“ turi būti pateiktos skirtingomis spalvomis, o „Totals“ eilutė turėtų būti geltona.
Sintaksė
Formatas Spalva nFormatas Spalva n Sustiprinta Įjungta
n gali atitikti įvairius skaičius.
Atkreipkite dėmesį, kad kartu su formatu yra ir kitų papildymų
FORMATAS SPALVA IŠJUNGTAS INTENSIFIKUOJAMAS IŠJUNGTAS KITAS IŠJUNGTAS KARŠTAS IŠJUNGTA IŠJUNGTA
Interaktyvus ataskaitų programavimas
- Naudodamiesi interaktyviuoju programavimu, vartotojai gali aktyviai kontroliuoti duomenų paiešką ir rodymą
- Naudojamas norint sukurti išsamų sąrašą iš labai paprasto sąrašo
- Išsamūs duomenys įrašomi į antrinį sąrašą.
- Antrinis sąrašas gali visiškai uždengti pirmąjį ekraną arba jį galima rodyti naujame ekrane
- The secondary lists can be themselves interactive.
- The first list may also call a transaction.
- There are different events associated with interactive programming.
Some commands used for interactive programming
HotspotIf one drags the mouse over the data displayed in the report the cursor changes to a Hand with an Outstretched Index finger. An hotspot can be achieved using the FORMAT statement.
Syntax: Format Hotspot On (Off).
HideThis command helps you to store the field names based on which one will be doing further processing to get a detailed list. It is written directly after the WRITE statement for a field. When a row is selected the values get automatically filled in the variables for further use.
Syntax: Hide.
Logical Databases
- Instead of using "Select" queries you can use logical database to retrieve data for a program.
- Logical databases are created by transaction SE36
- The name of a logical database can be up to 20 characters long. It may begin with a namespace prefix.
- The data is selected by another program and one can access the data using GET
command which places the data in the work area .
Advantages of a logical database over normal Select queries.
- It offers check conditions to see whether the input is correct, complete and plausible
- It contains central authorization checks for database access
- Enhancements such as improvement in performance immediately apply to all reports which use logical database.
Note: Due to the complexities involved, logical databases are not used in most of the cases