Добрый день.
Для прописания полей FM-контировок (фин.поз, фонд, ПФМ, функ.сфера и бюдж.период)
использую метод PROCESS_ACCOUNT BADI ME_PROCESS_REQ_CUST.
При заполнении полей на вкладке контировка тр. ME52N выполняется мой код в методе,
но проблема в том, что поля все равно не изменяются .
Пример кода в методе PROCESS_ACCOUNT.
Code:
* fmderive-commit_item - финансовая позиция.
* fmderive-fund - фонд.
* fmderive-fund_center - ПФМ.
* fmderive-function_area - функциональная сфера.
* fmderive-BUDGET_PERIOD - бюджетный период.
"получаем данные контировок (параметр - IM_ACCOUNT)
LS_EXKN = IM_ACCOUNT->get_exkn( ).
LS_EXKNX = IM_ACCOUNT->get_exknx( ).
"заменяем новыми значениями
LS_EXKN-fipos = fmderive-COMMIT_ITEM.
LS_EXKN-FISTL = fmderive-FUND_CENTER. "ПФМ
LS_EXKN-GEBER = fmderive-FUND.
LS_EXKN-FKBER = fmderive-FUNCTION_AREA.
LS_EXKN-BUDGET_PD = fmderive-BUDGET_PERIOD.
LS_EXKNX-fipos = 'X'.
LS_EXKNX-FISTL = 'X'.
LS_EXKNX-GEBER = 'X'.
LS_EXKNX-FKBER = 'X'.
LS_EXKNX-BUDGET_PD = 'X'.
* сохраняем данные контировок
IM_ACCOUNT->set_exkn( LS_EXKN ).
IM_ACCOUNT->set_exknx( LS_EXKNX ).
* получаем данные контировок (параметр - IM_ACCOUNT_REF
LS_EXKN = IM_ACCOUNT_REF->GET_DATA( ).
LS_EXKN-fipos = fmderive-COMMIT_ITEM.
LS_EXKN-FISTL = fmderive-FUND_CENTER.
LS_EXKN-GEBER = fmderive-FUND.
LS_EXKN-FKBER = fmderive-FUNCTION_AREA.
LS_EXKN-BUDGET_PD = fmderive-BUDGET_PERIOD.
IM_ACCOUNT_REF->set_data( LS_EXKN ).
Может кто сталкивался с подобной проблемой?