Výkazy ALV v príručke SAP - Prehliadač zoznamov ABAP

Obsah:

Anonim

Bežnými požadovanými vlastnosťami každej správy sú „zarovnanie stĺpca“, triedenie, filtrovanie, medzisúčty, súčty atď. Na ich implementáciu od začiatku je potrebné vynaložiť veľa úsilia v oblasti kódovania. Aby sme sa vyhli tomu, že môžeme použiť koncept s názvom ABAP List Viewer (ALV).

V tomto návode sa dozviete:

  • Jednoduchý prehľad
  • Blokovať správu
  • Hierarchické správy
  • Varianty zobrazenia

Každá z týchto správ poskytuje funkčné moduly, ktoré pomáhajú pri produkcii požadovaného výstupu bez veľkého úsilia. Pozrime sa na ne podrobne -

Jednoduchý prehľad

Dôležitými funkčnými modulmi v tejto správe sú -

  • Reuse_alv_fieldcatalog_merge
  • Reuse_alv_list_display
  • Reuse_alv_events_get
  • Reuse_alv_grid_display
  • Reuse_alv_commentary_write

REUSE_ALV_FIELDCATALOG_MERGE
Tento funkčný modul sa používa na vyplnenie katalógu polí, ktorý je nevyhnutný na zobrazenie údajov v ALV.
Ak sú výstupné údaje z jednej slovníkovej tabuľky a sú vybrané všetky stĺpce, nemusíme výlučne vytvárať katalóg polí. Stačí spomenúť názov tabuľky ako parameter (I_structure_name) v REUSE_ALV_LIST_DISPLAY. Ale v iných prípadoch to musíme vytvoriť.
Poznámka: Fieldcatalog je možné vyplniť ručne aj vyplnením všetkých požadovaných údajov do internej tabuľky.
Dôležitými parametrami sú:
1. Export:

  • I_program_name: ID hlásenia
  • I_internal_tabname: interná výstupná tabuľka
  • I_inclname: zahrnúť alebo názov zostavy, kde sa spracúvajú všetky dynamické formuláre.

2. Meniace sa

  • ct_fieldcat: interná tabuľka typu SLIS_T_FIELDCAT_ALV, ktorá je deklarovaná v skupine typov SLIS.

REUSE_ALV_LIST_DISPLAY
Toto je funkčný modul, ktorý tlačí dáta.
Dôležité parametre sú:
1. Export:

  • I_callback_program: id hlásenia
  • I_bypassing_buffer: 'X'
  • I_buffer_active: ''
  • I_callback_pf_status_set: rutina, pri ktorej môže užívateľ nastaviť svoj vlastný stav pf alebo zmeniť funkčnosť existujúceho stavu pf.
  • I_callback_user_command: rutina, kde sa spracúvajú kódy funkcií.
  • I_structure name: názov tabuľky slovníka
  • Is_Layout: štruktúra na nastavenie rozloženia správy
  • It_fieldcat: interná tabuľka so zoznamom všetkých polí a ich atribútov, ktoré sa majú vytlačiť (túto tabuľku je možné automaticky vyplniť funkciou)
  • It_events: interná tabuľka so zoznamom všetkých možných udalostí ALV a ich zodpovedajúcich názvov formulárov.

2. Tabuľky:

  • a. t_outtab: interná tabuľka s údajmi, ktoré sa majú odoslať

REUSE_ALV_EVENTS_GET:
Vráti tabuľku možných udalostí pre typ zoznamu typu
1. Import:
Et_Events: Tabuľka udalostí sa vráti so všetkými možnými udalosťami CALLBACK pre zadaný typ zoznamu (stĺpec 'NAME'). Ak chcete, aby udalosti spracovávali spätné volanie, musí byť vyplnené ich pole „FORMULÁR“. Ak je pole inicializované, udalosť sa ignoruje. Záznam je možné prečítať z tabuľky udalostí, vyplniť pole „FORMULÁR“ a záznam upraviť pomocou konštánt z fondu typov SLIS.
2. Export:
I_list_type: 0 = jednoduchý zoznam REUSE_ALV_LIST_DISPLAY
1 = hierarchicko-sekvenčný zoznam REUSE_ALV_HIERSEQ_LIST_DISPLAY
2 = jednoduchý zoznam blokov REUSE_ALV_BLOCK_LIST_APPEND
3 = hierarchicko-sekvenčný zoznam blokov REUSE_ALV_B_OCK_LIST_L_ST
REUSE_ALV_GRID_DISPLAY
Nová funkcia od verzie ABAP4.6, ktorá zobrazuje výsledky v mriežke a nie v náhľade.
Parametre: rovnaké ako reuse_alv_list_display

Poznámka: Mriežka nedokáže spracovať veľké objemy. Funkcie ako triedenie a posúvanie nadol spotrebujú veľa zdrojov / času, ak je objem zobrazovaných údajov vysoký. Neexistuje jednoznačná definícia, že ak je objem dát X, choďte na zoznam alebo mriežku, ale vývojár musí prijať hovor na základe svojich skúseností. Ak si nie ste istí, potom je lepšou voľbou zoznam

