Текущее время: Пн, июл 28 2025, 01:17

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Чт, фев 11 2010, 18:23 
Ассистент
Ассистент

Зарегистрирован:
Пт, ноя 30 2007, 10:12
Сообщения: 47
Пол: Мужской
Для запуска использую ФМ ABAP4_CALL_TRANSACTION и подставляю в экран выбора значение из таблицы.
Но мне нужно сделать чтобы подставлялось не одно значение, а несколько.
Т.е. например при запуске транзакции в окне выбора проставились значения
123
234
Подскажите, пожалуйста, как возможно сделать.


Текст программы:
SPAGPA_TAB-PARID = 'FPS'.
SPAGPA_TAB-PARVAL = tabl-fipos.
append SPAGPA_TAB.

CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
EXPORTING
TCODE = 'Z_01000293'
SKIP_SCREEN = ''
TABLES
SPAGPA_TAB = SPAGPA_TAB
EXCEPTIONS
COMMUNICATION_FAILURE = MESSAGE MSG_TEXT
SYSTEM_FAILURE = MESSAGE MSG_TEXT.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Чт, фев 11 2010, 19:18 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
используйте submit и конечно же поиск

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Пт, фев 12 2010, 11:09 
Ассистент
Ассистент

Зарегистрирован:
Пт, ноя 30 2007, 10:12
Сообщения: 47
Пол: Мужской
спасибо за совет ghost.
Только один вопрос - как сделать чтобы отчет запустился в новом режиме?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Пт, фев 12 2010, 11:36 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Используйте Ваш ФМ. Только заполняйте не SPAGPA_TAB, а USING_TAB. А для нового сеанса добавьте STARTING NEW TASK при вызове.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Пт, фев 12 2010, 13:49 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
ABAP4_CALL_TRANSACTION - посмотрите код :) Этот ФМ наверное для этого и написан, что вызывать в отдельной сессий, ну или чтоб вызывать дистанционно. В общем чтоб был ФМ на простой код. :)


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Пт, фев 12 2010, 17:40 
Ассистент
Ассистент

Зарегистрирован:
Пт, ноя 30 2007, 10:12
Сообщения: 47
Пол: Мужской
Сделал следующим образом. Не совсем то, что ожидал. Вначале появляется в поле значение 123, а после нажатия на enter 234. А нужно чтобы подставилось сразу 123 и 234.
Поправьте меня если я не правильно cделал.

USING_TAB-PROGRAM = 'Y_REQ'.
USING_TAB-DYNPRO = '1000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'FIPOS-LOW'.
USING_TAB-FVAL = '123'.
append USING_TAB.
USING_TAB-PROGRAM = 'Y_REQ_PS_MORE'.
USING_TAB-DYNPRO = '1000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'FIPOS-LOW'.
USING_TAB-FVAL = '234'.
append USING_TAB.

CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
STARTING NEW TASK 'TEST'
EXPORTING
TCODE = 'Z_01000293'
SKIP_SCREEN = ''
TABLES
USING_TAB = USING_TAB
EXCEPTIONS
COMMUNICATION_FAILURE = MESSAGE MSG_TEXT
SYSTEM_FAILURE = MESSAGE MSG_TEXT.

Сделал через submit. Получается как нужно. Неужели нужно будет создавать ФМ?

MOVE: 'FIPOS' TO SELTAB_WA-SELNAME,
'FPS' TO SELTAB_WA-KIND,
'I' TO SELTAB_WA-SIGN,
'EQ' TO SELTAB_WA-OPTION,
'123' TO SELTAB_WA-LOW.
APPEND SELTAB_WA TO SELTAB.
MOVE: 'FIPOS' TO SELTAB_WA-SELNAME,
'FPS' TO SELTAB_WA-KIND,
'I' TO SELTAB_WA-SIGN,
'EQ' TO SELTAB_WA-OPTION,
'234' TO SELTAB_WA-LOW.
APPEND SELTAB_WA TO SELTAB.


SUBMIT Y_REQ
WITH SELECTION-TABLE SELTAB
VIA SELECTION-SCREEN
AND RETURN.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Сб, фев 13 2010, 07:51 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
По коду ФМ-а это обычный пакетник, когда Вы заполняете USING_TAB. Я думаю что надо делать так.
Например, запуск FS10N с двумя счетами.
Code:
DATA: USING_TAB like BDCDATA OCCURS 0 WITH HEADER LINE.

USING_TAB-PROGRAM = 'RFGLBALANCE'.
USING_TAB-DYNPRO = '1000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'SO_BUKRS-LOW'.
USING_TAB-FVAL = '9900'.
append USING_TAB.

USING_TAB-PROGRAM = 'RFGLBALANCE'.
USING_TAB-DYNPRO = '1000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'GP_GJAHR'.
USING_TAB-FVAL = '2008'.
append USING_TAB.

USING_TAB-PROGRAM = 'RFGLBALANCE'.
USING_TAB-DYNPRO = '1000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'BDC_OKCODE'.
USING_TAB-FVAL = '=%000'.
append USING_TAB.

