Правила преобразования в LSMW

С базовыми вещами в рамках миграции данных мы все умеем работать хорошо. Мы знаем как записывать проекты LSMW, мы умеем использовать разные способы загрузки (BAPI, BUS, IDOC, Batch Input) — мы с вами большие молодцы. Сегодня мы чуть внимательнее посмотрим на возможности LSMW для управления данными во время миграции. Правила преобразования в LSMW нужны как раз для изменения данных из загружаемых файлов в целевые поля системы SAP.

SAP LSMW transformation rules

Читать далее


Революция в LSMW — вы этого не знали!

Классный заголовок? 🙂 Я точно не знал.

Есть у этой штуки скрытые другие штуки.

Вот такой пунктик меню скрыт врагами.

Если мы его запустим после конвертации данных, то система уже на этом этапе проверит ваши данные на предмет соответствия настройкам системы. Обычно мы запускали пакетник на выполнение, а потом в логах искали такие глупые ошибки. Вуаля:

День миграции данных это точно сэкономит.

А если вы приглядитесь, то в меню есть такой пунктик: Analyze Transactions with Errors. Он появляется в том случае, если загрузка данных идет не через IDOC. И это второй шедевр, который позволяет выгружать толпу ошибок и анализировать.


FAQ. Загрузка образования через LSMW

Вопрос:
Виталий, встречалась ли Вам такая задача загрузить изменения записей инфо-типа 0022 «Образование». Мы добавили на экран инфо-типа Z-поля для внесения информации на английском языке. Теперь нужно довнести в эти поля данные. Но загрузить изменения не удается, у табельного номера несколько записей и программа LSMW загружает в первую запись, не осуществляя проверку на даты, вид образования..
Эта задача осуществима с помощью LSMW?

Ответ:
Это общая проблема для обновления записей через PA30 и LSMW. Чтобы решить задачу есть два варианта:
1. Удалить и загрузить правильно. То есть сначала выгружаем что есть, обновляем данными, удаляем из системы, загружаем правильные значения.
2. Если первый вариант не работает, то в ряде случаев можно «обратиться напрямую к записи» указав точные ключевые параметры: дата начала, дата окончания, подтип. Тогда LSMW откроет именно нужную запись. Но если есть две записи с 18 подтипом и одинаковыми датами, то увы, не сработает (два высших образования полученных одновременно).


Загрузка нескольких файлов в LSMW

Рассказываю фокус. Некоторое время назад мы научились загружать иерархические структуры из одного файла. При этом нужно было особым образом формировать сам файл, чтобы структура записи повторялась. Такие файлы сложно формировать из исторических систем, особенно, когда нет программистов. Поэтому мы предпочитаем плоские файлы с плоскими структурами (в табличном виде).

На днях я загружал заработную плату с помощью стандартного BUS7023 ManagerExtPayroll. На выходе формируется IDOC, который складывается в T558* таблицы. Сама структура айдока иерархическая, где на верхнем уровне стоит сотрудник, ниже указаны периоды, а на третьем сами виды оплаты для периода.

Для простоты я решил сделать три соответствующих файла:

  • Сотрудники
  • Периоды
  • Виды оплаты

Каждый последующий файл содержит ссылку на предыдущий. Вот, что у меня получилось.

lsmw_py_0

Читать далее