что такое badi в sap

Что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Часовой пояс: UTC + 3 часа

Правила форума

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

Уже часа 2 капаю гугл в поисках ответа на вопрос:
В чем разница между user-exit и badi.

Нашел только что badi может вызываться сколь угодно раз, а user-exit только один.

Коллеги может кто поделиться информацией?

Гуру-эксперт
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

А вы не подскажите где можно скачать курс BC425.

Разница настолько большая что целый курс существует?

Гуру-эксперт
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988

Уже часа 2 капаю гугл в поисках ответа на вопрос:
В чем разница между user-exit и badi.

Нашел только что badi может вызываться сколь угодно раз, а user-exit только один.

Коллеги может кто поделиться информацией?

Гуру-эксперт
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской

А вы не подскажите где можно скачать курс BC425.

Разница настолько большая что целый курс существует?

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

Эм. скачал курс 262 страницы. на собеседование через 4 часа

Выручайте, в 2 словах в чем разница?

Специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Ср, май 04 2011, 23:46
Сообщения: 228

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

Гуру-эксперт
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988

Эм. скачал курс 262 страницы. на собеседование через 4 часа

Выручайте, в 2 словах в чем разница?

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

Мой опыт в sap более года, то есть у меня есть ‘обширные’ поверхностные знания.
Но на собеседованиях задают в основном каверзные вопросы(как ‘joinить’ bseg с xxxx)

Если уже коснулись этой темы, не могли бы поделиться опытом встречающихся вопросиков?(или создавать 101 тему про это? где 90% треша)

Гуру-эксперт
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988

Мой опыт в sap более года, то есть у меня есть ‘обширные’ поверхностные знания.
Но на собеседованиях задают в основном каверзные вопросы(как ‘joinить’ bseg с xxxx)

Если уже коснулись этой темы, не могли бы поделиться опытом встречающихся вопросиков?(или создавать 101 тему про это? где 90% треша)

Старший специалист
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322

Гуру-эксперт
что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988

Часовой пояс: UTC + 3 часа

Кто сейчас на конференции

Сейчас этот форум просматривают: Ahrefs [Bot]

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Логотип © 2006 Андрей Горшков
Поддержка: Кирилл Андреев, 2011-…

Источник

ABAP Blog

Все о разработке в решениях от SAP

ABAP Blog

Все о разработке в решениях от SAP

Ссылки

Цитаты

Технические навыки — это мастерство сложности, а творчество — мастерство простоты. // E. Zeeman

Новое

Последние комментарии

AMDP BAdI

Начиная с ABAP 7.4 SP08 нам стал доступен специальный тип BAdI — AMDP BAdI, который позволяет заменить/расширить стандартную реализацию AMDP процедур реализованных SAP-ом или в Custom решениях. Основное предназначение AMDP BAdI — вызов процедур реализованных в реализации AMDP BAdI из других AMDP процедур в системе. Чтобы это стало возможным используется ключевое слово USING в определении AMDP процедуры:

Особенности AMDP BAdI:

Далее реализуем свой AMDP BAdI, реализацию к нему по умолчанию через Fallback класс, а так же дополнительную Custom реализацию.

Создание своего AMDP BAdI

Для создания своего AMDP BAdI необходимо перейти в транзакцию SE20 и создать новую точку расширения — Enhancement Spot:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Native диалог в Eclipse ADT не доступен на моей системе, так или иначе перенаправит в SE20, но в самых последних версиях систем мы можем править точку расширения прямо в ADT

Пускай её имя будет — ZES_CUSTOM_AMDP_BADI_SAMPLE.

В следующем диалоге мы можем указать композитную точку расширения, если хотим объединить несколько точек в одну, но в примере этого делать не будем, оставляем пустым:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Далее необходимо указать запрос в рамках которого мы хотим сохранить нашу точку расширения, либо отметить её как локальный объект. После чего мы попадём на экран определения BAdI в рамках точки расширения, где можем нажать на создание нового BAdI:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

В нашем демо сценарии мы создадим BAdI для поиска пользователей по заданным критериям фильтрации. Назовём BAdI следующим образом — ZBD_AMDP_USER_SEARCH:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Отметим сразу галочкой что мы создаём именно AMDP BAdI:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Следующим шагом определим имя интерфейса — ZIF_AMDP_USER_SEARCH:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

После чего система сразу предложит перейти к определению методов интерфейса — согласимся.

Добавим в интерфейс метод: SEARCH_USERS:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

В качестве параметра у нас будет строка с фильтром и возвращать мы будем таблицу со структурой таблицы USR02:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Обратите внимание, так как мы создаём интерфейс для вызова AMDP процедуры, передача параметров должна быть по значению.

