Текущее время: Вс, июл 20 2025, 22:17

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Запуск транзакции
СообщениеДобавлено: Пн, фев 19 2007, 14:39 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 11 2007, 09:32
Сообщения: 65
Здравствуйте.
Мне нужно запустить из ABAP-программы транзакцию в новом режиме. Возможно ли это и если да, то как?
Заранее спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 14:41 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Ср, сен 22 2004, 08:42
Сообщения: 1079
Откуда: Москва
Пол: Мужской
Используем поиск
http://sapboard.ru/forum/viewtopic.php?t=11478


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 14:42 
Гость
Code:
CALL FUNCTION 'TH_CREATE_MODE'
   EXPORTING
     TRANSAKTION = 'ZNAME_TRANSACTION'.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:10 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 11 2007, 09:32
Сообщения: 65
Пробую использовать этот кусок кода и у меня вылетает динамическая ошибка:

Exception condition "NO_AUTHORITY" raised.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:13 
Гость
пытаешься запустить транзакцию, на которую у тебя не полномочий.

Вот попробуй, например, указать транзакцию SU53


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:20 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 11 2007, 09:32
Сообщения: 65
Вообще-то я пытался запустить 'se38'. На нее права у меня 100% есть - прогу же я как-то пишу.
Попробовал по Вашему совету 'SU53' - та же ситуация...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:31 
Гость
а если вот так попробовать:

Code:
DATA: MODE LIKE SY-INDEX,
      OP(1) TYPE X VALUE 23.

MODE = 0.

CALL 'ThUsrInfo' ID 'OPCODE' FIELD OP
  ID 'TRANSACTION' FIELD 'SE38'
  ID 'MODE' FIELD MODE
  ID 'DEL_ON_EOT' FIELD 0.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:41 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 11 2007, 09:32
Сообщения: 65
А вот так работает :) Спасибо :)
И еще два вопроса вдогонку:
1. Что это за программа "ThUsrInfo" и где про нее можно почитать?
2. Мне нужно запускать транзакцию без первого экрана. Т.е. что-то типа
Code:
       
        SET PARAMETER ID 'BUK' FIELD 'xxx'.
        SET PARAMETER ID 'WEH' FIELD 'yyy'.
        CALL TRANSACTION 'FO31' AND SKIP FIRST SCREEN.

но соответственно в отдельном экране. Это возможно?[/code]


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:53 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
Тоже тема интересна, и в качестве дополнительного вопроса:
а как закрыть программно режим?
Ну чтобы такую логику сделать: открыл режим, программка или транзакция отработала и закрыл режим.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 15:56 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Коллеги, извините, что мы к вам обращаемся, но вот пример из документации:
Code:
DATA: MSG_TEXT(80) TYPE C. "Message text
...
* Asynchronous call to Transaction SM59 -->
* Create a new session CALL FUNCTION 'ABAP4_CALL_TRANSACTION' STARTING NEW TASK 'TEST'
  DESTINATION 'NONE'
  EXPORTING
      TCODE = 'SM59'
  EXCEPTIONS
    COMMUNICATION_FAILURE = 1 MESSAGE MSG_TEXT
    SYSTEM_FAILURE        = 2 MESSAGE MSG_TEXT.

  IF SY-SUBRC NE 0.
    WRITE: MSG_TEXT.
  ELSE.
    WRITE: 'O.K.'.
  ENDIF.

Найдено путем кнопки F1.

_________________
С уважением, Сергей Королев


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 16:00 
Гость
andix007 написал(а):
А вот так работает :) Спасибо :)
И еще два вопроса вдогонку:
1. Что это за программа "ThUsrInfo" и где про нее можно почитать?
2. Мне нужно запускать транзакцию без первого экрана. Т.е. что-то типа
Code:
       
        SET PARAMETER ID 'BUK' FIELD 'xxx'.
        SET PARAMETER ID 'WEH' FIELD 'yyy'.
        CALL TRANSACTION 'FO31' AND SKIP FIRST SCREEN.

но соответственно в отдельном экране. Это возможно?[/code]



1. Это внутренние функции, документация отсутствует

2.
Code:
SET PARAMETER ID 'BUK' FIELD 'xxx'.
SET PARAMETER ID 'WEH' FIELD 'yyy'.

CALL 'ThUsrInfo' ID 'OPCODE' FIELD OP
  ID 'TRANSACTION' FIELD '*FO31'
  ID 'MODE' FIELD MODE
  ID 'DEL_ON_EOT' FIELD 0.


обратите внимание на звездочку перед именем транзакции :)


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 16:02 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Ср, сен 22 2004, 08:42
Сообщения: 1079
Откуда: Москва
Пол: Мужской
Soulsurfer написал(а):
Тоже тема интересна, и в качестве дополнительного вопроса:
а как закрыть программно режим?
Ну чтобы такую логику сделать: открыл режим, программка или транзакция отработала и закрыл режим.

Есть парный модуль TH_DELETE_MODE.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 16:03 
Гость
Soulsurfer написал(а):
Тоже тема интересна, и в качестве дополнительного вопроса:
а как закрыть программно режим?
Ну чтобы такую логику сделать: открыл режим, программка или транзакция отработала и закрыл режим.



CALL FUNCTION 'TH_DELETE_MODE'.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 16:18 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 11 2007, 09:32
Сообщения: 65
РМщик написал(а):
2.
Code:
SET PARAMETER ID 'BUK' FIELD 'xxx'.
SET PARAMETER ID 'WEH' FIELD 'yyy'.

CALL 'ThUsrInfo' ID 'OPCODE' FIELD OP
  ID 'TRANSACTION' FIELD '*FO31'
  ID 'MODE' FIELD MODE
  ID 'DEL_ON_EOT' FIELD 0.


обратите внимание на звездочку перед именем транзакции :)


после выполнения этого кода (естественно с реальными данными вместо 'xxx' и 'yyy') у меня запускается в новом окне транзакция (как и требовалось без первого экрана), НО не с параметрами, которые я задаю здесь:
Code:
SET PARAMETER ID 'BUK' FIELD 'xxx'.
SET PARAMETER ID 'WEH' FIELD 'yyy'.

а с теми, которые установлены в первом окне по умолчанию...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 19 2007, 16:27 
Гость
не понял, что значит "в первом окне по умолчанию"?
по умолчанию как раз и берутся из set/get параметров


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

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


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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