Управление фоновыми заданиями в SAP ERP

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

Почему это важно? Потому что грамотный специалист должен знать смежные вещи. А практически любая функциональность в системе так или иначе использует фоновые задания. Оргменеджмент разве что отстает от других. В кадрах это напоминания, тяжелые отчеты. Оценка времени и загрузка временных отметок. Расчет заработной платы и куча отчетности. А еще множество выгрузок и загрузок данных. Даже если это ALE, то и там нужны фоновые задания, чтобы «проталкивать» IDOC, архивировать их.

Знать нужно. Знать хорошо еще лучше. На проекте я познакомился с таким инструментом как Redwood Job Scheduler, который тесно интегрируется с Solution Manager. Этот облачный тул умеет много всего, о чем я даже не задумывался ранее. Выполнять задания межсистемно (в одном задании запукаются задачи в разных системах), реагировать на события в операционных системах (например, файл появился на диске), параллелить и прерывать задания по временным окнам и степени загруженности системы и еще много чего. Ниже будет красивая презентация, с которой рекомендую ознакомиться.

Job Management Published Overview

Читать далее


Вопрос — ответ. Планирование графика рабочего времени

Вопрос. планирование графика рабочего времени:

На предприятии идёт планирование графика рабочего времени, и планирование осуществляется при помощи инфо-типа 2003, а также двух подтипов инфо-типа 2002 для того, чтобы особым образом пометить некоторые запланированные часы работы. А когда приходят запланированные дни, то у некоторых работников создаются записи ИТ 2001 (кто-то заболел и т.п.). Если запись ИТ 2001 ложится на заранее созданный ИТ 2003, то всё отлично. А вот если она ложится на заранее созданный ИТ 2002, то тогда ИТ 2002 удаляется, а это плохо, т.к. теряется информация о том, что болезнь пришлась на запланированные часы работы. Позволять настройками одновременное наличие ИТ 2001 и 2002 ужасно не хочется. Помечать такие особые часы другими подтипами ИТ 2003 тоже нельзя, так как несколько записей ИТ 2003 в один день не поддерживаются (нота 1780904) компонентом Shift Planning (для планирования графика используется именно он). Сталкивались ли Вы с подобной ситуацией?

Ответ:

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

Автор вопроса верно подметил нюансы реализации такого подхода в системе и ее ограничения. Мы для целей рабочего времени и заработной платы также использовали инфотип 2003 с отдельным подтипом «Плановый график» — все в рамках стандартной реализации. А вот с дополнительным временем, но уже для целей графика присутствия, использовали тот же инфотип 2002 с одним исключением. Записи были в нем блокированные. С помощью ракурса V_554Y_B такие виды присутствий (плановые) были выделены в отдельный класс (Time constraint class) и разрешено их перекрытие. Так как они блокированные, то они не учитываются при учете. И тем самым мы можем их сохранять параллельно с плановыми. Такой же отчасти подход используется в графике отпусков в стандартной реализации, если мне не изменяет память.

P.S. Если у кого есть что дополнить, то присоединяйтесь. Поможем автору вопроса!


Запускаем сеансы пакетного ввода в фоне

Ура! За свои 7+ лет САПа я не знал красивого способа запускать в фоне Batch Input! Признаюсь честно, я программист, поэтому документацию не читаю. «Идиёт», как любит говорить мой папа, когда его, профессионала, посещает здравая мысль. Решение есть — читайте документацию всегда, не зря ее пишут!

Программа
RSBDCSUB Batch Input: Process All Sessions

позволяет запускать пакетный ввод в фоне. Шедулим ее как надо и полная автоматизация. Для меня это решение проблемы создания кредиторов из HR данных. Просто планируем запуск программы создания/обновления кредитора RPRAPA00, а следом в одном же задании запуск сформированного пакетного ввода по маске RSBDCSUB! Вуаля, сервис! Я счастлив!

Пруф линк http://help.sap.com/saphelp_nw04/helpdata/en/69/c250414ba111d189750000e8322d00/frameset.htm


Планирование запуска пакетного ввода

В САП можно выполнение сеанса пакетного ввода запланировать на определенное время. Например, вам нужно запустить друг за другом ряд сеансов пакетного ввода. Создаем сеансы пакетного ввода. После создания они появляются в табличке APQI. Открываем и ищем наши сеансы, выписываем их идентификаторы из очереди (поле QID).

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

Это удобно тем, что можно именно планировать и организовывать отложенные запуски пакетных заданий.


Большой проект

Хочу поделиться проблемой. И попробовать с вами ее порешать. Есть проект, огромный проект, множество подразделений бизнеса, масса внутренних команд в проекте, крайне сжатые сроки и много людей. Задача — всем этим управлять. Любая книга по управлению проектом скажет — делегируй, контролируй. В целом, соглашусь, но есть нюансы. Даже если ты делегируешь, то нужно контролировать. А в реалиях существует множество связей как линейных, так и вертикальных, когда нужно выполнять задачи различного характера. Чтобы делегировать нужно быть уверенным в людях, а далеко не всегда получается найти таких людей.

Читать далее