Výkazy ALV v kurzu SAP - Prohlížeč seznamu ABAP

Obsah:

Anonim

Společnými požadovanými funkcemi každé zprávy jsou „zarovnání sloupců“, třídění, filtrování, mezisoučty, součty atd. Abychom je mohli implementovat úplně od začátku, je třeba vynaložit mnoho úsilí na kódování. Abychom tomu zabránili, můžeme použít koncept s názvem ABAP List Viewer (ALV).

V tomto výukovém programu se naučíte:

  • Jednoduchá zpráva
  • Blokovat zprávu
  • Hierarchické zprávy
  • Zobrazit varianty

Každá z těchto zpráv poskytuje funkční moduly, které pomáhají při vytváření požadovaného výstupu bez velkého úsilí. Pojďme se na ně podívat podrobně -

Jednoduchá zpráva

Důležité funkční moduly v této zprávě jsou -

  • 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 se používá k naplnění katalogu polí, který je nezbytný pro zobrazení dat v ALV.
Pokud jsou výstupní data z jedné tabulky slovníku a jsou vybrány všechny sloupce, nemusíme výhradně vytvářet katalog polí. Stačí zmínit název tabulky jako parametr (I_structure_name) v REUSE_ALV_LIST_DISPLAY. Ale v jiných případech to musíme vytvořit.
Poznámka: Fieldcatalog lze vyplnit ručně také vyplněním všech požadovaných údajů do interní tabulky.
Důležité parametry v:
1. Export:

  • I_program_name: ID sestavy
  • I_internal_tabname: interní výstupní tabulka
  • I_inclname: include nebo název sestavy, kde jsou zpracovávány všechny dynamické formuláře.

2. Měnící se

  • ct_fieldcat: interní tabulka s typem SLIS_T_FIELDCAT_ALV, která je deklarována ve fondu typů SLIS.

REUSE_ALV_LIST_DISPLAY
Toto je funkční modul, který tiskne data.
Důležité parametry jsou:
1. Export:

  • I_callback_program: ID sestavy
  • I_bypassing_buffer: 'X'
  • I_buffer_active: ''
  • I_callback_pf_status_set: rutina, kde může uživatel nastavit svůj vlastní stav pf nebo změnit funkčnost stávajícího stavu pf.
  • I_callback_user_command: rutina, kde jsou zpracovávány kódy funkcí.
  • I_structure name: název tabulky slovníku
  • Is_Layout: struktura pro nastavení rozložení sestavy
  • It_fieldcat: interní tabulka se seznamem všech polí a jejich atributů, které mají být vytištěny (tato tabulka může být automaticky vyplněna funkcí)
  • It_events: interní tabulka se seznamem všech možných událostí ALV a jejich odpovídajícími názvy formulářů.

2. Tabulky:

  • A. t_outtab: interní tabulka s daty, která mají být odeslána

REUSE_ALV_EVENTS_GET:
Vrátí tabulku možných událostí pro typ seznamu
1. Import:
Et_Events: Tabulka událostí se vrátí se všemi možnými událostmi CALLBACK pro zadaný typ seznamu (sloupec „NÁZEV“). U událostí, které mají být zpracovány zpětným voláním, musí být vyplněno jejich pole „FORMULÁŘ“. Pokud je pole inicializováno, událost je ignorována. Záznam lze číst z tabulky událostí, vyplnit pole „FORMULÁŘ“ a upravit záznam pomocí konstant z typu fondu SLIS.
2. Export:
I_list_type: 0 = jednoduchý seznam REUSE_ALV_LIST_DISPLAY
1 = hierarchicko-sekvenční seznam REUSE_ALV_HIERSEQ_LIST_DISPLAY
2 = jednoduchý seznam bloků REUSE_ALV_BLOCK_LIST_APPEND
3 = hierarchicky sekvenční seznam bloků REUSE_ALV_B_OCK_LIST_L_
REUSE_ALV_GRID_DISPLAY
Nová funkce z verze ABAP4.6 pro zobrazení výsledků v mřížce místo náhledu.
Parametry: stejné jako reuse_alv_list_display

Poznámka: Grid nedokáže zpracovat velké objemy. Funkce jako třídění, posouvání dolů spotřebovávají spoustu zdrojů / času, pokud je objem zobrazovaných dat vysoký. Neexistuje žádná jednoznačná definice, že pokud je objem dat X, přejděte do seznamu nebo mřížky, ale vývojář musí přijmout hovor na základě svých zkušeností. Pokud si nejste jisti, je lepší volbou seznam

