Всем добрый день! Пытаюсь написать программу пакетного ввода новых материалов с помощью BAPI_MATERIAL_SAVEDATA. Возникла маленькая проблемка с передачей данных одной из вкладок основной записи материала, а точнее ракурса бух.учёта. Ракурс то сам не создаётся, потому что возникает ошибка - Укажите код управления ценой, это одно из обязательных полей этого ракурса, но не могу понять как передать информацию о коде управления ценой, т.е. я пытаюсь передать код управления ценой V- среднескользящая цена, но судя по ошибке которую я смотрю в отладчике программа не может поставить и ругается. В инете много различного рода примеров создания материалов с использованием этого BAPI, и вроде бы местами мелькают примеры с использованием нужного мне ракурса. Значение поля передаётся в строке BAPI_MBEW-PRICE_CTRL = 'V', но безрезультатно. Может быть кто реализовывал? Буду весьма признателен. Вот собственно кусок кода программы использования этого BAPI
form call_bapi .
data: x type t134-numki,
ld_number type bapimathead-material,
objnum type objnum,
ld_error type c.
select single numki from t134 into (wa-numki) where mtart = wa-matl_type.
call function 'NUMBER_GET_NEXT'
exporting
nr_range_nr = wa-numki "Number range interval
object = 'MATERIALNR' "Number range object (SNRO)
* QUANTITY = '1' "No. of numbers
* SUBOBJECT = ' '
* TOYEAR = '0000'
* IGNORE_BUFFER = ' '
importing
number = ld_number
* QUANTITY =
returncode = ld_error
exceptions
interval_not_found = 1
number_range_not_intern = 2
object_not_found = 3
quantity_is_0 = 4
quantity_is_not_1 = 5
interval_overflow = 6
buffer_overflow = 7
others = 8.
bapimathead-material = ld_number."itab-MATERIAL.
bapimathead-ind_sector = 'C'.
"bapimatheadx-IND_SECTOR = 'C'.
bapimathead-matl_type = wa-matl_type.
bapimathead-basic_view = 'X'.
bapi_mara-matl_group = wa-matl_group.
bapi_mara-base_uom = wa-base_uom .
BAPI_MARA-DIVISION = '30'.
bapi_marax-matl_group = 'X'.
bapi_marax-base_uom = 'X'.
BAPI_MARAX-DIVISION = 'X'.
bapimathead-ACCOUNT_VIEW = 'X'.
bapimathead-purchase_view = 'X'.
* bapimathead-storage_view = 'X'.
bapimathead-warehouse_view = 'X'.
bapi_marc-plant = '3000'.
bapi_marcx-plant = bapi_marc-plant.
bapi_marcx-pur_group = 'X'.
bapi_marcx-base_qty = 'X'.
BAPI_MLGN-WHSE_NO = '001'.
BAPI_MLGNX-WHSE_NO = BAPI_MLGN-WHSE_NO.
BAPI_MBEW-VAL_CLASS = '15'.
BAPI_MBEWX-VAL_CLASS = 'X'.
BAPI_MBEW-VAL_AREA = '3000'.
BAPI_MBEWX-VAL_AREA = BAPI_MBEW-VAL_AREA.
BAPI_MBEW-PRICE_CTRL = 'V'.
BAPI_MBEWX-PRICE_CTRL = 'X'.
* BAPI_MBEW-STD_PRICE = '1'.
* BAPI_MBEWX-STD_PRICE = 'X'.
* BAPI_MLTX-TEXT_LINE = 'mbugoga'.
* bapi_mard-stge_loc = '001'.
* bapi_mardx-stge_loc = bapi_mard-stge_loc.
* bapi1003_key-classnum = itab-classnum.
*IT_BAPI-LANGU = ITAB-LANGU.
it_bapi-langu_iso = 'RU'.
it_bapi-matl_desc = wa-matl_desc.
append it_bapi.
clear it_bapi.
call function 'BAPI_MATERIAL_SAVEDATA'
exporting
headdata = bapimathead
clientdata = bapi_mara
clientdatax = bapi_marax
PLANTDATA = BAPI_MARC
PLANTDATAX = bapi_marcx
WAREHOUSENUMBERDATA = BAPI_MLGN
WAREHOUSENUMBERDATAX = BAPI_MLGNX
VALUATIONDATA = BAPI_MBEW
VALUATIONDATAX = BAPI_MBEWX
* MATERIALLONGTEXT = BAPI_MLTX
importing
return = it_return
tables
materialdescription = it_bapi.
concatenate 'Создание материала:' wa-matl_desc into msg separated by space.
perform indicator using msg 0.
call function 'BAPI_TRANSACTION_COMMIT' .
*---this is the message type which indicates whether it is failed or succeded
it1-type = it_return-type.
it1-number = it_return-number.
it1-id = it_return-id.
it1-message_v1 = it_return-message_v1.
it1-message_v2 = it_return-message_v2.
it1-message_v3 = it_return-message_v3.
it1-message_v4 = it_return-message_v4.
it1-message = it_return-message.
append it1.
clear it1.
objnum = ld_number.
wa-matnr = ld_number.
if wa-tnved is not initial.
add_class: objnum wa-tnved.
endif.
if wa-kpved is not initial.
add_class: objnum wa-kpved.
endif.
if wa-skp is not initial.
add_class: objnum wa-skp.
endif.
endform.
Ракурс бух.учёта активируется строкой bapimathead-ACCOUNT_VIEW = 'X'. При попытке запустить создание материала пишет что материал создан, но когда пытаешся потом просмотреть этот созданный материал MM03 пишет что Материала 68341 нет или он не активирован, когда в дебаге смотрю поле it_return-message пишет что Укажите управление ценой. Вот и не пойму я, что я не так сделал уже даже и не знаю. Стоит мне убрать поле bapimathead-ACCOUNT_VIEW = 'X' или закомментировать, то отрабатывает без ошибок, пишет материал такой то создан или расширен и потом этот материал просматривается и изменяется, но без ракурса бух.учёт.