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

Часовой пояс: 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 часа


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

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


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

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