Добрый день.
Есть редактируемый АЛВ грид.
При сохранении изменений (обрабатываются событие data_changed) нужно изменять содержимое поля на экране.
В дебагере вижу что нахожусь в ПАИ логике, но поскольку ПБО не отрабатывает, содержимое поля на экране не обновляется ;(
leave to screen прерывает логику АЛВ.
DYNP_VALUES_UPDATE тоже не помогает, смотрел в дебагере, мне кажется, что он должен работать только если вызывать из самого репорта.
Code:
METHOD update_cart_description .
CONSTANTS: struct_name TYPE tabname VALUE 'CART_DESC'.
DATA: cart_desc TYPE zctlg_s_cart_desc.
CALL METHOD materials_cart->get_cart_description
IMPORTING
cart_description = cart_desc.
*------- чтобы отработала экранная логика
MOVE cart_desc TO me->description_struct_ref->*.
DATA: lt_dynpfields TYPE TABLE OF dynpread,
wa_dynpfield TYPE dynpread.
data: tmp_char(15) type c.
wa_dynpfield-fieldname = 'CART_DESC-SUMM'.
wa_dynpfield-fieldvalue = tmp_char = CART_DESC-SUMM.
APPEND wa_dynpfield TO lt_dynpfields.
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
dyname = sy-cprog
dynumb = sy-dynnr
TABLES
dynpfields = lt_dynpfields.
* EXCEPTIONS
* INVALID_ABAPWORKAREA = 1
* INVALID_DYNPROFIELD = 2
* INVALID_DYNPRONAME = 3
* INVALID_DYNPRONUMMER = 4
* INVALID_REQUEST = 5
* NO_FIELDDESCRIPTION = 6
* UNDEFIND_ERROR = 7
* OTHERS = 8
.
ENDMETHOD.
на выходе sy-subrc = 0.
me->description_struct_ref указатель на структуру из программы.
В репорте соответсвующая структура объявлена.
Code:
REPORT zctlg_catalog MESSAGE-ID zcl_catalog_output.
DATA: cart_desc TYPE zctlg_s_cart_desc.
Подскажите как обойти можно.
PS суммирование не подходит, поскольку содержимое ALV в процессе работы меняется и не раз.