Комментарии по теме

«Тра­нза­кция SM02: сообщения в SAP системе»
Олег Башкатов:
С помощью ФМ TH_POPUP можно отправить сообщение конкретному пользователю :-)

База знаний

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

Что Вам нужно знать о ведении календарей в мультисистемном ландшафте SAP

22 сентября 2014, 01:36

Данная статья написана Дмитрием Кагликом и впервые опубликована на сайте http://www.sapexpert.co.uk на английском языке. Если вы хотите узнавать больше от экспертов из мира SAP раньше других, то, пожалуйста, подпишитесь на обновления на указанном сайте.

SAP Expert продолжает серию статей, посвященных транспортной системе SAP и объектам, требующим «особого отношения» при переносе через мультисистемный ландшафт.

Ранее мы уже говорили про Коды налогов, Диапазоны номеров, Проверки и Замещения.

Сегодня настала пора обратиться к Календарям.

Введение

Календарь — это объект SAP, который используется в различных модулях. Например, HR использует календарь для расчета заработной платы. Логистика использует календарь для планирования производства и транспортировки. Даже Финансы могут использовать календарь для планирования фоновых заданий.

Ведение календаря можно разделить на 3 уровня. Они соответствуют трем разделам в транзакции SCAL.

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

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

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

Именно логистический календарь может использоваться для планирования доставок или планирования фоновых заданий.

Включаем календарь в транспортный запрос

Календарь — это кросс-мандантный объект. Это означает, что если Вы изменили календарь в одном манданте системы разработки, то все остальные манданты этой системы получат изменения немедленно. Вам для этого совсем ничего не надо делать.

Однако, если Вам нужно перенести изменения в календаре в систему Тестирования или Продуктив, Вам придется воспользоваться транспортной системой.

До того, как Вы начнете процесс переноса, Вы должны подумать, собираетесь ли Вы переносить изменения через систему запросов, или вести календарь в каждой системе отдельно. У каждого из подходов есть плюсы и минусы, так что решение остается за Вами. Каждый проект сам решает — кому и в какой системе вести календарь.

Если Вы все-таки решили вносить изменения в систему Разработки, а затем переносить их, Вы должны иметь в виду следующие моменты:

  • Перенос календарей включает в себя полное, и только полное, содержание транзакции SCAL: все праздничные дни, все праздничные календари и все логистические календари. Вы не можете перенести только часть.
  • Транспорт, попав в новую систему, удалит все существующие данные в целевой системе, и полностью перезапишет их новыми данными. Именно поэтому крайне рекомендуется либо всегда вести календари непосредственно в Продуктиве, либо всегда переносить их из системы Разработки. Смешение подходов не принесет ничего хорошего.

Таким образом, для включения календарей в транспорт необходимо пройти 5 шагов:

  • Создать или запросить создание инструментальный (workbench) транспортный запрос .
  • Вызвать транзакцию SCAL.
  • Выбрать пункт меню Calendar – Transport.
  • Прочитать и подтвердить информационное сообщение во всплывающем окне.
  • Указать транспортный запрос.

Теперь Вы готовы к деблокированию запроса и переносу его через транспортную систему SAP в целевую систему.

Как Вы ведете календари в Вашей системе? Как Вы используете календари?

Комментарии:

Артем Седловский (Рейтинг: 223) 18:29, 21 ноября 2014

Упс, неожиданно интересная статья на вроде бы банальную тему.
Отвечаю на вопрос Как Вы используете календари? применительно к Финансам и к России.
 
Есть у нас в FI, MM и SD к такая замечательная функциональность как управление сроками оплаты. Базируется в основном на полях Базовая дата и Условие платежа. Хотя, если покопаться, можно найти и поле для собственно плановой даты оплаты.
Есть у нас в России (полагаю, в других странах бывшего СССР тоже) такая бизнес-традиция как отчет отсрочки оплаты от некоей опорной (включение счетчика) не в календарных днях, а в т.н. банковских. Что характерно, нигде в законодательстве термин "банковский день" не описан, а в договорах термин применяется повсеместно и без подробного описания.
Есть у нас в России такая плохая традиция, как наплевательское отношение консультантов к этой полезной функциональности - Условия платежа и определение базовой даты. Или, как сказали бы тренеры по лицемерию (коучи по эффективности персональных коммуникаций), потенциал для улучшения практики применения этого дела.
 

Практика использования календаря именно в РФ и именно для управления сроками оплаты.
1. На одном проекте пришлось собрать целый методологический совет, чтобы определить, что банковский день = рабочий.
2. Так как клиент работал в основном на территории Республики Татарстан, но имел бизнес еще и в Москве и в Самаре, пришлось вести два календаря: один федеральный, другой республиканский.
3. Был разработан экзит по пересчету банковских дней в календарные.
4. Зачастую условия договоров включали экзотические условия определения момента включения счетчика. То есть, в переводе на саповский птичий язык, Базовая дата. Поэтому пришлось сделать некоторое число экзитов для манипулирования Базовой датой, которая по умолчанию может быть настроена всего на 4 вида дат.
Для запуска в продуктив пришлось провести инвентаризацию требований договоров и законодательства по определению алгоритмов определения сроков оплаты относительно сроков чего-то еще. Получилось, что можно разделить все алгоритмы на две группы:
- государственные, в основном связанные с уплатой налогов, настраиваются достаточно просто через фиксированное число дней после начала месяца
- коммерческие договора обычно насыщены экзотическими условиями по дате включения счетчика и по использованию банковских дней вместо календарных. Вот на коммерческих договорах и приходится чаще всего обращаться к производственному календарю для расчета экзитами правильных дат подготовки платежек и ожидаемых дат поступления денег за дебиторку.
18:05, 22 ноября 2014

Каглик Дмитрий (Рейтинг: 5190)

Спасибо за комментарий.
У меня имеется еще один очень интересный пример использования календаря. Следите за обновлениями здесь или на sapexpert.co.uk