Онлайн курс по настройке графиков рабочего времени в SAP

Всем привет!

Представляю вашему вниманию первый курс (или, скажем, урок) по настройке модуля SAP Time Management (учет рабочего времени).

Первые 10 человек получают специальную вкусную цену курса:

https://www.udemy.com/sap-hr-time-management-work-schedules-ru/

В курсе рассматривается настройка графиков рабочего времени. Мы научимся настраивать:

  • Календарь праздничных дней
  • Перерывы
  • Однодневные графики (смены)
  • Шаблоны графиков
  • Правила графиков рабочего времени (типовые графики)

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

Курс прошел улучшайзинг, и теперь появились небольшие поясняющие презентации (на английском пока что), которые можно скачать.

Всего 1.5 часа видео материала и 13 глав.

Ученики, которые прошли курс по настройке ALE получают приятный бонус в виде дополнительной скидки (напишу всем лично).

Чем активнее вы, мои читатели, будете делиться статьями с этого блога, тем больше материала я смогу готовить для вас!


Загружаем данные автоматизированно по RFC вызову

Один из подписчиков моего Youtube канала https://youtube.com/virvit попросил рассказать, как можно удаленно вызывать LSMW по RFC, чтобы осуществлять загрузку данных в систему SAP. Это оказалось элементарно, рассказываю.

Для начала мы записываем проект LSMW. Можно использовать любой способ загрузки данных, который может работать в фоновом режиме. Важно поставить галочку периодической загрузки на самом первом шаге, вот так:

Благодаря этой галочке у нас в меню LSMW в самом низу появится пункт: Master Program for Periodic Data Transfer.

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

Запускаем самый последний шаг, где заполняем параметры нашего проекта. Хотим ли мы удалять файлы, что-то делать с ними, искать по маске. Сохраняем все это в вариант.

Осталось самое малое. В SM36 нужно запланировать задание, которое будет запускаться по событию. То есть мы планируем программу /SAPDMC/SAP_LSMW_INTERFACE с только что созданным для нее вариантом.

Свое событие можно создать в транзакции SM62 на последней вкладке.

Вот и все. Теперь можно поджечь событие извне по RFC, а можно потренироваться “у себя дома” в транзакции SE37.

Система вызовет событие, событие вызовет запланированную программу, программа запустит LSMW проект. LSMW проект прочитает файл, сконвертирует, создаст пакетник в SM35 И запустит его на выполнение. Или может IDOC создать. Или BAPI. Что хотите, одним словом. После обработки файла он будет переименован, чтобы не загружаться повторно.

Милости просим, кустарная автоматизация сельскохозяйственных процессов на коленке с помощью костылей и подпорок. Для взрослых решений мы используем SAP ALE и учим его на нашем с Романом курсе https://saphr.ru/2018/10/10/online-kurs-po-sap-ale/


Временная работа по другой должности

На больших производственных предприятиях часто встречается понятие замещения, совмещения, расширения зоны обслуживания. На каждом проекте реализуют по-своему. Сегодня, копаясь в документации в стареньком IMG нашел маленькую приписочку, про которую я, разумеется, никогда не знал.

Если создать соединение 017 между Должностью (объект C) и Лицом (объект P), то эта должность будет записана в ИТ0001 “Организационное присвоение” на период присвоения. При этом старая связь с основной должностью останется без изменений. Если удалить 017 соединение, то ИТ0001 вернется к первоначальному состоянию.

Таким образом можно отражать в системе временную работу по другой должности (не путать со штатной должностью).


Как загружать табличные инфотипы в LSMW

Да просто… через задницу. Существует два вида табличных инфотипов в системе: одностраничные и многостраничные. Как загружать табличные инфотипы? Я до сегодняшнего дня умел грузить одностраничные инфотипы. Сегодня я научился многостраничные заливать бочками.

