странно както: внутри user_command по нажатии на кнопку хочу отменить текущий алв-фильтр (если он есть). Сортировка к примеру без проблем меняется связкой REUSE_ALV_GRID_LAYOUT_INFO_GET + REUSE_ALV_GRID_LAYOUT_INFO_SET
А вот фильтр почемуто игнорируется (sy-subrc = 0 после вызова ФМ, но на экране изменений фильтра не наблюдается)
Что не так?
CALL FUNCTION 'REUSE_ALV_GRID_LAYOUT_INFO_GET'
IMPORTING
ET_SORT = gsort[]
ET_FILTER = gfilt[]
EXCEPTIONS
NO_INFOS = 1
PROGRAM_ERROR = 2
OTHERS = 3.
* отладка
loop at gsort into hsort.
endloop.
loop at gfilt into hfilt.
endloop.
* стандартная сортировка по номеру ПП
clear: hsort,gsort,gsort[].
hsort-SPOS = 1.
hsort-FIELDNAME = 'F1'.
hsort-TABNAME = 1.
hsort-UP = 'X'.
hsort-COMP = 'X'.
append hsort to gsort[].
* отменяем все ALV-фильтры
describe table gfilt[] lines n.
if ( n > 0 ).
clear: gfilt,gfilt[].
CALL FUNCTION 'REUSE_ALV_GRID_LAYOUT_INFO_SET'
EXPORTING
IT_SORT = gsort[]
IT_FILTER = gfilt[].
endif.
sel_lin-refresh = 'X'.