REUSE_ALV_COMMENTARY_WRITE
Používá se v události Top-of-page k tisku nadpisů a dalších komentářů k seznamu.
Důležité parametry

  • It_list_commentary: Interní tabulka s nadpisy typu slis_t_listheader.

Tato interní tabulka má tři pole:

  1. Typ: „H“ - záhlaví, „S“ - výběr, „A“ - akce
  2. Klíč: pouze když je typ 'S'.
  3. Info: text k tisku

Blokovat zprávu

Vypadá to jako jednoduchá sestava, ale tato sestava má pouze funkce řazení a filtrování. Tato sestava se používá, pokud na výstupu musíte zobrazit více než jednu sestavu. Technicky vzato, pokud máte více interních tabulek s daty, která se mají zobrazit jako samostatné bloky, pak přejdeme k blokové zprávě ALV.
Důležité funkce použité při vytváření tohoto přehledu jsou:

  • REUSE_ALV_BLOCK_LIST_INIT
  • REUSE_ALV_BLOCK_LIST_APPEND
  • REUSE_ALV_BLOCK_LIST_DISPLAY

REUSE_ALV_BLOCK_LIST_INIT
Tento funkční modul se používá k nastavení výchozího stavu gui atd. Parametry jsou podobné těm, které se používají v reuse_alv_list_display nebo reuse_alv_grid_display
REUSE_ALV_BLOCK_LIST_APPEND
Tento funkční modul přidává data do bloku.
Důležité parametry 1.
Export:

  • is_layout: nastavení rozvržení pro blok
  • it_fieldcat: katalog polí
  • I_tabname: interní název tabulky se všemi možnými událostmi

2. Tabulky:

  • t_outtab: interní tabulka s výstupními daty.

REUSE_ALV_BLOCK_LIST_DISPLAY
Tento funkční modul zobrazuje seznam s daty připojenými výše uvedenou funkcí.
Parametry: Všechny parametry jsou volitelné.

Hierarchické zprávy

Hierarchické zobrazení se používá pro zobrazení souvisejících dat. Jako prodejní objednávka a podrobnosti o položce. Zde mohou být podrobnostmi prodejní objednávky data záhlaví, zatímco jejich položkami v prodejní objednávce mohou být data zboží
. Funkčním modulem použitým pro tento
účel je REUSE_ALV_HIERSEQ_LIST_DISPLAY
Export:

  • I_CALLBACK_PROGRAM
  • I_CALLBACK_PF_STATUS_SET
  • I_CALLBACK_USER_COMMAND
  • IS_LAYOUT
  • It_fieldcat
  • Je to událost
  • I_tabname_header: Název interní tabulky v programu obsahující výstupní data nejvyšší úrovně hierarchie.
  • I_tabname_item: Název interní tabulky v programu obsahující výstupní data nejnižší úrovně hierarchie.
  • Is_keyinfo: Tato struktura obsahuje názvy polí záhlaví a tabulky položek, které spojují dvě tabulky (sdílený klíč).

Tabulky

  • t_outtab_header: Tabulka záhlaví s daty, která mají být odeslána
  • t_outtab_item: Název interní tabulky v programu obsahující výstupní data nejnižší úrovně hierarchie.

Všechny definice interních tabulek, struktur a konstant jsou deklarovány ve fondu typů s názvem SLIS. Tuto interní tabulku lze vyplnit automaticky pomocí REUSE_ALV_FIELDCATALOG_MERGE '.

Zobrazit varianty

  • Varianty zobrazení se používají k nastavení výchozích vlastností výstupu alv, jako jsou kritéria řazení, kritéria filtrování, součet a mezisoučet atd.
  • Varianty displeje mohou být specifické pro uživatele a standardní (standardní varianty může použít kterýkoli uživatel)
  • Druh variant zobrazení, které lze uložit, je řízen parametrem i_save, který je předáván ve funkčních modulech reuse_alv_list_display / reuse_alv_grid_display
  • Na obrazovce výběru můžete poskytnout volbu, která varianta zobrazení se má použít

Společné funkční moduly související s výběrem / ověřováním variant zobrazení jsou

  1. Reuse_alv_variant_default_get
  2. Reuse_alv_variant_f4
  3. Reuse_alv_variant_existence

To je vše k programování ABAP-ALV!