Текущее время: Вт, июл 22 2025, 01:46

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


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

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


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

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