После определения метода, сохраним интерфейс и выйдем к экрану ведения BAdI и зададим Fallback класс с именем — ZCL_BI_FB_AMDP_USER_SEARCH:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Далее система вновь предложит выбрать запрос и перейти в редактирование класса — соглашаемся, сохраняем его и активируем. Добавить реализацию AMDP метода мы не сможем в GUI транзакции, далее мы должны пользоваться Eclipse и ADT.

Первым делом откроем наш BAdI интерфейс и добавим к нему маркер AMDP:

Источник

Что такое badi в sap

Creating an Enhancement Spot

The first thing you need when creating a BAdI is a container for the BAdI. For that purpose, you need to create a (simple) enhancement spot. This is the container in which you develop your BAdI.

1. In the Object Navigator (transaction SE80), navigate to the package in which you want to create the enhancement spot.

The following dialog appears:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

3. Enter a name and a short text description for the enhancement spot.

Creating a BAdI

1. To create a BAdI within the new enhancement spot, choose the Create BAdI pushbutton on the left, as shown in the figure below:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

2. In the dialog window that appears, enter the BAdI name z_badi_calc_vat and a short description.

You now have a BAdI in your enhancement spot.

3. Deselect the Multiple Use option because for the current calculation you need a single-use BAdI:

The BAdI Interface

Up to now, you still do not have a BAdI. You need an interface where you can define the methods which determine what you can do with your BAdI.

1. Choose the arrow in front of the BAdI name.

2. Double-click on the Interface icon.

Enter a name for the interface. You can choose an existing name or create a new one.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

3. Choose the Change pushbutton.

This leads you to the Class Builder where you can create the methods you need for your BAdI. You simply need to type in the name of the method get_vat and enter the parameters you need.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

4. Determine the parameters of the method:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

5. Save and activate the interface and the spot.

By completing the steps above, you have created an enhancement spot and a BAdI with an interface. The interface has one method so far.

However, just building a BAdI is not enough as it does not do anything. You need a BAdI instance and this instance must be called somewhere in the code. Since the BAdI only defines an interface, you need a class that implements this interface.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

A BAdI definition is the place to insert an object plug-in that does something at runtime. You still need an object that is plugged in to get something done.

Writing the Source Code

Now you need to write some ABAP code to use the BAdI. You need a variable that can refer to the BAdI and some variables that are given as actual parameters to the BAdI method.

DATA: handle TYPE REF TO z_badi_calc_vat,

CALL BADI handle->get_vat

EXPORTING im_amount = sum

IMPORTING ex_amount_vat = vat

WRITE: ‘percentage:’, percent, ‘VAT:’, vat.

A Fallback Class

The better solution is to use a fallback class. This class is used if there is no active BAdI implementation.

The GET BADI command returns a handle to an instance of the fallback class and the respective CALL BADI calls the methods of the fallback class instance. As soon as there is an active BAdI implementation, the fallback class is no longer used at runtime.

Using a fallback class serves two functions at once:

● The program runs with a single-use BAdI without throwing an exception.

To add a fallback class, proceed as follows:

1. Select the Call fallback class if no implementation is executed option and enter a name for the class:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

2. Choose Change to go back to the Class Builder.

The respective method of the BAdI interface is already automatically defined. You only have to implement it:

DATA: percent TYPE p VALUE 20.

ex_amount_vat = im_amount * percent / 100.

3. Save and activate the class.

4. Navigate back to the enhancement spot and activate it.

Источник

Что такое badi в sap

В данной статье будет рассмотрена первая группа бадих, которые начинаются на /scwm/. Цель данного обзора скорее ознакомительная. Я не стал подробно описывать работу каждой бади, хотел лишь понять в каких областях возможны изменения стандартной логики. По нескольким бади я так и не понял для чего они служат, я их выделил цветом, чтобы позже вернуться к ним и уже детальнее рассмотреть в отладчике. Детальный обзор самых часто-используемых бади я буду делать в отдельных статьях.

Composite Enhancement Spot /SCWM/ES_PRODUCT_MASS_CHANGE

Composite Enhancement Spot /SCWM/ESC_ARCH

Composite Enhancement Spot /SCWM/ESC_ASR

Composite Enhancement Spot /SCWM/ESC_BASIS

Composite Enhancement Spot /SCWM/ESC_CD

Composite Enhancement Spot /SCWM/ESC_CHM

Composite Enhancement Spot /SCWM/ESC_CORE

Данную бади вызывается до и после определения алгоритма картонизации в бади /SCWM/EX_CAP_ALGORITHM. Состоит из двух методов:

GROUP_ITEMS – исолльзуется для перегруппировки позиций заказов, котрорые должны упаковаться вместе в ЕО.

ADJUST_CAP_RESULT – вызывается после того как система спланировала плановые ЕО. В данной бади можно изменить результат работы системы. Вплоть до того, что полностью по своему перетасовать ЕО.

