Вызов события нажатия кнопки после submit.

Автор insaf121, Грудень 04, 2012, 02:57:30 ПП

Попередня тема - Наступна тема

0 Користувачі і 1 Гість дивляться цю тему.

insaf121

Ну собственно в названии темы все и сказано :)
Нужно во время работы программы вызвать другую программу и чтобы она обработала данные.
Делаю так.

FIELD-SYMBOLS: <provod_dokum2> LIKE LINE OF provod_dokum2.
  DATA: BEGIN OF rspar_tab OCCURS 0,
    SIGN   LIKE  rsparams-SIGN,
    option LIKE rsparams-option,
    low     LIKE rsparams-low,
    High    LIKE rsparams-High.
  DATA: END OF rspar_tab.

   DATA    rspar_tab_wa LIKE LINE OF rspar_tab.
  LOOP AT provod_dokum2 ASSIGNING <provod_dokum2>.
    rspar_tab_wa-SIGN   = 'I'.
    rspar_tab_wa-option = 'EQ'.
    rspar_tab_wa-low    = <provod_dokum2>-z_1 .
    APPEND rspar_tab_wa TO rspar_tab.
  ENDLOOP.

  SUBMIT Z_EXEC_OTPUSK USING SELECTION-SCREEN '1000' WITH S_VBELN IN rspar_tab AND RETURN.


В итоге он проходит в дальнейшую логику той проги, а там грид на котором нужно выбрать все записи и нажать кнопку.

Не знаю что делать :(
Есть вариант через пакетник, но там есть свои проблемы при подаче входных значений.

Uukrul

Модифицировать вызываемую программу, так как она у тебя Z, так что если ее вызывают из фонового процесса, то она бы не выводила все записи в таблицу а просто например через шаредмемори возвращала их и завершалась, т.е. в обход вывода таблицы. Если программа не твоя, тогда можно пойти путем описанным тут: http://sapforum.biz/index.php?topic=543.0

insaf121


Uukrul

Цитата: insaf121 від Грудень 05, 2012, 07:45:32 ДП
А как узнать фоновый режим или нет?
sy-batch = "X", если программа работает в фоне.

insaf121

Спасибо  :)
Подозревал что это оно, но не знал точно. А как кроме как в отладчике можно посмотреть структуру sy?

Uukrul

Цитата: insaf121 від Грудень 05, 2012, 11:43:42 ДП
А как кроме как в отладчике можно посмотреть структуру sy?
Структуру SYST смотри

insaf121

#6
Спасибо  ;D