batch input sap что это

Транзакция LSMW инструкция по применению. Часть 8

Транзакция LSMW инструкция по применению

Башкатов Олег Викторович

В этой книге приводятся практические решения задач с использованием транзакции

LSMW для загрузки данных на основе методов Batch Input, BAPI и

Direct Input. Примеры базируются на бизнес-сценарии миграции данных.

Массовое сторно документов материала методом Batch Input транзакции LSMW

Продолжение книги.

В этой главе будет описано решение задачи по массовому сторно документов материала. Загрузчик на массовое сторно документов материала практически всегда сопровождает загрузку остатков, в силу того что не всегда получается сделать загрузку с первого раза корректно. Загрузчик, представленный в настоящей главе, выполняет загрузку не из файла на фронтэнде, а из файла на сервере приложений (application server). В решении бизнес-задачи мы находимся на этапе создания инструмента для массового сторно документов материала, которые загружали начальные остатки (рис. 6.1). В настоящей главе не описываются подробно те шаги, которые были детально описаны в предыдущих главах.

Рис. 6.1. Задача сторно документов материала в общей схеме задач миграции

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

6.1. Операционные условия

Для решения поставленной задачи мы будем использовать пакетный ввод на транзакцию MBST. Дату найдем с помощью дополнительной подпрограммы. Таким образом, в исходном файле у нас будет всего один столбец, где будет храниться номер документа материала (см. таблицу 6.1). В качестве года документа материала будем использовать текущий год.

Табл. 6.1. Поля для массового сторно документов материала

На предварительном шаге: подготовим данные для загрузчика, а именно — пройдемся вручную в транзакции MBST. В транзакции MBST укажем сторнируемый документ материала и нажимаем E, затем нажимаем кнопку Сохранить (рис. 6.2 и рис. 6.3). Такие простые действия позволяют сторнировать документ материала.

Рис. 6.2. Начальный экран транзакции MBST (сторно документа материала)

Рис. 6.3. Сообщение об успешном сторнировании документа материала

Для подобных действий в системе метод Batch Input весьма подходит. Количество экранов минимально и количество данных также минимально.

6.2. Пошаговое решение задачи

Шаг 1: создание/выбор проекта, подпроекта и объекта

Создадим новый объект транзакции LSMW согласно данным из таблицы 6.2.

Табл. 6.2. Данные для создания объекта LSMW

Шаг 2: параметры метода загрузки: выбор/создание записи пакетного ввода (Batch Input)

Дважды щелкаем по пункту меню Maintain Object Attributes, указываем имя записи (рис. 6.4).

Рис. 6.4. Указываем имя записи для Batch Input Recording

Выбираем пункт Batch Input Recording, нажимаем кнопку Overview. Создаем запись для транзации MBST; на выходе получаем данные как на рис. 6.5.

Рис. 6.5. Результат создания записи в Batch Input Recording

Шаг 3: создание структуры источника [данных]

Дважды щелкаем по пункту Maintain Source Structures в основном меню транзакции LSMW. После создания структуры система отобразит экран как на рис. 6.6.

Рис. 6.6. Создаем структуру источник для объекта транзакции LSMW

Шаг 4: ведение полей структуры источника [данных]

Щелкаем дважды по пункту Maintain Source Fields в основном меню транзакции LSMW.

Указываем поле в структуре (рис. 6.7.)

Рис. 6.7. Указываем поле в структуре — источнике данных

Введенные данные представлены в таблице 6.3. После добавления поля система покажет экран, как на рис. 6.7. В основном экране шага сохраняем данные и выходим к обзору списка шагов, чтобы перейти к следующему шагу.

Табл. 6.3. Описание структуры — источника данных для массового сторно документов материала

Шаг 5: соответствие структур источника данных и записи

Дважды щелкаем по пункту Maintain Structure Relations в основном меню транзакции LSMW. На этом шаге нам необходимо определить (задать) соответствие между внутренней структурой данных (то есть полями записи) и структурой источника данных. В случае метода записи этот шаг выполняется чаще всего автоматически; и от того, кто готовит загрузчик, требуется подтвердить привязку: сохранить и выйти к обзору списка шагов, чтобы перейти к следующему шагу (рис. 6.8).

Читайте также:  рассмотрите фотографии какие праздники они иллюстрируют прочитайте устойчивые словосочетания

Рис. 6.8. Результат присвоения структуры источника данных и записи

Шаг 6: мэппинг (соответствие) полей источника [данных] и полей записи пакетного ввода

Дважды щелкаем в основном меню транзакции LSMW по пункту Maintain Field Mapping and Conversion Rules. Нажмем на кнопку Layout и откроем блоки: Global Definitions, Processing times и Form Routines (ABAP Subroutines) (рис. 6.9).

Рис. 6.9. Откроем блоки lля вставки нужного нам ABAP-кода

Детальный мэппинг полей и блоков приведен в таблице 6.4.

Табл. 6.4. Мэппинг полей структур BAPI и входного файла