Бади вызывается при подтверждении складской задачи. В данной бади можно изменить данные складской задачи, которая подтверждается. Но нужно иметь ввиду, что не все данные можно поменять. Проверка измененных данных в бади затем проверяется в /SCWM/LL03BF0M- quittierung_pruefen

/SCWM/EX_CORE_CO_POSTБади вызывается при подтверждении складской задачи, но в момент, когда уже данные задачи не изменяемые и все проверки пройдены. Используется для запуска собственных последующих операций./SCWM/EX_CORE_CO_QUAN_UPD

С помощью метода бади DESTINATION_CHANGE можно также изменить данные принимающего кванта, а именно – AUoM, Country of Origin, GRD, SLED, CS_QUAN_CUST.

Есть fallback-класс и пример реализации.

Бади вызывается при создании складской задачи размещения материала в пустое СМ. В даной бади 2 метода:

Есть пример реализации.

Бади вызывается при создании складской задачи размещения материала.В данной бади можно фильтровать и сортировать доступные СМ, которые определила система согласно стандартным настройкам спро.

Есть fallback-класс и пример реализации.

Бади вызывается при создании складской задачи размещения материала в момент определения принимающего СМ в случае стратегии добавления запаса. Используется для определения СМ, к которому можно добавить запас.

Бади вызывается при создании складской задачи размещения материала в тип склада с фиксированными складскими местами по статегии – ближайшее фикс.место.

Данная бади используется для определения списка фиксированных СМ по обственной логике.

Есть пример внедрения.

Бади вызывается при создании складской задачи на размещение материала в момент определения принимающего складского участка. Используется для определения последовательности поиска складского участка по собственной логике.

Бади вызывается при создании складской задачи на размещение материала. Есть 2 метода:

Данная бади вызывается при создании складской задачи на размещение материала в момент присвоения продукта к новому фиксированному складскому месту.

Используется для запуска собственных последующих операций.

Вызывается до бади /SCWM/EX_CORE_RMS_DETERMINE

в перформе 300 /SCWM/LREM_BIN_DETF13-QMAT_CREATE для каждого типа склада, в котором определяется доступный квант. Если возвращать Х, то из внутренней структуры CT_QMAT удаляются все кванты данного типа склада, но делается это уже после того как под текущую потребность кол-во уже зарезервировано. Дальнейшее влияние на процесс не понятно.

Данная бади вызывается при поиске доступного запаса в операциях отпуска материала. Используется для сортировки и фильтрации квантов, которые система определила согласно стандартных настроек системы. Есть примеры реализации. Есть fallback-класс (для MFS)/SCWM/EX_CORE_RMS_NEGATIVE

Бади вызывается при создании складской задачи на отпуск материалов после того как отп.СМ уже определилось системой. Используется для разрешения использования отрицательных запасов.

Также можно изменить клиентские данные в структуре СЗЧ.

Бади по-умолчанию активна. Есть 3 метода:

DOC_ASSIG_CHANGE – метод вызывается только из /SCWM/GM_POST при подборе товара в ЕО или сторно комплектования в ЕО. Система соответственно выполняет изменения по присвоение ЕО к ТЕ.

HU_CONTENT_CHANGED – данный метод обновляет присвоения ЕО к ТЕ в момент, когда содержимое ЕО меняется.

HU_LOADING – данный метод пустой, запускается при погрузке/разгрузке ЕО.

Источник

Русские Блоги

Расширение ABAP: часть первая

Первое поколение: на основе улучшения исходного кода (подпрограмма: Форма)

Усовершенствования исходного кода выпускаются в виде подпрограмм.

Улучшение экрана Выпущенные в виде клиентских экранов, они входят в стандартную программу без каких-либо особых правил.

Способы найти такие выходы:

2. Используйте SPRO, чтобы найти соответствующие модули в фоновом режиме для улучшения;

3. Найдите в программе подпрограмму с ключевым словом, начинающуюся с USEREXIT_;

4. Откройте программу, которую вы хотите улучшить, нажмите кнопку «Показать список объектов» на панели инструментов, выберите «Подпрограммы», найдите подпрограмму, начинающуюся с «UserExit», и найдите программу выхода пользователя в соответствии с документом аннотации перед подпрограммой:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Следующие подпрограммы, начинающиеся с USEEXIT _. являются пустыми подпрограммами, вы можете добавить свой собственный код:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Найдите выход пользователя через SPRO-> IMG

Как правило, подпрограммы (форма) с похожими функциями помещаются в единый файл включения. Информацию о соответствующей программе экспорта можно получить с помощью SAP IMG (System Configuration Tool).

