:::: МЕНЮ ::::
Просмотр публикаций с меткой: Экран

ZCL_GUI_SCREEN_ALV — удобная работа с ALV

В предыдущей статье мы рассматривали класс ZCL_GUI_SCREEN для создания экранов из ОО-контекста. В большинстве приложений экраны содержат контейнер с размещенным на нем экземпляром таблицы ALV. Для более удобной работы, библиотека ZCA_GUI содержит уже класс ZCL_GUI_SCREEN_ALV, обернутый в экран ZCL_GUI_SCREEN. Класс содержит в себе все возможности нативного CL_GUI_ALV_GRID.

Читать дальше…

ZCL_GUI_SCREEN — экран в ООП без PBO/PAI

Одним из самых неудобных в моментов разработки в SAP является работа с экранами. Для отображения экрана с ALV-таблицей необходимо: создать экран с контейнером, создать GUI-заголовок и GUI-статус, определить PBO/PAI модули. Большая часть из этих действий содержит шаблонный код и не содержит полезной нагрузки. А самое неприятное то, что все это нельзя создать в ОО-контексте.

SAP частично избавил разработчиков от этой боли, написав ФМ REUSE_ALV_GRID_DISPLAY и класс CL_SALV_TABLE. Но они решают лишь часть проблем: для добавления кнопок в GUI-статус требуется создавать свой статус (в добавок к нему и программу или группу функций), а если требуется создать редактируемый ALV, то CL_SALV_TABLE бессилен, а REUSE_ALV_GRID_DISPLAY нельзя полноценно обернуть в класс. А если требуется нарисовать несколько таблиц на экране, или сделать текстовое поле через CL_GUI_TEXTEDIT, то создание своего экрана с PBO/PAI неизбежно.

Для решения проблем подобного рода, многие разработчики делают свои обертки над ALV. У кого-то они получаются удачными, у других же они сложны в настройке и чувствительны к кастомизации. Я один из тех разработчиков, кто решил написал подобную библиотеку ZCA_GUI, которую вы можете скачать через ABAP-Git. В статье приведено описание основных возможностей данной библиотеки.

Читать дальше…