При вызове программы через SUBMIT, селекционный экран которой имеет динамические параметры, используем дополнение WITH FREE SELECTIONS lt_texpr, где lt_texpr имеет тип rsds_texpr. В следующем примере вызываем программу для транзакции FBL1N и передаём в динамический параметр "Блокировка платежа" значение "A".
DATA:
lv_sydatum TYPE sy-datum,
lt_items TYPE it_rfposxext,
lt_trange TYPE rsds_trange,
lt_texpr TYPE rsds_texpr.
FIELD-SYMBOLS:
<lfs_trange> LIKE LINE OF lt_trange,
<lfs_frange> LIKE LINE OF <lfs_trange>-frange_t,
<lfs_selopt> LIKE LINE OF <lfs_frange>-selopt_t.
lv_sydatum = sy-datum.
INSERT INITIAL LINE INTO TABLE lt_trange ASSIGNING <lfs_trange>.
<lfs_trange>-tablename = 'BSIK'.
INSERT INITIAL LINE INTO TABLE <lfs_trange>-frange_t ASSIGNING <lfs_frange>.
<lfs_frange>-fieldname = 'ZLSPR'.
INSERT INITIAL LINE INTO TABLE <lfs_frange>-selopt_t ASSIGNING <lfs_selopt>.
<lfs_selopt>-sign = 'I'.
<lfs_selopt>-option = 'EQ'.
<lfs_selopt>-low = 'A'.
CALL FUNCTION 'FREE_SELECTIONS_RANGE_2_EX'
EXPORTING
field_ranges = lt_trange
IMPORTING
expressions = lt_texpr.
SUBMIT rfitemap
WITH kd_bukrs IN s_bukrs " БЕ
WITH kd_lifnr IN s_lifnr " Кредитор
WITH pa_stida EQ lv_sydatum " Открытые на отчетную дату
WITH pa_vari EQ '1SAP' " Формат
WITH x_aisel EQ '' " Все позиции
WITH x_apar EQ '' " Позиции дебиторов
WITH x_clsel EQ '' " Выровненные позиции
WITH x_merk EQ '' " Памятные позиции
WITH x_norm EQ 'X' " Стандартные позиции
WITH x_opsel EQ '' " Открытые позиции
WITH x_park EQ '' " Предв. зарегистрированные
WITH x_shbv EQ '' " Операции Особой главной книги
WITH FREE SELECTIONS lt_texpr
EXPORTING LIST TO MEMORY
AND RETURN.
Комментариев нет:
Отправить комментарий