Теперь рассмотрим модель продаж в качестве примера:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Щелкните на передней панеличто такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sapОткроет документ с описанием функции узла и предоставленный Выход пользователя Тип программы, название И функция кратко объясняется. Вы можете получить имя экспорта, зарезервированное SAP, через документ описания. Как показано на рисунке ниже, вы можете увидеть файл включения экспорта и определенные пользовательские подпрограммы экспорта (форма) в каждом файле включения экспорта:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Найти выход пользователя по классу разработки

Большинство программ продаж и распространения (и модуля MM) улучшаются на основе исходного кода формы, и этот тип улучшения помещен в категорию разработки. VMOD в.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Соответствующее описание и пример кода строки находятся в соответствующем комментарии заголовка подпрограммы выхода.

Необходимо обратить внимание на разработку экспорта. Вы можете вставлять код только в середину обозначенной подпрограммы, и вы не можете вносить какие-либо изменения в структуру или имя подпрограммы, и вы должны убедиться, что скомпилированный код активирован нормально, иначе вся бизнес-система может работать неправильно.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Переменные данных, которые могут использоваться подпрограммами обработчика пользователя

ЧтобыMV45AFZZНапример, его основные функции включают создание, проверку и сохранение заказов на продажу.Данные таблиц VBAP и VBAK хранятся во внутренних таблицах XVBAP и XVBAK соответственно в памяти.

Поиск того, какие внутренние переменные таблицы могут использоваться в экспорте, является ключом к разработке. Вы можете использовать SE38, чтобы найти, где использовался соответствующий файл включения экспорта:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Затем, выбрав строку, щелкнитечто такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap, Вы можете увидеть исходный код программы:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Спецификация программы SAP обычно включает разные коды функций в разные файлы Include.Если определения переменных обычно хранятся в файлах Include, заканчивающихся на TOP, таких как MV45ATOP выше, вы можете найти нужные переменные данных.

Пример расширения VA01

Переменные и данные внутренней таблицы, определенные в «Включить», оканчивающиеся на TOP, могут напрямую указываться в подпрограммах обработчика пользователя.Некоторые бизнес-данные во время выполнения системы будут временно храниться в определенных внутренних таблицах для оценки и использования программой экспорта.

По имени экспорта From можно предварительно оценить вызывающий процесс.Например, подпрограмма USEREXIT_SAVE_DOCUMENT_PREPARE будет вызываться перед сохранением программы обслуживания заказа (VA01, VA02).

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Второе поколение: расширение экспорта на основе функции (Function)

Усовершенствования исходного кода выпущены в виде функциональных модулей.

Этот метод основан на базовой функции, то есть весь добавленный код добавляется к указанной функции с определенными параметрами ввода / вывода. Каждая функция выхода соответствует объекту выхода. Чтобы использовать эту функцию, вам необходимо найти соответствующий объект выхода и активировать его, чтобы вступить в силу.

Усовершенствования экрана также включены в функциональную группу, к которой принадлежит функциональный модуль. Чтобы

Вышеупомянутые улучшения поддерживаются посредством кода транзакции SMOD, и реализована CMOD. SMOD Одно из улучшений может включать вышеупомянутый исходный код, улучшения структуры экрана и таблицы.

1) E Класс. Расширение выходов: Расширение функции, которое часто называется User_exit (функция выхода пользователя). Эти функции выхода начинаются с Exit_, вы можете проверить его в SE37 или в словаре данных. TFDIR (Таблица функций) Запрос функции, начинающейся с Exit_.

2) C Класс. Коды GUI, (улучшение GUI)

3) S Класс. Подэкраны (расширение экрана): например, при создании заказов на поставку, рабочих заданий и других основных данных система резервирует улучшения экрана, что означает, что пользователи могут настраивать интерфейс пользовательского ввода и писать соответствующие программы обработки ввода и вывода.

4) T Класс. Включить улучшение структуры: например, расширение MM06E005 позволяет пользователям создавать две структуры CI_EKKODB и CI_EKPODB

EnhancementЕго можно найти в таблице MODSAP (соответствующая таблица взаимосвязи между точками расширения и функциями), а значение поля MAND в таблице TFDIR указывает, что функция выхода активирована. Конечно, вы можете использовать SMOD (CMOD) для активации функции выхода, но иногда, когда трудно найти соответствующее расширение, вы не можете использовать SMOD (CMOD) для активации. Для активации функции выхода вы можете использовать следующую программу:

Конечно, вы также можете ввести EXIT_SAPMM06E_013 через расширение таблицы SE16: MODSAP, а затем получить имя расширения MM06E005 и использовать тест SMOD для активации функции выхода.

2. Код улучшен. Используйте код позади Найдите улучшение (некоторые выходы используют его, но не могут найти)

Разница между SMOD и CMOD

