Планирование задания

В системе SAP программа может быть запущена в двух режимах – диалоговый и фоновый. Диалоговый режим – это всем нам привычный режим запуска программ, когда мы нажимаем, например,  в селекционном экране отчета кнопку «Выполнить» и дожидаемся, когда программа выдаст нам результат своей работы или регистрация в системе какого-либо документа, когда мы от экрана к экрану вводим в систему требуемые значения полей.  Фоновый режим отличается тем, что выполнение программы  производится только на сервере приложений, т.е. происходит в отрыве от пользовательского интерфейса. А просмотреть результат работы программы в специальном хранилище, которое называется СПУЛ.

Чуть глубже…
На самом деле все немного сложнее, т.к. диалоговая транзакция может начинать работу в диалоговом режиме, а заканчивать в фоновом (например, транзакция F110 – программа платежей). Или запущенная транзакция не формирует отчет в Спул. Но с точки зрения работы пользователя, подобные случаи являются скорее исключениями и о методах их работы должны быть разработаны отдельные инструкции.

 

Работа программы в Фоновом режиме имеет ряд преимуществ и недостатков.

Преимуществ несколько:

  1. Время выполнения отчета не ограничено, в диалоговом режиме при превышении определенного порога программа будет сброшена по тайм-ауту;
  2. Запустив отчет в фоновом режиме можно выйти из системы без последствий;
  3. Фоновое выполнение можно запланировать на ночь, или задать периодичность выполнения.
  4. Отработка больших отчетов в фоновом режиме требует меньше ресурсов. Это положительно влияет на производительность системы в целом.

Недостаток метода только один, но существенный – в сформированном отчете, хранящимся в спуле невозможно использовать технологию ALV-grid или ALV-tree, т.е. любые технологии представления данных в интерактивной форме. Отчет в спуле выглядит как напечатанный в файл документ.

Ниже приведен пример запуска отчета RFFMRE10 «Журнал выделения средств» в фоновом выполнении.

1. Заходим в селекционный экран отчета (рис 1) и заполняем требуемые параметры критериев выбора:рис 1

2. Выбираем в верхнем меню команду Программа — > Фоновое выполнение (или F9)рис 2

3. В открывшемся модальном окне выбираем параметры вывода на печать (рис 3).

Рис 3

Принято считать, что по своему основному назначению выполнение фонового режима должно заканчиваться распечаткой документа на принтере. Я считаю такой подход устаревшим, но в системе все устроено так, что для запуска фонового режима мы должны указать свойства принтера.

На рисунке указан принтер local_printer – это устройство, настроенное на рабочем компьютере по-умолчанию. Также в системе могут быть прописаны сетевые принтеры. Момент вывода при работе фонового режима задавать необязательно, т.к. в данном случае немедленный вывод на печать невозможен и система в любом случае формирует данные в спул.

Нажимаем кнопку Enter или .

4. На следующем окне необходимо задать время выполнения задания и его периодичность (если это необходимо).

Рис 4

Пользователя в основном интересуют два варианта запуска «Немедленно» и «Дата/Время».

Чуть глубже…
Экспертные режимы планирования запуска задания в фоновом режиме:

  • ПослеЗдн – после задания, в данном случае планируемая программа отработает после того, как будет закончена работа другого задания. Имя задания можно найти в отчете «Обзор заданий» Меню: Система – Собственные задания


    рис 5

  • После события – задание выполняется после определенного системного события. Существуют преднастроенные события, но можно создать собственное событие (тр. SM62), которое можно инициировать, например, из собственной программы при помощи функции BP_EVENT_RAISE.
  • При режиме работы – в данном случае во внимание берется определенный режим работы системы в котором прописываются такие параметры как количество диалоговых режимов, количество фоновых и т.д.
  • После нажатия кнопки «Далее» открывается окно планирования запуска задания по производственному календарю:

    рис 6

После выбора режима «Немедленно» или «Дата/время» внизу модального окна планирования фонового задания появляются новые кнопки (рис 7):

рис 7

Кнопка «Значения периодов» позволяет указать периодичность запуска фонового задания (рис 8):

рис 8

Кнопка «Ограничения» позволяет регулировать выполнение задания в выходные и праздничные дни (рис 9).

рис 9

После ввода параметров запуска программы нужно нажать «Сохранить». Система выдает сообщение о том, что задание запланировано (рис 10)

рис 10

Контроль выполнения задания

Для контроля и управления выполнением задания существует специальный отчет «Обзор заданий». Меню: Система – Собственные задания (рис 11)

рис 11

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

рис 12

Работу активного задания можно прервать, например, если неправильно указаны параметры выборки данных (рис 13)

рис 13

Просмотр результата

В отчете «Обзор заданий» задания, результатом работы которых стали данные помещенные в спул, отмечены в столбце «Список спула» ярлыком . Просмотреть содержимое спула можно дважды кликнув по данному ярлыку, либо, отметив строку с заданием флажком (галкой) слева, нажав кнопку «Спул» на панели инструментов (рис 14)

рис 14

Система выдаст листинг списков спула (см. рис 15)

рис 15

Просмотреть данные отчета можно нажав на ярлык «ABAP-список» (см. рис 16)

рис 16

  Один комментарий в “Запуск отчетов (программ) в фоновом режиме”

  1. Как сделать так, чтоб по факту формирования отчёта отправлялся документ на электронную почту?

 
© 2013 sap-blog.ru
Яндекс.Метрика