Пытаюсь загрузить роли с помощью ФМ, имитирующего IDOC. Таблицу данных заполняю вот так:
Code:
loop at gt_knvv into l_knvv where kunnr = number.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = l_knvv-kunnr
IMPORTING
OUTPUT = l_knvv-kunnr.
move-corresponding l_knvv to l_e1knvvm.
** Segment einfügen
l_edidd-mandt = sy-mandt.
l_edidd-segnam = c_segnam_e1knvvm.
l_edidd-sdata = l_e1knvvm.
l_edidd-docnum = l_edidc-docnum.
APPEND l_edidd TO lt_edidd.
loop at gt_knvp into l_knvp where kunnr = number and
vkorg = l_knvv-vkorg and
vtweg = l_knvv-vtweg and
spart = l_knvv-spart.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = l_knvp-kunnr
IMPORTING
OUTPUT = l_knvp-kunnr.
* move-corresponding l_knvp to l_e1knvpm.
l_e1knvpm-msgfn = '009'.
* l_e1knvpm-vkorg = l_knvv-vkorg.
* l_e1knvpm-vtweg = l_knvv-vtweg.
* l_e1knvpm-spart = l_knvv-spart.
l_e1knvpm-parvw = l_knvp-parvw.
* l_e1knvpm-kunn2 = l_knvp-kunn2.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = l_knvp-kunn2
IMPORTING
OUTPUT = l_e1knvpm-kunn2.
** Segment einfügen
l_edidd-mandt = sy-mandt.
l_edidd-segnam = c_segnam_e1knvpm.
l_edidd-sdata = l_e1knvpm.
l_edidd-docnum = l_edidc-docnum.
APPEND l_edidd TO lt_edidd.
endloop.
endloop.
В таблице gt_knvp - одна строчка:
KUNNR 111226
VKORG 4000
VTWEG 01
SPART 00
PARVW RG
KUNN2 111226
При этом дебитор для этого рынка сбыта еще не создан, так что и в таблице gt_knvv строчка с таким ключом есть.
IDOC мне пишет буквально следующее: "Удаление запрещено: AG явл. обязательной ролью партнера"
Что-то никак не соображу, в чём тут дело, кто-нибудь может подсказать?