Выдрал с LCOKO1F81, позволяет создавать партии, можно использовать в БАДишках, например MB_DOCUMENT_BADI - MB_DOCUMENT_BEFORE_UPDATE You are not allowed to view links.
Register or
Login, до конца не раскопал, думаю если раскопаю, то вопрос по сылке выше решится. А пока небольшой примерчик, кусок кода который вызывается в MB_DOCUMENT_BADI - MB_DOCUMENT_BEFORE_UPDATE и меняет входящую табличку wa_xmseg:
SELECT SINGLE * INTO ls_mcha FROM mcha WHERE charg = wa_xmseg-charg AND
matnr = wa_xmseg-matnr AND werks = wa_xmseg-werks.
IF sy-subrc = 0. " Найдено
clear ls_mcha-charg.
CLEAR ls_mcha-bwtar. " не знаю вроде бы так или наоборот ... clear valuation type in case of single batch valuation
CALL FUNCTION 'VB_CREATE_BATCH'
EXPORTING
ymcha = ls_mcha
new_lgort = wa_xmseg-lgort
bypass_lock = space
x_bncom = xbncom
kzcla = 'X' "ls_tco43-kzcla - возможность классификации, упростил см LCOKO1F81 там выбор по транзакции и профилю производства
xkcfc = space " ls_tco43-xkcfc
no_change_of_bwtar = space " yx
IMPORTING
ymcha = ls_mcha
TABLES
new_batch = gt_mcha
new_batch_stoloc = gt_mchb
EXCEPTIONS
OTHERS = 01.
wa_xmseg-charg = ls_mcha-charg.
wa_xmseg-bwtar = ls_mcha-bwtar.
Параметры:
ymcha - партия для товара (может ошибаюсь)
new_lgort - склад для партии
bypass_lock - рабочие поля для списков (выбор и вывод на экран)

x_bncom -Нумерация партий: блок связи (диалог)

KZCLA - Возможность классификации партий
XKCFC - Расширенная классификация посредством CFC (Программы пользователя)
no_change_of_bwtar - не менять Вид оценки
CLASS - судя по всему, класс, т.е. можно задать сразу код класса
По коду LCOKO1F81, можно найти более подробный пример, который как бы решает мой вопрос, правда еще надо разбирается, как только разберу - отпишусь