Текущее время: Сб, июн 08 2024, 05:21

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Отложенный вызов ФМ
СообщениеДобавлено: Чт, мар 18 2021, 17:23 
Специалист
Специалист

Зарегистрирован:
Пн, мар 12 2012, 08:40
Сообщения: 226
Добрый день, можно ли запустить из abap-программы отложенный вызов ФМ. Чтобы ФМ запустился через 20 минут?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Отложенный вызов ФМ
СообщениеДобавлено: Чт, мар 18 2021, 17:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 20 2007, 18:21
Сообщения: 1613
Джобу запланируй программно

_________________
я твой сап эфай внедрял
BAdI-позитив
Взять немножечко абопу, сунь туда кошачью *опу, RFC лапки, БТ старой бабки, на медленном базиснике переносить, тестовое окружение материть, снимать SAT пенку, биться головой о стенку, охапка тайм-шитов, отчет готов!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отложенный вызов ФМ
СообщениеДобавлено: Чт, мар 18 2021, 17:56 
Специалист
Специалист

Зарегистрирован:
Пн, мар 12 2012, 08:40
Сообщения: 226
Kengur написал(а):
Джобу запланируй программно

Чтобы джоб запланировать, нужно же создать report, который будет вызывать ФМ. Проблема как передать report-у все параметры Функционального модуля(параметры ФМ сложные табличные типы)? А report может принимать только простые параметры через submit.

А вот такое решение является плохим: вызывать ФМ в режиме IN BACKGROUND TASK в асинхронном режиме и в самом ФМ делать wait на 20 минут?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Отложенный вызов ФМ
СообщениеДобавлено: Чт, мар 18 2021, 18:32 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4843
Откуда: Москва
Пол: Мужской
skaa написал(а):
А вот такое решение является плохим: вызывать ФМ в режиме IN BACKGROUND TASK в асинхронном режиме и в самом ФМ делать wait на 20 минут?

Очень плохо. Вы же на эти 20 минут заблокируете целый процесс под каждое такое ожидание. У вас их в SM51 так много, что вы можете себе это позволить?

Я бы покопал в сторону таких вариантов:
1. Планируем фоновое задание, варианты вызова сохраняем в БД. Помнится, есть какие-то команды сохранения сложных структур или объектов в БД как единого целого, привязанного к некому ID.
Тогда на вход фонового задания можно будет подавать этот самый ID варианта запуска.
2. По сути, вариант п1, но используем частично готовую инфраструктуру.
Вызов нужного ФМ регистрируем в QRFC или TRFC очереди, автоматическую обработку очереди отключаем и программируем запуск обработки элементов
этой очереди в нужном вам темпе.

В любом случае, оба варианта - это идеи, а не готовые решения и я бы посоветовал еще аз поисследовать задачу - так ли уж вам нужна эта задержка?

_________________
Удача - результат нашего желания (© А. Нортон)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отложенный вызов ФМ
СообщениеДобавлено: Чт, мар 18 2021, 18:39 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4843
Откуда: Москва
Пол: Мужской
Вспомнил самый простой вариант, который приходилось применять:
1. Все входные параметры ФМ превращаем в одну deep структуру.
2. Через call transformation превращаем структуру в XML и сохраняем в таблицу БД с двумя колонками:
- ID вызова
- Binary data c XML, содержащим наши структуры вызова.
3. Планируем фоновое задание, на вход передаем ID вызова.

В фоновом задании читаем XML, так же конвертим его назад в deep структуру и вызываем ФМ.

_________________
Удача - результат нашего желания (© А. Нортон)


Последний раз редактировалось LKU Пт, мар 19 2021, 14:08, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отложенный вызов ФМ
СообщениеДобавлено: Чт, мар 18 2021, 23:39 
Специалист
Специалист

Зарегистрирован:
Пн, мар 12 2012, 08:40
Сообщения: 226
LKU спасибо за идеи! Попробую использовать trfc с отложенным запуском очереди.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Отложенный вызов ФМ
СообщениеДобавлено: Пт, мар 19 2021, 14:09 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4843
Откуда: Москва
Пол: Мужской
Удачи, напишите что получится.

_________________
Удача - результат нашего желания (© А. Нортон)


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

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


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

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


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

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