Заметим, что подпрограмма ur_skip_rec была создана в одной из предыдущих глав в рамках этого же проекта, поэтому эта подпрограмма доступна нам и сейчас. Напомним, что подпрограмма ur_skip_rec является user-defined routines skip_rec, определяемая в пункте меню транзакции LSMW Maintain Fixed Values, Translations, User-Defined Routines (рис. 6.10). Сам код подпрограммы приведен в таблице 4 вместе с остальными полями. Детальное пояснение подпрограммы было дано в главе 4.

Рис. 6.10. User defined routines skip_rec

Шаг 7: указание пути к файлу (application server)

Прежде чем указывать путь к файлу, необходимо создать файл по нужному нам формату. Для создания входного файла будем использовать табличный редактор Excel. Первую строку в Excel заполним техническими именами полей входной структуры. А строки, начиная со 2-й, заполним уже конкретными значениями (рис. 6.11).

Рис. 6.11. Данные загрузки в табличном редакторе Excel

Рис. 6.12. Данные в блокноте, перенесенные из табличного редактора Excel

Мы создали файл на жестком диске ПК (обратим внимание, что кодировка файла UTF-8). Однако теперь нам необходимо создать файл на Application Server. Для первоначального создания/загрузки файла на application server можно использовать транзакцию CG3Z (Upload file) (рис. 6.13). Необходимо заметить, что из SAP-системы можно загрузить файл в ограниченное количество директорий на application server. По поводу того, какие директории можно использовать, а какие — нет, лучше проконсультироваться с командой базиса на каждом конкретном проекте. Более того, рекомендуется выделить для LSMW отдельную директорию, а в рамках общей папки LSMW выделить подпапки для конкретных проектов (но это очень идеальная ситуация). Как правило, папки для временной загрузки доступны для SAP-пользователя на Linux. К временным папкам относятся: /usr/sap/tmp/, /tmp/. Список папок можно просмотреть с помощью транзакции AL11 или функционального модуля /SAPDMC/LSM_F4_SERVER_FILE. Мы выполним первоначальную загрузку (а вместе с ней и создание файла на сервере) в папке /usr/sap/tmp/ (рис. 6.13).

Рис. 6.13. Успешная файла на application server

После создания текстового файла на сервере приложений переходим к указанию его в качестве файла-источника. Дважды щелкаем по пункту меню транзакции LSMW Specify Files. Задаём параметры файла (рис. 6.14.).

Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland

Источник

Batch input sap что это

Часовой пояс: UTC + 3 часа

Правила форума

Здравствуйте, я новичок, просветите меня пожалуйста что такое Batch Input и зачем он нужен.

Основные использования:
1. Для загрузки данных из локального файла
2. Для автоматизации какой-то операции

программа «пакетный ввод» пробегает по указанной транзакции
и заполняет поля указанными данными

Председатель

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1554
Откуда: Москва

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

Читайте также:  memorandum of association and articles of association что это
Председатель

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1554
Откуда: Москва

Источник

SAP LSMW — проще некуда!

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

SAP LSMW — проще некуда!

Наиболее распространенными транзакциями для ввода пакетных данных (это когда много однотипных данных нужно ввести в одну или несколько форм) в SAP являются SECATT и LSMW. В силу разных причин SAP рекомендует отключать ECATT для продуктивных сред. Если администраторы базиса последуют этой рекомендации, у читателя не будет возможности запустить свой пакет сразу в продуктивную систему, и придется прогонять данные в тестовых средах. А это, обычно, занимает больше времени: подготовка данных справочников, приведение настроек к равенству с продуктивом и т.д. Именно поэтому можно и нужно уметь работать с транзакцией LSMW. А наиболее простой способ работы с этой замечательной транзакцией будет описан в этой инструкции

Запуск транзакции.

Если вы не умеете запускать транзакции SAP, то зачем вообще открыли эту инструкцию?

Создание проекта

Запустите транзакцию LSMW

Для создания нового проекта нажмите листик .

Здесь мы вводим проект, подпроект и объект. Проект может содержать множество подпроектов, которые могут содержать множество объектов.

Заполните поля: Проект (Project) и Описание (Description). Код проекта должен быть написан на латинице.

Нажмите ОК (зеленую галочку ;).

Заполните поля: Подпроект (Subproject) и Описание (Description). Код подпроекта должен быть написан на латинице.

Заполните поля: Объект (Object) и Имя (Name). Код объекта должен быть написан на латинице.

Название проекта, подпроекта и объекта автор рекомендует скопировать в блокнотик.

Заполнение проекта

Существует множество вариантов заполнения проектов LSMW. Автор предлагает рассмотреть наиболее простой вариант. В общем виде он таков:

У данных логических пунктов есть технические аспекты. SAP предлагает выполнять все технические моменты с помощью “регламента”, которые вы увидите на форме ниже. Подробнее остановимся на каждом шаге регламента.

Нажмите Часы

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

Maintain Object Attributes. Ведение атрибутов объекта.

Здесь создаем запись последовательных действий пользователя (скрипт).

Выделите строку и нажмите Часы.

Нажмите

Выберите «Batch Input recording» (запись входного пакета) и нажмите обзор.

Откроется форма ведения записи пакета

Нажмите «Листик». Укажите название записи и её описание. Логин не трогайте.