SMOD можно использовать напрямую для просмотра определенного экспорта (если соответствующая функция экспорта определенного экспорта имеет соответствующие функциональные документы), а CMOD относится к проекту. Если вы хотите просмотреть определенный экспорт через CMOD, вам необходимо знать экспорт Какой проект используется, можно проверить по названию проекта. Экспорт может использоваться только одним проектом. Если определенный экспорт не использовался, сначала необходимо создать проект через CMOD. Экспортер может быть указан в этом проекте.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Если используется экспорт, он не может использоваться другим проектом. Например, экспорт RSAP0001, указанный выше, использовался проектом BW, поэтому при создании ссылки ZZBW будет сообщено об ошибке:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Найдите функцию выхода

Вы можете сначала найти функцию экспорта через исходный код, а затем найти объект экспорта через функцию экспорта.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

В соответствии с правилами имени функции, соответствующими выходу, эта функция называетсяEXIT_SAPMV45A_003, А затем откройте функцию через SE37, вы увидите, что в этой функции указана зарезервированная программа, имя ZXVVAU05:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Найдите соответствующий объект экспорта в соответствии с функцией экспорта

Функции выхода были найдены только в исходном коде программы, но эти функции не вызываются напрямую при выполнении программы. Сначала необходимо убедиться, что объект выхода, соответствующий функции, активирован, а затем ссылаться на эти функции выхода через объект выхода.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Примечание: из-за Функция выхода соответствует только одному объекту выхода, а один объект выхода может соответствовать нескольким функциям выхода. ; Таким образом, при поиске объекта экспорта в соответствии с указанной выше функцией экспорта должен быть найден только один объект экспорта. Однако, если функция выхода найдена на основе объекта выхода, будет найдено несколько функций выхода:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Описание объекта экспорта хранится в таблице MODSAPT, например объект экспортаV45A0003Описание выглядит следующим образом:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Активация экспортного объекта (SMOD)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Расширенная подробная документация

Расширение обычно имеет соответствующий документ, который может использоваться для руководства разработкой, и документ может отображаться следующим образом:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Пример: расширенный экран заказа на поставку за счет экспорта

Путем отладки MODX_FUNCTION_ACTIVE_CHECK Системная функция, запустить ME23N (Или ME21N, ME22N), вы войдете в интерфейс отладки, и вы можете найтиНазванныйEXIT_ SAPMM06E _006 функция экспорта:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Снова используйте Tcode: Какие улучшения для поиска SMOD:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Улучшение видно на изображении выше.MM06E005содержать Экспорт функций, экспорт экрана, экспорт счетчика Три улучшения. Дважды щелкните соответствующее имя улучшения в интерфейсе SMOD, чтобы реализовать функцию улучшения.

В этом примере к заголовку заказа на поставку добавляется вспомогательный экран. Содержимое полей на вспомогательном экране может быть сохранено в таблице базы данных и может использоваться в интерфейсе ME21N, ME22N или ME23N. Конечный результат выглядит следующим образом:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Конкретный процесс разработки выглядит следующим образом

Выше MM06E005ПовышеннаяSMODДважды щелкните выход таблицы «CI_EKKODB» в интерфейсе, вы можете настроить структуру для таблицы EKKO Include, а поля в структуре являются полями, используемыми на дополнительном экране:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

После того, как структура таблицы будет расширена и активирована, расширенные поля появятся в таблице EKKO:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

НаверхуMM06E005ПовышеннаяSMODДважды щелкните функцию экспорта «EXIT_SAPMM06E_006» в интерфейсе, и откроется редактор функций SE37:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Затем нажмите «Показать список объектов».Кнопка, переключитесь в режим редактора SE80 для отображения, а левая сторона показывает группу функций, связанную с функцией выхода:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

В этой группе функций вы можете отобразить расширенный код экрана и функцию

Дважды щелкните узел «XM06» в левом дереве, чтобы открыть основную программу, соответствующую функции »SAPLXM06”:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Основная программа группы функций SAPLXM06 на самом деле содержит четыре, включая:

INCLUDE LXM06TOP(Глобальные данные здесь определяют глобальные данные для улучшения)

INCLUDE LXM06F00. (SAP-Formpool for Customer-Use может создать здесь пул форм)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

В основной программе мы ищем «EXIT_SAPMM06E_006″Выход из функции ( Примечание: дважды щелкните при поиске SAPMM06E основная программа, поиск возможен после открытия основной программы ) вы можете найти место для настройки функции:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Некоторые функции выхода через CALL CUSTOMER-FUNCTION Вызывается в форме, поэтому вы также можете искать по ключевому слову «CALL CUSTOMER-FUNCTION», вы можете найти другие места для вызова функции выхода:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

(Примечание: вам необходимо открыть определенный экран перед поиском, потому что эти операторы вызова экрана вызываются в потоке логики экрана, поэтому вы не можете открыть основную вызывающую программу для поиска, как указано выше)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

