WLF_IDOC и WLFEIR – продвинутые транзакции для работы с ALE

Привет, други и подруги. 

В EhP5 появилась новая транзакция для работы с IDOC – WLF_IDOC. В какой-то версии (в EhP 3 вроде) появилась транзакция WLFEIR. Внешне выглядит простенько, удобненько, но дьявол кроется в мелочах.

Транзакции совмещают множество инструментов обработки и мониторинга IDOC в одном месте с удобным интерфейсом. Теперь стало можно искать IDOC по содержимому прямо здесь. 

Можно сравнить два IDOC по содержимому каждого поля. Выделяем два IDOC и нажимаем кнопочку сравнения.

Поменять статус IDOC – пожалуйста, кнопочка в тулбаре.

Запустить обработку последовательно, параллельно – закладка Background Processing. Хотите получить в логах сообщение об успешной/неуспешной обработке IDOC – доступна функция Monitoring.


Миграция данных с помощью SAP ALE

Здравствуйте все.
Традиционно миграцию данных выполняют классическим способом – файлики, LSMW, загрузка. Вариант классический, опробованный, рабочий. Чтобы не было скучно, мы решили пойти другим путем и провести миграцию данных с помощью SAP ALE. У подхода оказались интересные нюансы и преимущества перед традиционной миграцией. Стоит сразу же отметить, что слабонервным и начинающим подход противопоказан ввиду высокого порога вхождения в технологию.
Чтобы перенести данные с помощью ALE нам нужно настроить модель распределения, где указать откуда, куда и какие данные мы собираемся переносить. Это все делается в BD64, где сложностей не возникает.
Нам нужно использовать стандартный IDOC HRMD_A, если этих данных достаточно, либо расширить его своими инфотипами. Первые расширения IDOC обычно идут сложно, зато потом одно удовольствие клепать то да се. Для расширения концептуально мы создаем новые сегменты и прописываем их в наше расширение (WE30, WE31). Не забываем указать эти сегменты в T777D для каждого инфотипа.
Если нужно провести какие-то преобразования, то либо в правилах в SALE, либо в ФМ CONVERT*TO*, либо в CMOD/BADi делаем преобразования.
Делаем файловый порт источником данных и грузим апельсины бочками. Если нужно преобразования использовать для разных форматов файла, то идем в LSMW для обработки IDOC.
Звучит сложно, но только в первый раз. Взамен мы получаем отдельные плюшки в сравнении с LSMW.
  • Возможность на уровне системы управлять очередями и последовательностью загрузки данных
  • Возможность управлять производительностью. Да и сами IDOC грузятся намного быстрее, чем любая LSMW.
  • Легкий поиск ошибок, чего не скажешь про журналы LSMW.
  • Возможность поменять настройку и заново прогрузить тот же объем, что невозможно в LSMW (в большинстве случаев).
  • Возможность одним разом загружать данные в множество систем просто перенаправляя потоки данных в BD64.
  • Нет проблем с перезагрузкой данных, когда в LSMW нужно сначала удалять загруженные записи, а потом записать новые.
  • В случае миграции данных из “цивилизованной” системы, где есть возможности для интеграции, такая миграция может проходить практически в автоматизированном режиме (через файлы, веб-сервисы, OData или еще какие технологии).
  • Нет проблем с табличными инфотипами.
Но за сыр нужно платить. Плата заключается, как уже писал выше, в высоком пороге входа – надо много знать из технологии. Плюс, так как IDOC сохраняется напрямую в базу данных, но пользовательская логика для инфотипов не работает. Такие вещи приходится помнить и реализовывать в принимающей системе (например, вызывать те же функциональные модули прежде чем сохранить IDOC в инфотип).
LSMW, кстати, удобно скрестить с ALE как инструмент для быстрого преобразования практически любого текстового файла в структуру IDOC. Я писал ранее, как можно из файла формировать IDOC за считанные минуты. Если вспомнить, что LSMW можно запланировать как фоновое задание, то получается гибкий инструмент для загрузки файлов любого формата без участия человека или регулярной миграции данных между системами. И совершенно бесплатно.

Эффективная настройка SAP ALE

Мы уже много раз говорили про настройку ALE. Вроде бы, что там еще можно настраивать? Но все то, что мы с вами изучали ранее, это игра в песочек, для начинающих. Настоящие САПеры берут лопаты, миноискатели и идут в бой, повышать эффективность систем, сокращать ошибки. Сегодня в номере эффективная настройка SAP ALE. Эффективность заключается в тонких приемах, о которых большинство не знает, а они помогают существенно сократить количество ошибок при передаче данных.

Знаете две проблемы с транзакцией PFAL? Первая заключается в том, что PFAL не умеет отправлять уже уволенных физлиц, так как работает на логической базе PCH (есть нота с решением). Вторая, что при попытке отправить всю оргструктуру по пути анализа O-S-P бараны перемешаются с апельсинами и в принимающей системе будет каша. Для этого делают всякие изощрения вроде того, что нужно сначала переслать только объекты организационного менеджмента, затем соединения между ними, а потом уже табельные номера слать. Тогда система получатель корректно примет данные и создаст последовательно. При этом фоновые задания для отправки данных планируются в такой же последовательности, когда нам нужно ежедневно передавать изменения между системами. Сегодня мы научимся эффективно решать эти вопросы с помощью простых настроек SAP ALE.

Читать далее


Передача российских инфотипов по ALE

В стандарте SAP HCM есть российские инфотипы. В стандарте SAP передача российских инфотипов по ALE почему-то не есть. Ее нет от слова совсем. Сегодня мы с вами настроим передачу любых инфотипов по ALE, а заодно повторим немного настройку ALE. Рассматривать будем две ситуации: передачу коротких инфотипов и передачу длинных инфотипов.

Передача коротких инфотипов по ALE

Короткий инфотип, это инфотип, размер которого влезает в один сегмент. Как проверить? Открываем SE11, открываем структуру инфотипа в формате PXXXX, складываем размеры всех полей. 1 сегмент может хранить 1000 символов. Если структура длиннее, то это длинный инфотип, если короче, то… короче понятно, что короче 😉

В транзакции WE31 создаем новый сегмент для инфотипа. Правило именования Z1PXXXX, хотя можно и длиннее, но для версий системы 4.6+. Первые три символа всегда Z1P или Y1P. Чтобы не вводить все данные руками из SE11 можно создать через шаблон. В меню Segment -> Create with template выбираем DDIC структуру PXXXX. При сохранении сегмента система проверит размерность на соответствие 1000 символов.

Вот мой сегмент для ИТ 0293.

Создание IDOC сегмента

Создание IDOC сегмента

Не забываем релизнуть сегмент в меню.

Читать далее


Преобразования в ALE

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

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

Вся настройка преобразования IDOC в ALE заключается в трех простых пунктах меню в IMG. Запускаем транзакцию SALE и спускаемся до нужных нам настроек.

Читать далее