Да, сразу оговорюсь, что речь идет о загрузке без единой строчки ABAP. С АБАПом и дурак сможет. Наиболее типичные инфотипы это 8, 293, 294, 28. Одностраничный инфотип, это который содержит таблицу и нам не нужно ее прокручивать вниз. Многостраничный инфотип содержит ту же таблицу, но в ней столько данных, что приходится нажимать скроллинг вниз (прокрутку, кнопку PageDn).

Для загрузки одностраничного инфотипа хитрость простая. При записи LSMW нужно в каждое поле таблицы что-то внести, чтобы LSMW создала в Recording поля вида Q0293-BETRG(01), Q0293-BETRG(02) и так далее. То есть, мы можем обратиться к каждому полю, видимому на экране через его порядковый номер сверху. 01, 02, 03 и так далее. Для каждого такого поля можно создать свою переменную в том же Recording.

Если мы записываем многостраничный инфотип, когда нам нужно пролистать таблицу вниз, то дела становятся интереснее. Для этого нам нужно специально сказать при записи, что мы хотим сделать скроллинг вниз. Нажатие на кнопку PageDn или мышкой на стрелочку внизу не поможет. Для этого мы окне команд пишем “P+“. Этот волшебный код пролистнет таблицу на одну страницу вниз. И теперь самое важное! Нумерация строк опять начинается с 01, 02 и так далее.

Так, для загрузки 15 значений в ИТ0293 нужно записать на первой странице 8 значений напротив каждой строчки. Затем нажать P+ в окне транзакций. И снова записать 7 оставшихся значений.

Читать далее


Решение задачи с уровнями вложенности подразделений

Ха! Я всех обманул и мне не стыдно! На каждом большом проекте каждый кадровик кричал, что оргструктуру нужно выводить строго до такого-то уровня. А консультанты ныли, что это невозможно стандартом, вообще так нельзя и ваш сап какашка. Можно!

Есть задача: вывести оргстуктуру до уровня департаментов, отделы и группы не трогать. В 9 из 10 случаев придумывают кодировки в поле Код оргединицы, создают новые объекты для отражения уровня вложенности организационной структуры.

Что делают читатели блога SAP HR от Витальки? Правильно, открывают хелп и курят вдумчиво. Транзакция OOAW для создания путей анализа. При определении пути анализа внимательный читатель/настраиватель вражеской системы кликнет F1 на поле Приоритет. И окажется, что там можно написать что-то, а потом это что-то прочитать. Непонятно? Перевожу.

В поле приоритет мы можем указать символ (букву или цифру), которая будет анализироваться при чтении соединения. Если символ присутстует в соединений, то связь будет проанализирована и выдана путем анализа. Если я хочу сделать отчет, где будут выводиться только департаменты, то есть уровень 1, то я сделаю путь анализа с такой настройкой.

В соединении корневой организационной единицы с департаментами я проставлю такой же приоритет для всех оргединиц первого уровня вложенности.

Запускаем отчет с таким путем анализа.

Если нужно сделать отчет до 2 уровня вложенности, то делаем второй путь анализа, условно ZOO2, где прописываем приоритет 1 и приоритет 2. Соответственно меняем соединения от уровня 1 до уровня 2, заполняя поле приоритет. Стандарт, мать его!


Множественный выбор данных в SE16N

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

Я точно знаю, что при запуске этой транзакции мы можем на экране выбора указать несколько параметров, по которым система отфильтрует значения при выборке данных из таблицы. Система будет считывать значения по принципу логического “И”: хочу все записи, где продукт Бублик И Вареник. Если я хочу попросить еще что-то, то не смогу это сделать в виде: Бублик И Вареник ИЛИ Конфетку.

Оказывается, в SE16N есть возможность просить немного больше и использовать логическое ИЛИ для выбора данных. Для множественного выбора нужно активировать технический ракурс в меню Дополнительная информация (кнопки Shift+F11), а затем там же включить Многократный ввод (Ctrl+F9).

В моем примере я хочу выбрать объект с конкретным идентификатором 50000102 или все объекты с вариантом плана 02.

С помощью этой возможности система выдаст такой результат.

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