(Из результатов поиска выше, SAPMM06E может улучшить подэкраны № 0101, 0111, 0201, 0211, 0301, 0311, а расширенную функцию подэкрана можно увидеть из описания ниже)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Если дважды щелкнуть номер экрана «0101» на приведенном выше рисунке, вы перейдете к экрану 0101 в главной программе SAPLXM06, но список объектов списка объектов слева не изменился, потому что подэкран 0101 теперь должен принадлежать группе функций XM06. Но вы можете нажать начто такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sapКнопка Показать список объектов может отображаться одновременно ( Это также распространенный метод, используемый для поиска основной программы или группы функций, в которой находится программа или экран. ):

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Начните реализовывать подэкран и связанный с ним код ниже

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

На MM06E005В расширенном интерфейсе SMOD дважды щелкните строку выхода функции экспорта «SAPMM06E 0101 CUSTSCR1 SAPLXM06 0101», и будет создан новый экран 0101:

(Атрибут экрана должен быть установлен на подэкран)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

(Отредактируйте PBO подэкрана, цель состоит в том, чтобы установить, можно ли редактировать поле экрана перед отображением)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Затем установите экран 0101:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

(нота:Префикс имени поля экрана установлен на глобальныйИмя переменной внутренней структуры таблицы EKKO_CI, так что содержимое поля экрана автоматически привязано к внутренней структуре таблицы, то есть поле экрана может взаимодействовать с переменной памяти)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Вышеупомянутое предназначено только для завершения проектирования экрана, а внутренняя таблица EKKO_CI привязана к экрану и окончательной внутренней таблице (когда данные считываются из таблицы базы данных или данные сохраняются в таблице базы данных, данные сохраняются в структуре таблицы базы данных В той же внутренней таблице эта внутренняя таблица является последней внутренней таблицей) для взаимодействия с данными (чтение и назначение):

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Процесс добавления подэкрана Item в основном тот же, но реализация отличается. Конкретная запись реализации выглядит следующим образом:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Если вы хотите удалить расширенный подэкран, просто отмените расширенную активацию:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

MM06E005Описание функции каждой функции экспорта в:

006 :Export Data to Customer Subscreen for Purchasing Document Header (PBO)

007 : Экспорт данных в клиент Подэкран для заголовка документа закупки (PAI) будет вызываться после ввода данных при создании заказа на поставку или при изменении данных. Его можно использовать для различных исправлений после ввода данных.

Обследование и контроль. Чтобы

008 : Импорт данных из клиента Подэкран для заголовка документа закупки вызывается при изменении или создании данных или данных отдельной позиции на определяемом пользователем экране заголовка заказа на поставку. Для этого экспорта

Чтобы контролировать данные, включенные в настройку заказа на поставку, то есть, какие настраиваемые данные необходимо в конечном итоге сохранить в базе данных.

012 : Перед сохранением заказа на покупку проверьте данные для конкретного клиента. Ввод измененных данных на экран не будет вызываться, а только при нажатии кнопки сохранения. Чтобы

013 :Update Customer’s Own Data in Purchasing Document

014 : Read Customer-Specific Data when Importing Purchasing Document

017 : Подэкран «Экспорт данных в клиент» для позиции документа закупки (PAI) будет вызываться после ввода данных при создании заказа на поставку или после изменения данных. Его можно использовать для различных исправлений после ввода данных.

018 : Подэкран импорта данных из клиента для позиции документа закупки вызывается при изменении или создании данных или данных заголовка позиции заказа на закупку. Этот выход используется для управления заказом на покупку.

Данные, содержащиеся в системе, то есть какие индивидуальные данные необходимо сохранить в базе данных в итоге.

Пример: расширение VA01 (проект создания CMOD)

SMOD содержит определенные улучшения, в то время как CMOD содержит набор улучшений, написанных SMOD.

В предыдущих разделах рассказывалось только о том, как найти выход в программе, но как использовать его после нахождения выхода?

Для начала нужно создать проект через CMOD:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Нажмите кнопку «Добавить», чтобы назначить этому проекту несколько объектов экспорта. Следует отметить, что на объект экспорта можно ссылаться только один раз. Если он выделен в этом проекте CMOD, объект экспорта не может быть перераспределен в других проектах CMOD:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Затем нажмите кнопку компонента, система перейдет на страницу объекта списка компонентов, на которой перечислены функции экспорта, соответствующие всем объектам экспорта. Из На этой странице вы можете увидеть, активированы ли объекты проекта и экспорта. :

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Дважды щелкните функцию EXIT_SAPMV45A_003, чтобы войти в редактор функций, а затем дважды щелкните зарезервированную программу включения.ZXVVAU05, Появится предупреждение, нажмите Enter, чтобы создатьZXVVAU05:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

