Текущее время: Пн, июл 21 2025, 14:57

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: call tranzation c продолжением
СообщениеДобавлено: Ср, дек 13 2006, 00:07 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 28 2006, 00:24
Сообщения: 18
В программе вызывается транзакция создания заказа. После того, как она отработает, необходимо получить номер этого заказа и сделать с ним еще некоторые манипуляции. Если поставить точку останова и пошагово пройтись, то все будет работать. Если же все точки останова убрать, то программа ничего не будет делать после создания заказа. Как быть?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: call tranzation c продолжением
СообщениеДобавлено: Ср, дек 13 2006, 00:35 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
женечка2 написал(а):
В программе вызывается транзакция создания заказа. После того, как она отработает, необходимо получить номер этого заказа и сделать с ним еще некоторые манипуляции. Если поставить точку останова и пошагово пройтись, то все будет работать. Если же все точки останова убрать, то программа ничего не будет делать после создания заказа. Как быть?


Ну наверное привести вырезки текстов программы сестра... а то знаете как то мыслескоп на таких расстояниях барахлит... Вообще-то наверное GET PARAMETERS <код параметра>, только вот что за заказ... в общем пишем подробненько или ковыряемся сами.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 01:04 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, мар 09 2006, 10:12
Сообщения: 565
Откуда: Волгодонск
Пол: Мужской
Почти наверняка просто update process не успевает отработать.
самое простое и не совсем правильное сделать задержку (WAIT UP TO 1 SECONDS) после завершения транзакции, ещё к этому можно прибавить скобление базы данных на предмет появления в ней создаваемого заказа.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 01:32 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 28 2006, 00:24
Сообщения: 18
DKiyanov написал:
Почти наверняка просто update process не успевает отработать.
самое простое и не совсем правильное сделать задержку (WAIT UP TO 1 SECONDS) после завершения транзакции, ещё к этому можно прибавить скобление базы данных на предмет появления в ней создаваемого заказа.


скорей всего, что не успевает.
у меня стояло
commit work and wait.

но он не срабатывает.

а каким образом добавить "скобление базы данных "?
как вариант, посмотреть, что возвращаемый GET PARAMETERS не постой.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 09:06 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
К вышесказанногму - требуется указать режим обновления 'L' при call transaction.
Вообще, я бы порекомендовал посмотреть в сторону Workflow... :roll:

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 12:59 
Специалист
Специалист

Зарегистрирован:
Чт, июн 23 2005, 18:05
Сообщения: 119
В данной транзакции наверное имеется COMMIT в каком-то цикле. Который прерывает работу CALL TR... Т.е. первую итерацию в отладке вы видели а последующие были прерваны.
Чтобы этого не было используйте параметр RACOMIT при вызове тр.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 15:04 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
был такой трабл
и update 'S' стоит и commit work and wait и bapi commit и даже wait up to 1 секунда .... и все равно бывает проскакивает=)

Ники, можно про 'L' (local update) - поподробнее? чего то в хелпе ничего об этом

_________________
полный SAPец


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

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
L означает, что все обновления будут выполнены в рамках той же задачи (т.е. локально), а не в отдельной задаче обновления. Это гарантирует, что к моменту выхода из CALL TRANSACTION все обновления буду завершены и все lock'и освобождены.

Тот же эффект дает SET UPDATE TASK LOCAL перед вызововм BAPI, который содержит вызовы функций IN UPDATE TASK.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 16:21 
Ассистент
Ассистент

Зарегистрирован:
Вт, апр 11 2006, 14:45
Сообщения: 25
CALL TRANSACTION ... MESSAGES INTO msgtab
с последующим поиском в msgtab сообщения с типом 'S' и номером сохраненного документа спасет отца русской демократии

по крайней мере у меня так проблема решилась, WAIT UP To 1 SECOND далеко не всегда хватает.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, дек 13 2006, 16:38 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
sap_r357 написал(а):
CALL TRANSACTION ... MESSAGES INTO msgtab
с последующим поиском в msgtab сообщения с типом 'S' и номером сохраненного документа спасет отца русской демократии

Если после выполнения с документом нужно еще что-то делать и UPDATE не 'L', то не спасет - проверено не один раз.

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


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

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
Да, надо читать конкретный мессадж - он всегда одинаковый. И из него и брать заказ.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, дек 15 2006, 01:40 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, мар 09 2006, 10:12
Сообщения: 565
Откуда: Волгодонск
Пол: Мужской
Galka написала:
Да, надо читать конкретный мессадж - он всегда одинаковый. И из него и брать заказ.


Толку то. проблема не в том что-бы №заказа определить, а в том что с созданым заказам надо ещё чтот-то сделать, а его еще нет в базе данных - т.к. данные туда попадают через update task process, а он ещё не сработал.


Огромное спасибо nicky555 и Сергей Королев за L - задолбался уже на эти грабли наступать.


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

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
DKiyanov написал:
Огромное спасибо nicky555 и Сергей Королев за L - задолбался уже на эти грабли наступать.

Ну я бы объектики блокирования все таки проверил бы... а то иногда и L, зараза подводит при массовой заливке...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, дек 19 2006, 00:30 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 28 2006, 00:24
Сообщения: 18
DKiyanov написал:
Galka написала:
Да, надо читать конкретный мессадж - он всегда одинаковый. И из него и брать заказ.


Толку то. проблема не в том что-бы №заказа определить, а в том что с созданым заказам надо ещё чтот-то сделать, а его еще нет в базе данных - т.к. данные туда попадают через update task process, а он ещё не сработал.


Огромное спасибо nicky555 и Сергей Королев за L - задолбался уже на эти грабли наступать.


всем спасибо и за ответ на мой вопрос и за другие дельные идеи. номер заказа определяется селектом по соответствующей таблице до победного. в какой-то момент он туда все же попадает


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

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Лучше воспользоваться советом Uukrul.
Подробнее - наhelp.sap.com

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

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


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

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


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

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