REUSE_ALV_COMMENTARY_WRITE
Používa sa v udalosti Horná časť stránky na tlač nadpisov a iných komentárov k zoznamu.
Dôležité parametre

  • It_list_commentary: Interná tabuľka s nadpismi typu slis_t_listheader.

Táto interná tabuľka má tri polia:

  1. Typ: „H“ - hlavička, „S“ - výber, „A“ - akcia
  2. Kľúč: iba ak je typ „S“.
  3. Info: text, ktorý sa má vytlačiť

Blokovať správu

Vyzerá to ako jednoduchá zostava, ale táto zostava má iba vlastnosti triedenia a filtrovania. Táto zostava sa používa, ak na výstupe musíte zobraziť viac ako jednu zostavu. Technicky vzaté, ak máte viac interných tabuliek s údajmi, ktoré sa majú zobrazovať ako samostatné bloky, ideme na správu bloku o ALV.
Pri vytváraní tohto prehľadu sa používajú tieto dôležité funkcie:

  • REUSE_ALV_BLOCK_LIST_INIT
  • REUSE_ALV_BLOCK_LIST_APPEND
  • REUSE_ALV_BLOCK_LIST_DISPLAY

REUSE_ALV_BLOCK_LIST_INIT
Tento funkčný modul sa používa na nastavenie predvoleného stavu gui atď. Parametre sú podobné tým, ktoré sa používajú v reuse_alv_list_display alebo reuse_alv_grid_display
REUSE_ALV_BLOCK_LIST_APPEND
Tento funkčný modul pridáva údaje do bloku.
Dôležité parametre 1.
Export:

  • is_layout: nastavenie rozloženia pre blok
  • it_fieldcat: katalóg polí
  • I_tabname: interný názov tabuľky so všetkými možnými udalosťami

2. Tabuľky:

  • t_outtab: interná tabuľka s výstupnými údajmi.

REUSE_ALV_BLOCK_LIST_DISPLAY
Tento funkčný modul zobrazuje zoznam s údajmi pripojenými k vyššie uvedenej funkcii.
Parametre: Všetky parametre sú voliteľné.

Hierarchické správy

Hierarchické zobrazenie sa používa na zobrazenie údajov, ktoré súvisia. Rovnako ako objednávka odberateľa a podrobnosti o položke. Tu môžu byť podrobnosťami zákazky odberateľa údaje hlavičky, zatiaľ čo ich položkami v zákazke odberateľa môžu byť údaje o položke
. Funkčný modul, ktorý sa na to používa, je
REUSE_ALV_HIERSEQ_LIST_DISPLAY
Export:

  • I_CALLBACK_PROGRAM
  • I_CALLBACK_PF_STATUS_SET
  • I_CALLBACK_USER_COMMAND
  • IS_LAYOUT
  • It_fieldcat
  • Udalosti
  • I_tabname_header: Názov internej tabuľky v programe obsahujúcej výstupné údaje najvyššej úrovne hierarchie.
  • I_tabname_item: Názov internej tabuľky v programe obsahujúcej výstupné údaje najnižšej úrovne hierarchie.
  • Is_keyinfo: Táto štruktúra obsahuje názvy polí hlavičiek a tabuliek položiek, ktoré spájajú tieto dve tabuľky (zdieľaný kľúč).

Tabuľky

  • t_outtab_header: Tabuľka hlavičiek s údajmi, ktoré sa majú odoslať
  • t_outtab_item: Názov internej tabuľky v programe obsahujúcej výstupné dáta najnižšej úrovne hierarchie.

Všetky definície interných tabuliek, štruktúr a konštánt sú deklarované v typovej oblasti nazvanej SLIS. Túto internú tabuľku je možné vyplniť automaticky pomocou príkazu REUSE_ALV_FIELDCATALOG_MERGE '.

Varianty zobrazenia

  • Varianty zobrazenia sa používajú na nastavenie predvolených vlastností výstupu alv, ako sú kritériá triedenia, kritériá filtrovania, sčítanie a medzisúčet atď.
  • Varianty displeja môžu byť špecifické pre používateľa a štandardné (štandardné varianty môže použiť ktorýkoľvek používateľ)
  • Druh variantov zobrazenia, ktoré je možné uložiť, sa riadi parametrom i_save, ktorý sa odovzdáva do funkčných modulov reuse_alv_list_display / reuse_alv_grid_display
  • Na obrazovke výberu môžete poskytnúť voľbu na výber toho, ktorý variant zobrazenia sa má použiť

Spoločné funkčné moduly súvisiace s výberom / overením variantov displeja sú

  1. Reuse_alv_variant_default_get
  2. Reuse_alv_variant_f4
  3. Reuse_alv_variant_existence

To je všetko k programovaniu ABAP-ALV!