Д-р Айболит написал(а):
Активировал расширение MEREQ001, функции EXIT_SAPLMEREQ_001 и EXIT_SAPLMEREQ_003, добавил в табличку EBAN нужные поля, нарисовал их на подъэкранчике. В функции EXIT_SAPLMEREQ_003 использую метод параметра для передачи данных в основную программу:
CALL METHOD im_req_item->set_data
EXPORTING
im_data = l_mereq_item.
На экране все нормально, при перемещении между позициями заявки данные в полях запоминаются и отображаются затем правильно. После сохранения заявки, сохранения моих полей в табличке не происходит.
В чем проблема то??? Чего мои поля не сохраняются? Кто уже сталкивался?
У меня примерно так реализовано и все работает:
1. Глобальные данные
Include: LXM02TOP-->ZXM02TOP:
Code:
*----------------------------------------------------------------------*
* INCLUDE ZXM02TOP *
*----------------------------------------------------------------------*
data: ci_eban type ci_ebandb,
*ci_eban type ci_ebandb,
gf_aktyp type aktyp.
2.ФМ exit_saplmereq_001Code:
data: ls_mereq_item type mereq_item.
if im_req_item is initial.
clear: ci_eban, *ci_eban.
else.
ls_mereq_item = im_req_item->get_data( ).
move-corresponding ls_mereq_item to ci_eban.
move-corresponding ls_mereq_item to *ci_eban.
endif.
if not im_req_item is initial.
gf_aktyp = im_req_item->get_activity( ).
endif.
3. ФМ EXIT_SAPLMEREQ_003Code:
data: ls_mereq_item type mereq_item.
if not im_req_item is initial.
ls_mereq_item = im_req_item->get_data( ).
if ci_eban ne *ci_eban.
move-corresponding ci_eban to ls_mereq_item.
call method im_req_item->set_data( ls_mereq_item ).
ex_changed = 'X'.
endif.
endif.
4. Поля на экране соответственно обозваны CI_EBAN-ZZ****