Продолжим рассказ про фоновую обработку в SAP системе.

В первой части статьи я начал рассказ про фоновую обработку в SAP системе. Успел коснуться вопросов создания фонового задания, условий запуска и приоритетов. Также я рассказал про фоновые процессы и про организацию группы серверов для фоновой обработки. Продолжим.

Фоновое задание в системе может находится в нескольких статусах (рис. 1).

Рис. 1. Возможные статусы фонового задания.

Когда мы создаём задание в транзакции SM36 или в транзакции напрямую и ещё не указали ему условия для запуска, оно имеет статус "Запланировано". Как вы догадались, находящееся в этом статусе задание, выполняться в системе не будет. 

После того, как в задании было указано условие для запуска, оно переходит в статус "Деблокировано". На английском этот статус звучит более логично - Released. После этого планировщик заданий в SAP системе начинает видеть данное задание и может запланировать его выполнение, если условия для запуска будут выполнены.

Как только условия для запуска выполнились (например, наступили нужные дата и время), планировщик ставит задание в очередь на исполнение, меняя его статус на "Готово".

Если фоновый рабочий процесс берёт задание из очереди на исполнение, оно меняет свой статус на "Активно".

А в конце, у такого задания есть два выхода - "Завершено" в случае успешного выполнения всех шагов задания или "Отменено" в случае возникновения ошибки на каком-то этапе.

Отслеживать фоновые задания в системе можно через транзакцию SM37. На начальном экране можно задать фильтры, указав имя задания (или шаблон для имени), владельца, статус(ы) или временный период, за который мы хотим просмотреть задания (рис. 2).

Рис. 2. Пример начального экрана транзакции SM37.

Также есть возможность перейти в расширенный выбор заданий, нажав соответствующую кнопку на панели. В расширенном фильтре можно, например, дополнительно ограничить задания по целевому серверу выполнения или группе серверов. Или отдельно выбрать только периодические задания.

Деблокированное задание нельзя изменить, но как вы можете видеть на рисунке 1, такое задание можно перевести обратно в статус "Запланировано". А после этого уже внести изменения, поменяв, например, шаги задания, условия запуска или периодичность. Далее, сохранив изменения, перевести задание в статус "Деблокировано".

Ещё, стоит отметить, что из задания, находящегося в любом статусе, можно сделать копию, чтобы быстро продублировать планирование.

Несколько слов про планировщик фоновых заданий. 

За планирование фоновых заданий в SAP системе отвечает ABAP-программа SAPMSSY2, которая запускается периодически через фиксированные интервалы времени. Эти интервалы регулируются через SAP переменную rdisp/btctime. Интервал устанавливается в секундах. Значение по умолчанию - 60 секунд. В случае изменения значения рекомендуется выбирать из интервала 30-60 секунд. Если в текущей системе несколько инстанций, то для повышения производительности рекомендуется выставлять разные значения на разных инстанциях - например, 57, 56, 59, 60 секунд. В таком случае программа SAPMSSY2 на разных инстанциях будет срабатывать асинхронно. Что улучшит работу механизма балансировки и производительность системы фоновой обработки.

В системах основанных на SAP NetWeaver 7.0 и выше планировщик дополнительно запускается ещё и при окончании любого фонового задания. Это также повышает общую производительность системы. После окончания фонового задания, как минимум, один фоновый рабочий процесс свободен и можно на нём сразу запускать следующее задание из очереди.

Дополнительную информацию про моменты старта планировщика можно найти в SAP note 923228 - Background job scheduler: Use of processes that have become free и 

Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland

У вас уже есть учетная запись?

Войти