Одному клиенту понадобилось изменить расчет скидки при реализации товаров.
Для расчета используется стандартная схема калькуляции RVAB02. Скидка рассчитывается в условии K020.
Для реализации нового способа расчета скидки можно создать новую формулу и указать её использование для данного условия.
Создание новой формулы расчета можно выполнить в транзакции VOFM
В данной транзакции выбираем пункт меню «Формулы» — «Стоимость условия»

По документации SAP, для формул клиента рекомендуется использовать диапазон 600-999

После генерации новой программы по двойному клику можно зайти в исходный текст новой формулы

Для удобства разработки можно выключить Ассистента модификаций. Для этого нужно выбрать меню «Обработать» — «Операции модификации» — «Выключить ассистент»
При выключенном ассистенте модификаций можно приступать к программированию формулы в соответствии пожеланий клиента

В данный момент нам доступна структура KOMP для работы с текущим условием, таблица XKOMV для работы со условиями по данной позиции документа.
Для доступа к таблице условий всех позиций необходимо обращаться к памяти
Результат расчета суммы по данному условию нужно помещать в переменную xkwert.
После разработки формулы она остаётся не активной

Для её активации необходимо выделить строку и выбрать пункт меню «Обработать» — «Активировать»
Теперь можно прописать данную формулу в нужное условие. Для этого в транзакции VOK0 откроем используемую схему калькуляции

Найдем нужное условие и укажем расчет по нужной формуле