В файл ZXVVAU05 можно добавить следующий код:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Наконец, необходимо активировать проект CMOD и объект экспорта SMOD, чтобы этот фрагмент кода выполнялся при создании заказа на продажу через VA01.

Используйте системные функции, чтобы найти улучшения

MODX_ALL_ACTIVE_MENUENTRIES (улучшение меню)

MODX_FUNCTION_ACTIVE_CHECK (Проверьте, активирован ли пользовательский выход E-type)

Установите точку останова в операторе оценки. Если tfdir-mand = aktiv_flag в функции MODX_FUNCTION_ACTIVE_CHECK, а затем запустите код транзакции, который должен найти выход. Если есть улучшения, он автоматически перейдет в интерфейс DEBUG. Если активный флаг функции выхода = ‘X’, это означает Программа выхода пользователя активирована, и логика обработки будет перенесена из стандартной программы в функцию выхода. В интерфейсе DEBUG просмотрите L_FUNCNAME、f_tab Подождите, пока появятся поля, отображаемый здесь Smod представляет собой список всех элементов расширения этого TCODE (список функций экспорта), эти улучшения относятся к форме EXIT_XXXXXX_XXX. Что касается того, как проверить, к какому SMOD принадлежит это расширение, вы можете самостоятельно обратиться к таблице MODSAP (SAP Enhancements), как показано ниже:MIGOСкриншот того времени, нашел свою функцию экспорта EXIT_SAPLEINR_001:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

MODX_MENUENTRY_ACTIVE_CHECK(экзаменСтатус расширенной активации типа C)

MODX_SUBSCREEN_ACTIVE_CHECK (Проверить статус расширенной активации типа S)

Второе поколение расширяет несколько важных таблиц

MODSAPТаблица расширения SAP, функция экспорта (таблица отношений с точкой расширения, важные поля включают функцию экспорта, точку расширения, тип расширения (E C S T)

TFDIRТаблица функционального модуля, в которой хранится имя функции выхода и информация о том, активирована ли она (тип E)

TFTITКраткий текст функции функции

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

TSDIRЗоны Dynpro ЗВОНИТЕ КЛИЕНТУ ПОД ЭКРАН (улучшение экрана, тип S)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

CUATEXTSИнтерфейс графического интерфейса пользователя: измененные тексты меню (улучшение текста меню графического интерфейса, тип C)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

MODATTRАтрибуты проекта улучшения SAP

TADIRКаталог объектов библиотеки ресурсов

Третье поколение: на основе класс Улучшение (BADI)

Основная технология заключается в реализации улучшения на основе объектов ABAP.

BADIТехническое обслуживание осуществляется SE18 、SE19 Дела приходят на поддержание. SE18 используется для создания и поддержки объектов BADI; SE19 используется для поддержки экземпляров BADI, а именно реализации

SAP BADI может не только улучшать стандартную систему, но также может быть вызван непосредственно в пользовательской программе.

Усовершенствования исходного кода выпускаются как интерфейсы

Улучшение третьего поколения(На основе расширенного BADI (бизнес-надстройки) объектно-ориентированной концепции) исходный код выпускается в форме интерфейса через вызов метода интерфейса. Улучшение пользователя фактически реализует один или несколько классов реализации на основе этого интерфейса. Поскольку класс интерфейса на самом деле является абстрактным классом, для одного и того же расширения будут отображаться разные исходные коды. Эти разные исходные коды проходят через фильтр (адаптер ) Чтобы различать те, которые используются в разных бизнес-сценариях. Это улучшение достигается с помощью SE18 SE19.

1. Информация об объектах BADI хранится в четырех таблицах SXS_INTER, SXC_EXIT, SXC_CLASS и SXC_ATTR.

2. Основная программа будет называтьсяcl_exithandler=> get_instance, чтобы определить, существует ли объект, и вернуть экземпляр. Мы можем Откройте редактор классов В se24 введите класс CL_EXITHANDLER и введите метод get_instance, установите точку останова, запустите tcode, посмотрите значение exit_name, это тот BADI, который вы ищете 。

3. Просмотр se37SXV_GET_CLIF_BY_NAME, Установите точку останова и просмотрите значение имени.

1) Выберите трассировку SQL, трассировку буфера, затем активируйте трассировку, запустите TCODE, деактивируйте трассировку

2) отобразить трассировку, отобразить диалоговое окно отображения трассировки, добавить V_EXT_IMP и V_EXT_ACT в поле таблицы

3) Проверьте строку, начинающуюся с IF_EX_, которая является именем класса интерфейса, и BADI после IF_EX_. Например, IF_EX_EQUI_UPDATE

6. Se18 находит интерфейс, а se19 реализует интерфейс для улучшения пользователя.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Четвертое поколениеФактически третье поколение улучшенной платформы коммутации

