Задание остается в очереди, пока определенный целевой сервер снова не начнет работать или обработка явно не перенесется на другой сервер.
Созданный программой АВАР вывод сохраняется как запрос спула в системе спула SAP. С помощью средства Spool List Recipient можно послать вывод пользователю. Эта техника позволяет, например, нескольким людям управлять фоновым заданием и анализировать его результаты. Поскольку вывод может быть достаточно большим, то рекомендуется использовать эту возможность с осторожностью. По соображениям производительности длина вывода, посылаемого в SAPoffice, ограничена 1000 строками. Значения параметров печати задаются при определении шага (см. раздел 9.2.3).
Следующий шаг состоит в выборе параметров, определяющих время запуска. Выберите на начальном экране определения задания условие Start. Можно назначить запуск задания на конкретное время или запускать его по событию (см. рис. 9.3). Используемая информация о времени и часовом поясе основывается на системном времени. Кроме определения времени запуска задания, планирование заданий по времени позволяет также планировать периодическое выполнение задания, например для регулярного анализа служебных заданий (см. раздел 9.6). Можно выбрать любой интервал повторения: через несколько минут, каждый час, ежедневно, еженедельно и т.д. Можно воспользоваться кнопкой Restrictions для определения исключений для обычного периода, например для указания дней отдыха в действующем производственном календаре. Когда используются задания, чувствительные ко времени, можно определить самое позднее возможное время для запуска задания (No start after).
Вместо определения управления по времени можно также определить некоторое событие в качестве триггера. В частности, изменения операционных режимов (см. главу 14) и конец задания определяются как события, что означает, что фоновое задание может также выполняться в зависимости от другого, уже определенного задания. В этом случае второе задание запускается после окончания первого. Если нужно запустить второе задание, когда первое успешно обработано, используйте опцию Start status- dependent. Тогда в случае прерывания первого задания второе переводится в состояние отмены и не выполняется.
Рис. 9.3.
Если задания с временем запуска
Для завершения определения фонового задания следует описать шаги обработки, составляющие это задание.
Шаги обработки могут включать в себя также программы АВАР, внешние команды или программы (см. рис. 9.4).
Все недиалоговые программы АВАР можно выполнять в фоновом режиме. Для этого нужно выбрать функцию АВАР Program (см. рис. 9.4), ввести имя программы АВАР и при необходимости указать язык, на котором будет генерироваться журнал. Многие программы АВАР (например, программа RSPFPAR) управляются с помощью переменных. Перед выполнением такой программы можно ограничить диапазон выводимых на экран имен параметров инстанции. Для выполнения подобного типа программ в фоновом режиме нужно создать для программы
Рис. 9.4.
Пользователи R/3 с полномочиями администратора могут выбрать External Program для выполнения любых программ на уровне операционной системы из системы R/3. В этом случае требуется имя целевого сервера; параметры являются необязательными. Для выполнения программы на целевом сервере запускается процедура SAPXPG, которая осуществляет коммуникацию вызывающей системой R/3 через RFC, используя идентификатор специального пользователя R/3 SAPCPIC (см. главу 8).
Чтобы иметь возможность выполнять внешние программы ограниченным образом, используя внутренний механизм авторизации R/3, конфигурируются расширенные
Рис. 9.5.
Стандартная система R/3 уже содержит многие внешние команды. Системные администраторы могут определить любую другую команду в пространстве имен заказчика. На рис. 9.5 показан пример команды ZLIST, за которой «скрывается» команда ls с параметром -lisa, выводящая на экран содержимое текущего каталога в системах UNIX.
Для систем Windows NT можно задать внешнюю команду с тем же именем для соответствующей команды
Можно определить модуль проверки, чтобы еще больше ограничить использование внешней команды по соображениям безопасности. Модуль проверки выполняется перед запуском команды. В зависимости от результата выполнения проверки команда либо выполняется, либо нет. Процедура SPXG_DUMMY_COMMAND_CHECK является модельным примером в системе, который можно использовать в качестве шаблона для собственных проверок.