Далее введите код транзакции, в которой будет происходить все действо.

В нашем примере покажем, как массово присвоить роли для штатных должностей. Итак:

Нажимаем ОК. Заполняем данные. Находим должность.

Нажимаем “Листик”. Вводим тип объекта и роль.

Получаем отчет . Выходим из транзакции.

Получаем такую форму:

SAP показывает, какие значения в полях были и какие были введены руками.

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

Если нужно создать только несколько переменных (в которые в дальнейшем будут литься данные), то выбираем строку и нажимаем кнопку .

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

В розовых Полях появятся названия переменных.

Сохраняем на каждом экране.

В поле “Recording” прописываем название записи.

Существует возможность записать скрипт и вне данной транзакции. Например вот так:

Нажмем кнопку

Укажем название записи и код транзакции. Конец примера.

Название записи и есть то, что нам нужно прописать в поле “Recording”

Сохраняем . Выходим .

Maintain Source Structures. Ведение структуры.

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

Заходим. Создаем структуру по-умолчанию. Сохраняем. Выходим.

Maintain Source Fields. Ведение источника полей.

Здесь создаются пользовательские переменные, а также заполняются их параметры.

Некоторые специалисты долго корпят над созданием структуры пользовательских переменных. Автор покажет быстрый и эффективный способ избавить себя от подобных “мучений”.

Заходим в форму. Нажимаем мышкой на структуру (выделена желтым) и переключаемся в табличный режим

Открываем еще один режим SAP . Запускаем транзакцию SE16. Вводим таблицу /SAPDMC/LSGBDC

Ентер . Вводим название нашего проекта (блокнотик ауу. ).

Выберем нужные поля. Меню:

Выгружаем даные в текст с табуляторами

Проваливаемся в «Имя файла» и указываем место хранения и имя файла

Создать. Если файл уже существует – Заменить.

В созданном файле Excel удалям все пустые столбики и строки. Удаляем повторы и строки с размером равным нулю. Между столбцами вставляем еще один столбец “Type”. Всем ячейкам столбца задаем значение “С” (char).

Копируем все данные в таблицу LSMW (без заголовка)

Maintain Structure Relations. Ведение связей структуры.

Здесь указываем связи структур, если их несколько. В нашем примере структура одна. Щелкаем на структуру и нажимаем Relationship

ОК. Сохраняем. Выходим.

Maintain Field Mapping and Conversion Rules. Ведение мэпинга (связей) и правил изменения данных.

Здесь указываем связь переменных скрипта и переменных структуры.

Нажимаем на первое поле.

Нажимаем на кнопку

Связываем пользовательские переменные структуры и переменные скрипта

Так и проходим по всем полям вручную.

Или, если названия переменных совпадают, делаем автомэпинг:

Смотрим на проценты и нажимаем (см. ниже)

Maintain Fixed Values, Translations, User-Defined Routines

Ведение констант, преобразований, правил.

В нашем примере эту “муть” рассматривать не будем.

Зашли, нажали “Листик”. Ввели название. ОК. Вышли. Всё!

Specify Files

Создадим файл для загрузки. Открываем лист Excel. Открываем наш скрипт.

Из скрипта копируем (Ctrl+Y) переменные и вставляем вниз листа Excel. Выделяем вставленный столбец с переменными, копируем и транспонируем его в первую строку листа.

Тоже самое делаем со значениями по-умолчанию (это чтобы не запутаться, где какое поле).

Автор рекомендует выделить те переменные, которые будут меняться.

Дальше, копируем строки по вместо красных подставляем то что нужно (должности и роли).

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

Не забудьте удалить скопированные столбцы. Внимательно просматривайте файлы. Эксель любит «хавать» нули. А для SAP «001» и «1» это не одно и тоже. Поэтому только текстовый формат данных.

Вот что получаем на выходе:

Сохраняем. Выбираем этот файл для пакетного ввода.

Входим. Нажимаем карандаш.

Два раза щелкаем в “On the PC (Frontend)”.

Выбираем файл. Копируем его название.

Ставим точки и галки:

Сохраняем. Если система ругается на (название не больше 45 символов) переименуйте её. Выходим.

Assign Files

Здесь связываем файлы и структуру. Входим.

Нажимаем кнопку

Ок. Сохраняем. Выходим.

Read Data

Считывание данных. Входим. Указываем строки, которые будут считаны. Часы.

Display Read Data

Указываем с какой строки и по какую строку показать

Видим, что данные загрузились.

Convert Data

Конвертация данных. Запускаем, вводим строки от и до:

Display Converted Data

Просмотр конвертированных данных. Запускаем. Указываем строки от и до:

Если все желтое – значит формат полей и данных совпадает. Выходим.

Create Batch Input Session

Создадим сеанс пакетного ввода.

Всё по-умолчанию. Часы.

Run Batch Input Session

Запускаем пакет. Выделяем наш проекта. Меню: Сеанс –Выполнить в фоновом режиме.

Если сеанс выполнять в фоновом режиме программа игнорирует желтые сообщения. Запускаем.

Готово. Проверим данные.

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Источник

Читайте также:  killer shield msi что это
Сказочный портал