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

«Тра­нспо­ртная система SAP для чайников»
Вячеслав Шиболов:
Хорошая метафора с коробками. Наглядная.
«Кло­ни­ро­ва­ние ERP системы. Подробное описание не для ба­зи­сни­ка. Про­до­лже­ние»
Вячеслав Шиболов:
Артем, спасибо за ответ. Но тогда у меня такой вопрос - чем эта статья отличается от статьи на данную тему, если бы вы писали её для базисника?   Извините, может быть вы сочтёте это...
«По­льзо­ва­те­ль TMSADM»
Олег Филоненко:
Возможно ли сгенерировать RFC для TMS c SNC аутентификацией, поскольку неудобно, входя в системы без запроса пароля, вводить его для транспорта.

База знаний

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

Как перенести содержимое таблицы

25 июня 2014, 20:46

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

Как вы уже знаете, и в некоторых постах я упоминал про это, SAP системы объединяются в транспортные ландшафты, а транспортная система (TMS) позволяет осуществлять переносы (прежде всего настроек и разработок) между системами. Единицами переносов являются транспортные запросы, которые бывают двух основных типов:

  • запрос на настройку (customizing request),
  • запрос инструментальных средств (workbench request).

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

Для этого входим в транзакцию SE10 (SE09 или SE01, кому что нравится) и создаем новый запрос, выбрав пункт меню "Запрос/Задача -> Создать". Выбираем нужный тип транспортного запроса (Рис. 1).

Рис. 1. Создание запроса инструментальных средств - 1.

Создаем описание для запроса и сохраняем. Обратите внимание, что задачу можно не создавать (Рис. 2).

Рис. 2. Создание запроса инструментальных средств - 2.

После этого необходимо встать на номер созданного запроса и нажать кнопку "Просмотр списка объектов" (Рис. 3).

Рис. 3. Просмотр содержимого транспортного запроса.

На следующем экране необходимо перейти в режим редактирования и нажать на панели кнопку "Вставить строку" (Рис. 4).

Рис. 4. Добавление объектов в транспортный запрос.

Теперь необходимо вписать строку вида: R3TR:TABU:<table_name>. Здесь TABU - это тип объекта, обозначающий содержимое таблицы (Рис. 5).

Рис. 5. Добавление записей таблицы в запрос на перенос.

Если вы добавляете таблицу с данными, то есть типа "А", то система выдаст предупреждение (Рис. 6).

Рис. 6. Предупреждение при включении записей таблицы в запрос на перенос.

Чтобы его проигнорировать, необходимо на клавиатуре нажать клавишу "Enter".

После этого следует определить ключ SQL-запроса, по которому будут выбраны записи таблицы для переноса. Для этого необходимо дважды щелкнуть левой клавишей мыши на добавленную запись с таблицей. Для добавления ключа на следующем экране необходимо нажать кнопку "Вставить строку" (Рис. 7).

Рис. 7. Добавления ключа для выбора записей таблицы в транспортный запрос.

Для просмотра ключевых полей таблицы можно дважды щелкнуть левой клавишей мыши на строку с ключом (Рис. 8).

Рис. 8. Просмотр списка ключевых полей таблицы.

Можно задать SQL-запрос, заполнив все поля, можно использовать знак "*", но есть одно условие: ставить его можно только в конце запроса. В данном примере, можно задать запросы вида:

"*" - включить все записи всех мандантов,

"300*" - включить записи только манданта 300,

"30010000001*" - включить записи из манданта 300 для табельного номера 10000001, и т.д.

Я думаю, что основная идея понятна.

Итак, задать ключ, после чего нажать кнопку "Сохранить" (Рис. 9).

Рис. 9. Сохранение ключа для выборки записей таблицы.

Есть возможность просмотреть какие записи будут включены в запрос на перенос, если использовать тот ключ, который был задан. Для этого в экране с отображением ключа необходимо выбрать пункт меню "Перейти к -> Просмотр содержимого таблицы -> Определено через ключ" (Рис. 10).

Рис. 10. Просмотр содержимого таблицы, определенного через ключ.

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

Рис. 11. Деблокирование запроса с записями таблицы.

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

При переносе нескольких, выбранных записей эти записи просто добавляются/модифицируются в целевой системе. Однако SAP система предупреждает, что если переносить все записи с ключом "*", то в целевой системе все записи будут удалены, даже те, которых нет в исходной системе. То есть таблица будет предварительно очищена. Поэтому в данном случае, для ускорения процесса импорта рекомендую, с большой осторожностью, воспользоваться транзакцией SE14, о которой я писал в одноименном посте.

Ролевое назначение : SAP Консультант / Consultant

Функциональная область : Информационные технологии / IT, Basis, ABAP

Ключевые слова : Basis