Конфигурация регистров на примере добавления новых вкладок в договор IS-U
В процессе работы с системой SAP R/3 зачастую возникает задача по расширению стандартных объектов для добавления пользовательских полей. При этом существуют несколько основных видов расширений:
- USER-EXIT
- BADI
- ENHANCEMENT
- BTE
- BDT
USER_EXIT-ы представляют собой функциональные модули (ФМ), в которых, задав входные и выходные параметры можно добавлять дополнительную логику в стандартный ABAP-код SAP. USER-EXIT-ы реализуются в виде вставок вида CALL CUSTOMER-FUNCTION '001'. Как и любые ФМ, USER-EXIT-ы объединены в группы функций. Имена этих групп функций начинаются на литеру X. Зачастую USER-EXIT-ы позволяют также добавлять пользовательские подэкраны. Активация USER-EXIT-ов происходит при помощи транзакции SMOD. Сходные по функциональности USER-EXIT-ы группируются в проекты, которые можно просматривать при помощи транзакции CMOD. Примеры использования и активации USER-EXIT можно посмотреть здесь.
BADI – расширения представляют собой аналог USER-EXIT. Отличие состоит в том, что USER-EXIT – это функциональный модуль, а BADI – это класс. BADI-расширения можно создавать и изменять при помощи транзакций SE18 и SE19. Рекомендации по поиску USER-EXIT и BADI в стандартном коде SAP можно посмотреть здесь.
ENHANCEMENT – расширения применяются в тех случаях, когда не удается найти подходящего расширения вышеперечисленных типов. ENHANCEMENT представляет собой прямые вставки в стандартный SAP код, но тем не менее все реализации сохраняются при обновлении системы. ENHANCEMENT нельзя вставлять в PBO и PAI модули. Обычно SAP позволяет вставлять ENHANCEMENT в начале и конце подпрограмм (FORMS). Подробнее об ENHANCEMENT можно прочитать здесь.
BTE (Business Transaction Events) – позволяет прикреплять дополнительные компоненты в формы и функциональные модули. BTE представляет собой функциональный модуль (внедренный пользователем), который имеет стандартный интерфейс, предопределенный SAP. Вызов BTE из стандартной SAP программы происходит посредством функциональных модулей OPEN_FI_PERFORM_<BTE-номер> или OUTBOUND_CALL_<BTE-номер>. BTE используется в основном в модуле FI. Подробнее об использовании расширений BTE можно прочитать здесь.
BDT (Business Data Toolset) – центральное средство для настройки диалоговых программ SAP. Если бизнес-транзакция поддерживает технологию BDT, вы можете добавлять новые пользовательские поля, скрывать стандартные поля, перемещать стандартные поля из одного экрана на другой, добавлять новые опции меню и добавлять пользовательские проверки, без модификации кода самой транзакции. Основными объектами SAP, для которых применима технология BDT, является Центральный деловой партнер и Контокоррентный счет. Пример расширения транзакции BP при помощи технологии BDT можно посмотреть здесь.
Рассмотрим одну технологию, которая стоит особняком от перечисленных выше расширений. Это, реализованная в SAP, возможность конфигурировать регистр экранов. В статье рассматривается практическая реализация этой технологии в контексте добавления новых вкладок на объект IS-U «Договор энергоснабжения» (Рис. 1). На мой взгляд, настройка является близкой к технологии BDT и представляет собой её упрощенный вариант.\
Рис. 1 Объект IS-U «Договор энергоснабжения»
Настройка состоит из трёх этапов:
Этап 1. Конфигурирование регистра.
Необходимо зайти в транзакцию SPRO и выбрать следующую настройку по пути (Рис. 2) «Отраслевой компонент: энергетика и коммунальное хозяйство ® Основные данные ® Договор снабжения ® Сконфигурировать регистр для договоров снабжения»
Рис. 2 Конфигурирование регистра для договора на энергоснабжение
В окне изменения формата я создал новый формат «ZISU» и назвал его «Польз. ведение договора ISU» (Рис. 3)
Рис. 3 Создание нового формата
Далее необходимо выделить строку с собственным форматом и дважды кликнуть по папке слева «Заголовки закладок» (Рис. 4)
Рис. 4 Создание нового формата
В появившемся окне (Рис. 5) необходимо «вести» первые три стандартные закладки. При этом, как видно из скриншота, их можно переименовать: вместо лист 1, 2 и 3 ввести более информативные имена. Наша 4-ая закладка будет называться «Доп. данные».
Рис. 5 Настройка закладок
Теперь необходимо настроить «Позиции групп в закладках» для каждой закладки. Группы в закладках представляют собой, по сути, фрейм c полями. Пример фрейма общих данных договора приведен на Рис. 6.
Рис. 6 Пример фрейма «Общие данные договора»
Если мы не хотим менять данные, которые находятся на первых трех закладках, то необходимо
Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland
ЗарегистрироватьсяУ вас уже есть учетная запись?
Войти
Обсуждения 1
Комментарий от
Олег Точенюк
| 23 декабря 2014, 15:20