Ограничения именования BADI

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

BADI DEFINITIONСоглашения об именах в

l Badi definition: or z or /../

l Interface:IF_EX_ or ZIF_EX_ or /../IF_EX_

l Generated badi class(adapter class) cl_ex_ or zcl_ex_ or /../cl_ex_

Условные обозначения в РЕАЛИЗАЦИИ BADI

l BADI implementation or z or /../

l Interface: IF_EX_ or ZIF_EX_ or /../IF_EX_

l Методы: определены в определении Бади

l Implementing class:CL_IM_ ZCL_IM_ /../CL_IM_

Создать собственный BADI (SE18)

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

BADI Объект сделанинтерфейспротивдостичьСостав, создание интерфейса BADI и редактирование интерфейса ниже :

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Начать нижеСоздайтеВнедрение BADI и редактирование классов реализации:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

После подтверждения войдите на страницу реализации расширения:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Дважды щелкните «Реализация класса», чтобы войти в интерфейс редактирования класса реализации:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Нажмите «Да», чтобы войти в редактор классов для редактирования класса реализации:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Созданный BADI можно вызвать прямо в программе ABAP:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

BADI два творения (новый стиль, классический) и два метода вызова

1. Вызов метода напрямую cl_exithandler => get_instance

2. Используйте инструкцию GET BADI.

GET BADI handle
Имя фильтра, определенное в FILTERS «SE18, используется здесь как имя параметра.
filter1 = ‘C’.

BADI в двух вышеуказанных методах вызова имеет следующие отличия:

1. Два метода создания BADI различны.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Бади содержит компоненты улучшения, которые в основном включают в себя следующие компоненты:

l Program enhancements : Усовершенствования программы реализованы с помощью методов интерфейса, а программа SAP вызывает методы интерфейса созданного класса badi.

l Menu enhancements : То же, что и программа клиента, код функции может быть сохранен в бади. Эти пункты меню были определены в определении графического интерфейса пользователя и их можно увидеть в реализованном бади.

l Screen enhancements : Как и в случае с программой для клиентов, вы можете поддерживать улучшения экрана в бади.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Или создайте реализацию через SE19

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Определение BADI в методе 2 создается непосредственно в SE18 путем выбора области улучшения, а реализация BAdi может быть создана непосредственно в созданной области улучшения через SE19 или напрямую.

Примечание: Если вы выберете BAdI Name для создания BAdi в SE18, система сообщит об ошибке «Операция« Создать »возможна только для мест улучшения». Метод 2 см. Здесь

2. В процедуре способ 1zif_ex__badidef_baditest2Из определения BAdi Interface name

Z_BADI_CALC_VAT в методе 2 напрямую BAdi Definition name

Для BAdi, созданного в методе 1, если он вызывается программой метода 2, при активации будет сообщено об ошибке и отобразится запрос «Тип **** неизвестен», и если тип REF TO будет изменен на Имя интерфейса, ошибка также будет сообщена во время активации. Подсказка «HANDLE» ist kein gultiges BAdI-Handle «

Если BAdi, созданный в методе 2, вызывается программой в методе 1, программа может быть активирована, но при запуске она будет сброшена, и возникнет ошибка времени выполнения «Исключительное условие« DATA_INCONS_IN_EXIT_MANAGEM ».

При использовании метода 2 для создания BAdi, если «Многократное использование» не выбрано, при создании более одной Реализации будет выдана ошибка, и две Реализации будут активированы одновременно.

Решение Поставить на первое место Выберите «Многократное использование», а затем удалите его позже. не важно

2. Call fallback if no implementation is executed

Эта опция используется, когда BAdi не выполняет какую-либо реализацию, пример реализации вступит в силу.

Для этой функции вам нужно сначала создать фильтр, а затем выбрать реализацию, для которой требуется фильтр, и дважды щелкнуть реализацию, чтобы установить ее.

Зависимый от фильтра Фильтр

Когда БАДИКогда существует несколько классов реализации для определенной версии реализации, в это время, если вы хотите вызвать указанный класс при вызове, вам необходимо добавить параметр фильтра, который по существу используется его прокси-классом, и прокси-класс перейдет к Создайте экземпляр соответствующего класса.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Масштабируемость типа фильтра ограничивается следующими аспектами:

l Домен, на который ссылается тип фильтра, должен соответствовать следующим условиям:

Класс поставки этих двух таблиц должен быть E или S.

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Проверить зависимость от фильтраПосле выбора мы увеличиваем значение фильтра для реализации:

что такое badi в sap. Смотреть фото что такое badi в sap. Смотреть картинку что такое badi в sap. Картинка про что такое badi в sap. Фото что такое badi в sap

Резюме BADI

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *