Кусочек материала из второй книги по SAP HR от Витальки Поцелуева. Построчное описание схемы TM04. Остальное в книжке 🙂
Команды схемы | Описание от автора |
BINI MOD TMON GEN EINI | Блок инициализации, который запускается один раз для сотрудника и устанавливает управляющие параметры в правиле TMON. Обычно здесь определяются группировки для генерации лимитов отсутствий, видов оплаты. |
BDAY | Начало блока обработки данных дня. Запускается для всех сотрудников на каждый календарный день. |
CHECK PON | Устанавливает глобальный флаг PON (Positive Or Negative). Обрабатывать табельные номера, у которых статус временных данных не равен 0. |
CHECK RPR | Устанавливает глобальный флаг RPR (Recalculation PayRoll). Если в зарплате возник перерасчет, то оценка времени также будет перезапущена с даты перерасчета заработной платы |
CHECK FUT | Устанавливает глобальный флаг FUT (FUTure). Разрешает запускать оценку времени в будущее, в космос. Удобно, если нужно использовать прогнозируемые данные для бюджета. |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени. |
IF POS | IF = условие «ЕСЛИ». POS – позитивный учет (статус временных данных = 1 или 2). Если сотрудник на позитивном учете, то обрабатывать все что внутри этого блока команд. |
IF NOT SIMF | NOT SIMF – не режим моделирования (галочка тест снята при запуске драйвера). Если запуск в боевом режиме, то выполнить команды ниже. |
PERT TD20 | Загрузить ошибки по отметкам временных данных, если такие есть |
P2011 | Загрузить сам отметки из инфотипа 2011. На самом деле отметки хранятся в таблице TEVEN, а таблицы PA2011 согласно стандартной кодировки не сущестует. |
ACTIO TD10 | ACTIO – функция, запускающее правило из ее параметра на выполнение. При этом правило выполняется только один раз независимо от временных данных. Правило TD10 проверяет, закончился ли текущий день, чтобы его можно было оценить или нет. Если закончился, то оценка дня прерывается. |
A2003 | Функция считывает замещения из ИТ2003. Если для замещения установлена альтернативная оплата, то всем временным парам в будет установлен сплит (ссылка) на запись из таблицы ALP, в которой хранятся данные по альтернативной оплате. |
P2001 | Считать отсутствия из ИТ2001 |
P2002 | Считать присутствия из ИТ2002 |
ELSE | Если условие NOT SIMF не выполнено, то система перейдет к блоку ELSE или следующему после ENDIF |
COPY TDT0 | Выполнить подсхему TDT0 |
ENDIF | Последняя команда блока условия IF NOT SIMF |
ELSE | Относится к условию IF POS |
COPY TDT0 | Выполнить подсхему TDT0 |
ENDIF | Последняя команда блока условия IF POS |
COPY TF00 | Выполнить подсхему |
ACTIO TD03 | Выполнить правило TD03. Правило проверяет, если обрабатываемый день приходится на воскресенье и это праздник, то сделать понедельник оплачиваемым выходным. В России это обычно регулируется графиком рабочего времени и классами праздника. |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени |
ACTIO TE20 | Выполнить правило TE20. Правило проверяет обрабатываемый день на предмет ошибок: может ли сотрудник работать в выходной, продолжительность отсутствия сотрудника |
PTIP TE30 GEN | Функция PTIP обрабатывает каждую строчку внутренней таблицы TIP. В таблице TIP хранятся временные пары С-ПО на каждое событие, которое произошло с человеком в этот день: нормальное рабочее время, отсутствие, сверхурочная работа, перерыв и пр. При выполнении к каждой строке таблицы TIP применяется правило из параметра. В данном случае TE30, которое проверяет каждую временную пару на ошибки. |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени |
TYPES | Функция классифицирует временные пары в зависимости от того, откуда пара пришла в оценку времени: график, присутствие, отметка, отсутствие |
PBRKS OWTI | Функция обрабатывает перерывы в графике рабочего времени |
COPY TP01 | Выполнить подсхему TP01 |
RTIP TP09 GEN | Функция RTIP аналогична PTIP, только в отличие от последней она не может менять содержимое таблицы TIP. Правило TP09 определяет время по каждой временной паре, если пара относится к нормативному графику, то часы сохраняются в вид времени 0000. |
PTIPA TP10 GEN | Функция PTIPA аналогична PTIP, но работает, если в дне были отсутствия. Правило TP10 анализирует, есть ли у человека переработки. Если да, то время отсутствия сокращается на величину переработок. Своего рода суммированный учет, но в России такой подход не применяется. |
RTIPA TP20 GEN | Функция RTIPA аналогична RTIP, но работает, если в дне были отсутствия. Правило TP20 анализирует, есть ли у человека переработки. Если да, и человек берет отгул, то размер сверхурочных сокращается. |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени |
SORT TIP P2 | Функция SORT сортирует таблицу. В данном случае таблицу TIP по типа временых пар. |
COPY TW10 | Выполнить подсхему |
COPY TW15 | Выполнить подсхему |
COPY TW30 | Выполнить подсхему |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени |
DAYMO 01 02 02 02 | Функция DAYMO устанавливает различиные модификаторы и группировки для следующих двух функций |
GWT S DZL | Запустить генерацию видов оплаты для временных пар с типом обработки S и сохранить виды оплаты в таблице DZL |
GWT M ZML | Запустить генерацию видов оплаты для временных пар с типом обработки M и сохранить виды оплаты в таблице ZML |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени |
COPY TW00 | Выполнить подсхему |
POVT TC40 GEN | Функция обрабатывает все виды оплаты со сверхурочной работой из таблицы ZML и формирует либо виды оплаты, либо время отдыха в зависимости от настроек вида оплаты и способа компенсации |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
BLOCK BEG | Команда BLOCK логически группирует команды, чтобы визуально выделить блоки в журнале оценки времени |
RTIP TR11 | Правило TR11 формирует различные дневные балансы времени: нормативное время, время отсутствий и так далее. |
P2012 | Функция P2012 считывает инфотип 2012, который служит для корректировки баланса вида времени. |
ACTIO TR30 | Правило TR30 также формирует баланы времени: продуктивное время, переработки. |
LIMIT | Функция LIMIT проверяет и ограничивает виды времени, если они превысили заданные пороговые значения. |
IF EOP | IF EOP проверяет, завершен ли расчетный период для единицы расчета |
ACTIO TR90 | Правило TR90 формирует баланс рабочего времени за расчетный период. Если образовалась сверхурочная работа, то формируется отдельный вид времени.ы |
ENDIF | Окончание условия для IF EIOP |
CUMBT | Функция CUMBT аккумулирует виды времени (часы) согласно настроек. Не все виды времени нужно накапливать, кстати. |
QUOTA | Функция QUOTA генерирует лимиты отсутствий, которые формируются из оценки времени. |
BLOCK END | Завершение логического блока команд, начатого командой BLOCK BEG |
EDAY | Завершение логического блока команд, начатого командой BDAY |
BEND | Начало логического блока финальной обработки. Блок выполняется только один раз для каждого сотрудника в конце оценки времени. |
EXPRT | Сохранение результатов оценки времени в кластер (в базу данных) |
EEND | Завершение логического блока команд, начатого командой BEND |
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.