USING_TAB-PROGRAM = 'SAPLALDB'.
USING_TAB-DYNPRO = '3000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'RSCSEL-SLOW_I(01)'.
USING_TAB-FVAL = '12520100'.
append USING_TAB.

USING_TAB-PROGRAM = 'SAPLALDB'.
USING_TAB-DYNPRO = '3000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'RSCSEL-SLOW_I(02)'.
USING_TAB-FVAL = '33900100'.
append USING_TAB.

USING_TAB-PROGRAM = 'SAPLALDB'.
USING_TAB-DYNPRO = '3000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'BDC_OKCODE'.
USING_TAB-FVAL = '=ACPT'.
append USING_TAB.

USING_TAB-PROGRAM = 'RFGLBALANCE'.
USING_TAB-DYNPRO = '1000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'BDC_OKCODE'.
USING_TAB-FVAL = '=ONLI'.
append USING_TAB.

CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
STARTING NEW TASK 'TEST'
EXPORTING
TCODE = 'FS10N'
SKIP_SCREEN = ''
mode_val = 'E'
TABLES
USING_TAB = USING_TAB.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Пн, фев 15 2010, 10:04 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Galych написал:
Сделал через submit. Получается как нужно. Неужели нужно будет создавать ФМ?

Да, для запуска в новом режиме нужно создать ФМ, внутри него вызвать submit

_________________
С уважением,
Удав.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Пн, фев 15 2010, 13:24 
Ассистент
Ассистент

Зарегистрирован:
Пт, ноя 30 2007, 10:12
Сообщения: 47
Пол: Мужской
спасибо Besa за совет. Но возник вопрос а как сделать если передаваемых значений больше 9?
Например, значение 20


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора  Тема решена
СообщениеДобавлено: Пн, фев 15 2010, 13:55 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Galych написал:
спасибо Besa за совет. Но возник вопрос а как сделать если передаваемых значений больше 9?
Например, значение 20

Ну можно например в буфер скинуть значения (cl_gui_frontend_services=>clipboard_export) и потом нажать кнопку "вставить из буфера" в многократном выборе :)
Можно щелкать по кнопке "вставить строку"...
Это изврат на самом деле. Этот модуль не для этого наверно придумали. Будет проще свой ФМ сделать и в него субмит завернуть как Вам уже посоветовали. Но если принципиально использовать именно этот ФМ то...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Вт, апр 26 2011, 12:12 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, май 19 2010, 12:10
Сообщения: 87
Galych написал:
спасибо Besa за совет. Но возник вопрос а как сделать если передаваемых значений больше 9?
Например, значение 20

понимаю тема не актуальна уже) но для будующих поколений вот еще тему нашел: viewtopic.php?f=13&t=63317&hilit=bdcdata


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Вт, апр 26 2011, 12:36 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, май 19 2010, 12:10
Сообщения: 87
Besa написал:
Code:
USING_TAB-PROGRAM = 'SAPLALDB'.
USING_TAB-DYNPRO = '3000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'RSCSEL-SLOW_I(01)'.
USING_TAB-FVAL = '12520100'.
append USING_TAB.

а вот эти вещи я так понял заполняются непосредственно при вызове 3000 экрана?
... потому получается если не вызовем экран.. то ничего не заполняется

upd/ а тут програмно они вызываются похоже... но вот только у меня при програмном вызове ок_кодов выскакивает окошко с подтверждением(

upd2/ эх... неужто нет гуманного способа заполнить рэнджы... (


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Вт, апр 26 2011, 13:19 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
[censored] написал(а):
Besa написал:
Code:
USING_TAB-PROGRAM = 'SAPLALDB'.
USING_TAB-DYNPRO = '3000'.
USING_TAB-DYNBEGIN = 'X'.
USING_TAB-FNAM = 'RSCSEL-SLOW_I(01)'.
USING_TAB-FVAL = '12520100'.
append USING_TAB.

а вот эти вещи я так понял заполняются непосредственно при вызове 3000 экрана?
... потому получается если не вызовем экран.. то ничего не заполняется

upd/ а тут програмно они вызываются похоже... но вот только у меня при програмном вызове ок_кодов выскакивает окошко с подтверждением(

upd2/ эх... неужто нет гуманного способа заполнить рэнджы... (
Гуманный способ - через вариант, а там или submit или ct, настроенную на данный вариант

_________________
"После" - не значит "вследствие"


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Вт, апр 26 2011, 13:27 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, май 19 2010, 12:10
Сообщения: 87
sy-uname написал(а):
Гуманный способ - через вариант, а там или submit или ct, настроенную на данный вариант

я вот уже пытаюсь.. только почем-то call function 'RS_HDSYS_CALL_TC_VARIANT' напрочь отказывается его запускать (


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запуск транзакции из другого приложения c подстановкой значений выбора
СообщениеДобавлено: Вт, апр 26 2011, 14:07 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, май 19 2010, 12:10
Сообщения: 87
все, спасибо, сабмит - рулит :) (для заполнения селекшин скрина)

Code:
data: <табл> type table of rsparams.
///
submit прог-нэйм with selection-table <табл>.


Последний раз редактировалось [censored] Вт, апр 26 2011, 15:01, всего редактировалось 1 раз.

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB