Уобичајене жељене карактеристике било ког извештаја су „поравнање колона“, сортирање, филтрирање, укупан зброј, укупан износ итд. Да би се применили испочетка, треба уложити много напора у кодирање. Да бисмо то избегли, можемо користити концепт назван АБАП Лист Виевер (АЛВ).
У овом упутству ћете научити:
- Једноставан извештај
- Блоцк Репорт
- Хијерархијски извештаји
- Приказ варијанти
Сваки од ових извештаја пружа функционалне модуле који помажу у стварању жељених резултата без много напора. Погледајмо их детаљно -
Једноставан извештај
Важни функционални модули у овом извештају су -
- Реусе_алв_фиелдцаталог_мерге
- Поновна употреба_алв_лист_дисплаи
- Реусе_алв_евентс_гет
- Реусе_алв_грид_дисплаи
- Реусе_алв_цомментари_врите
РЕУСЕ_АЛВ_ФИЕЛДЦАТАЛОГ_МЕРГЕ
Овај функционални модул се користи за попуњавање каталога поља који је неопходан за приказ података у АЛВ.
Ако су излазни подаци из једне табеле речника и ако су изабрани сви ступци, тада не морамо искључиво креирати каталог поља. Довољно је да се име табеле помиње као параметар (И_струцтуре_наме) у РЕУСЕ_АЛВ_ЛИСТ_ДИСПЛАИ. Али у другим случајевима то морамо створити.
Напомена: Каталог поља може се попунити и ручно попуњавањем свих потребних детаља у интерну табелу.
Важни параметри у су:
1. Извоз:
- И_програм_наме: ИД извештаја
- И_интернал_табнаме: унутрашња табела излаза
- И_инцлнаме: укључује или име извештаја где се обрађују сви динамички обрасци.
2. Мењање
- цт_фиелдцат: интерна табела са типом СЛИС_Т_ФИЕЛДЦАТ_АЛВ која је декларисана у типу СЛИС.
РЕУСЕ_АЛВ_ЛИСТ_ДИСПЛАИ
Ово је функцијски модул који штампа податке.
Важни параметри су:
1. Извоз:
- И_цаллбацк_програм: ИД извештаја
- И_бипассинг_буффер: 'Кс'
- И_буффер_ацтиве: ''
- И_цаллбацк_пф_статус_сет: рутина у којој корисник може поставити свој пф статус или променити функционалност постојећег пф статуса.
- И_цаллбацк_усер_цомманд: рутина у којој се рукује кодовима функција.
- Име И_структуре: назив табеле речника
- Ис_Лаиоут: структура за постављање изгледа извештаја
- Ит_фиелдцат: интерна табела са листом свих поља и њихових атрибута који се штампају (функција може аутоматски попунити ову табелу)
- Ит_евентс: интерна табела са листом свих могућих догађаја АЛВ-а и одговарајућим именима облика.
2. Табеле:
- а. т_оуттаб: интерна табела са подацима за излаз
РЕУСЕ_АЛВ_ЕВЕНТС_ГЕТ:
Враћа табелу могућих догађаја за тип листе
1. Увоз:
Ет_Евентс: Табела догађаја враћа се са свим могућим ЦАЛЛБАЦК догађајима за наведени тип листе (колона 'НАМЕ'). Да би повратни позив обрађивао догађаје, њихово поље 'ОБРАЗАЦ' мора бити попуњено. Ако је поље иницијализовано, догађај се занемарује. Унос се може прочитати из табеле догађаја, попунити поље 'ОБРАЗАЦ' и унос изменити помоћу константи из типа СЛИС.
2. Извоз:
И_лист_типе: 0 = једноставна листа РЕУСЕ_АЛВ_ЛИСТ_ДИСПЛАИ
1 = хијерархијско-секвенцијална листа РЕУСЕ_АЛВ_ХИЕРСЕК_ЛИСТ_ДИСПЛАИ
2 = једноставна листа блокова РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_АППЕНД
3 = хијерархијско-секвенцијална листа блокова РЕУСЕ_АЛВ_БЛОЦК_ЕНД_БЛОЦК_ЕНД
РЕУСЕ_АЛВ_ГРИД_ДИСПЛАИ
Нова функција из верзије АБАП4.6 за приказ резултата у мрежи, а не у прегледу.
Параметри: исти као поновна употреба_алв_лист_дисплаи
Напомена: Мрежа не може да поднесе велике количине. Функције попут сортирања, померање надоле троше пуно ресурса / времена ако је обим података који ће се приказати велик. Не постоји јасна дефиниција таква да ако је количина података Кс, идите на листу или мрежу, али програмер мора да се јави на основу свог искуства. Ако нисте сигурни, листа је боља опција
РЕУСЕ_АЛВ_ЦОММЕНТАРИ_ВРИТЕ
Ово се користи у догађају Врх странице за штампање заглавља и других коментара за листу.
Важни параметри
- Ит_лист_цомментари: Интерна табела са заглављима типа слис_т_листхеадер.
Ова интерна табела има три поља:
- Тип: 'Х' - заглавље, 'С' - избор, 'А' - акција
- Кључ: само када је тип „С“.
- Информације: текст за штампу
Блоцк Репорт
Ово изгледа као једноставан извештај, али овај извештај има функције само сортирања и филтрирања. Овај извештај се користи ако на излазу морате да прикажете више извештаја. Технички гледано, ако имате више интерних табела са подацима који се приказују као засебни блокови, онда идемо на извештај о блоку АЛВ.
Важне функције које се користе за креирање овог извештаја су:
- РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_ИНИТ
- РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_АППЕНД
- РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_ДИСПЛАИ
РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_ИНИТ
Овај функционални модул се користи за постављање подразумеваног гуи статуса итд. Параметри су слични оном који се користи у реусе_алв_лист_дисплаи или реусе_алв_грид_дисплаи
РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_АППЕНД
Овај функционални модул додаје податке у блок.
Важни параметри
1.Екпорт:
- ис_лаиоут: поставке распореда за блок
- ит_фиелдцат: каталог поља
- И_табнаме: интерно име табеле са свим могућим догађајима
2.Табеле:
- т_оуттаб: интерна табела са излазним подацима.
РЕУСЕ_АЛВ_БЛОЦК_ЛИСТ_ДИСПЛАИ
Овај функционални модул приказује листу са подацима које додаје горња функција.
Параметри: Сви параметри нису обавезни.
Хијерархијски извештаји
Хијерархијски приказ се користи за приказ података који су повезани. Као продајни налог и детаљи предмета. Овде детаљи о наруџбеници могу бити подаци заглавља, док њихове ставке у продајном налогу могу бити подаци о ставкама
. Функционални модул који се за то користи је
РЕУСЕ_АЛВ_ХИЕРСЕК_ЛИСТ_ДИСПЛАИ
Извоз:
- И_ЦАЛЛБАЦК_ПРОГРАМ
- И_ЦАЛЛБАЦК_ПФ_СТАТУС_СЕТ
- И_ЦАЛЛБАЦК_УСЕР_ЦОММАНД
- ИС_ЛАИОУТ
- Ит_фиелдцат
- Ит_евентс
- И_табнаме_хеадер: Име интерне табеле у програму која садржи излазне податке највишег нивоа хијерархије.
- И_табнаме_итем: Име интерне табеле у програму која садржи излазне податке најнижег нивоа хијерархије.
- Ис_кеиинфо: Ова структура садржи имена поља заглавља и табеле ставки која повезују две табеле (дељени кључ).
Столови
- т_оуттаб_хеадер: Табела заглавља са подацима за излаз
- т_оуттаб_итем: Име интерне табеле у програму која садржи излазне податке најнижег нивоа хијерархије.
Све дефиниције интерних табела, структура и константи декларисане су у типу базе званом СЛИС. Ова интерна табела се може попунити аутоматски помоћу РЕУСЕ_АЛВ_ФИЕЛДЦАТАЛОГ_МЕРГЕ '.
Приказ варијанти
- Варијанте приказа користе се за постављање подразумеваних својстава алв излаза попут критеријума за сортирање, критеријума за филтрирање, збрајање и међузбир, итд.
- Варијанте приказа могу бити специфичне за корисника и стандардне (стандардне верзије може да користи било који корисник)
- Врсте варијанти приказа које се могу сачувати контролише параметар и_саве који се преноси у функционалним модулима реусе_алв_лист_дисплаи / реусе_алв_грид_дисплаи
- На екрану за избор можете пружити опцију да одаберете коју ћете варијанту приказа користити
Уобичајени функционални модули који се односе на одабир / потврду варијанти приказа су
- Реусе_алв_вариант_дефаулт_гет
- Поновна употреба_алв_вариант_ф4
- Поновно коришћење_алв_варијантно_постојање
То је све за АБАП-АЛВ програмирање!