Меню

Запись каталога объекта: изменение системы оригинала

|

Как я уже упоминал, в SAP системе существует свой словарь данных (ABAP Dictionary), который не стоит путать со словарем базы данных.

Как я уже упоминал, в SAP системе существует свой словарь данных (ABAP Dictionary), который не стоит путать со словарем базы данных. Все объекты ABAP словаря имеют свою запись, которая называется запись каталога объекта. Эти записи в SAP системе хранятся в таблице TADIR (рис. 1). Даже сама таблица TADIR имеет запись о самой себе (рис. 2).


Рис. 1. Запись каталога объекта программы Z_DELETE_FROM_DEVACCESS.


Рис. 2. Запись каталога объекта таблицы TADIR.

Объект в SAP системе имеет ряд основных атрибутов: 

  • пакет разработки,
  • ответственный,
  • система оригинала.

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


Рис. 3. Пример пакета разработок.

У каждого пакета разработок есть уровень переносов, который используется в транспортной системе. Таким образом, при деблокировании запроса, SAP система по принадлежности объекта к пакету понимает в какую целевую систему направить запрос на импорт.

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

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


Рис. 4. Попытка внести изменения в программу с другой системой оригинала.

Как вы помните, любой объект в SAP системе может находится в двух областях:

  • область имен SAP (или так называемые,

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

У вас уже есть учетная запись?

Войти

Обсуждения Количество комментариев6

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

Олег Точенюк

  |  06 декабря 2016, 12:58

Ну оно ручками как-то, если вам надо сменить систему оригинала для сотни, другой объектов, короче не кошерно будет. Да и устанете. Поэтому есть такой вот отчетик: RSWBO_OBJCAT. Читаем документацию по его использованию и работаем.
 
======================================================================
Short text
Change Object Directory Entries
 
Purpose
This program enables you to change local and global object directory entries.
 
It is aimed particularly at cleaning up inconsistencies between local and global object directory entries.
 
Caution
This program can cause inconsistencies if used incorrectly.
The changes are not recorded. Include the changed objects manually in a request, and then transport the request.
Description
Select objects on the selection screen by entering a request or specifying the attributes of the object directory.
 
You then see a list of objects with the local original system, the global original system, the person responsible, and the package. You now have the option of selecting the objects, and copying the local original system to the global object directory, or copying the global object directory to the local original system.
 
Note the following:
Objects with the generation flag are not selected.
If the global original system is not filled, then there is no entry in the global object directory, and no entry can be included in the global object directory.
Objects from $ or T packages, or objects with generation flags are not included in the global object directory.
Prerequisites
You need administration authorization in the Transport Organizer area.
======================================================================

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

Вячеслав Шиболов

  |  06 декабря 2016, 19:16

Ну оно ручками как-то, если вам надо сменить систему оригинала для сотни, другой объектов, короче не кошерно будет. Да и устанете. Поэтому есть такой вот отчетик: RSWBO_OBJCAT. Читаем документацию по его использованию и работаем.
 
======================================================================
Short text
Change Object Directory Entries
 
Purpose
This program enables you to change local and global object directory entries.
 
It is aimed particularly at cleaning up inconsistencies between local and global object directory entries.
 
Caution
This program can cause inconsistencies if used incorrectly.
The changes are not recorded. Include the changed objects manually in a request, and then transport the request.
Description
Select objects on the selection screen by entering a request or specifying the attributes of the object directory.
 
You then see a list of objects with the local original system, the global original system, the person responsible, and the package. You now have the option of selecting the objects, and copying the local original system to the global object directory, or copying the global object directory to the local original system.
 
Note the following:
Objects with the generation flag are not selected.
If the global original system is not filled, then there is no entry in the global object directory, and no entry can be included in the global object directory.
Objects from $ or T packages, or objects with generation flags are not included in the global object directory.
Prerequisites
You need administration authorization in the Transport Organizer area.
======================================================================

Олег, для сотни да. Труднова-то.
Спасибо за комментарий

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

Руслан Бурхонов

  |  29 декабря 2016, 09:05

Ну оно ручками как-то, если вам надо сменить систему оригинала для сотни, другой объектов, короче не кошерно будет. Да и устанете. Поэтому есть такой вот отчетик: RSWBO_OBJCAT. Читаем документацию по его использованию и работаем.
 
======================================================================
Short text
Change Object Directory Entries
 
Purpose
This program enables you to change local and global object directory entries.
 
It is aimed particularly at cleaning up inconsistencies between local and global object directory entries.
 
Caution
This program can cause inconsistencies if used incorrectly.
The changes are not recorded. Include the changed objects manually in a request, and then transport the request.
Description
Select objects on the selection screen by entering a request or specifying the attributes of the object directory.
 
You then see a list of objects with the local original system, the global original system, the person responsible, and the package. You now have the option of selecting the objects, and copying the local original system to the global object directory, or copying the global object directory to the local original system.
 
Note the following:
Objects with the generation flag are not selected.
If the global original system is not filled, then there is no entry in the global object directory, and no entry can be included in the global object directory.
Objects from $ or T packages, or objects with generation flags are not included in the global object directory.
Prerequisites
You need administration authorization in the Transport Organizer area.
======================================================================

Для массового изменения системы оригинала скажем для всего пакета необходимо выделить выделить узел пакета (выделяться все объекты пакета) и набрать в поле для транзакций функциональный код MASS.

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

Олег Точенюк

  |  04 января 2017, 16:42

Для массового изменения системы оригинала скажем для всего пакета необходимо выделить выделить узел пакета (выделяться все объекты пакета) и набрать в поле для транзакций функциональный код MASS.

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

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

Руслан Бурхонов

  |  09 февраля 2017, 15:59

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

Если по скринам из статьи, то на рис.8 можно выбрать класс разработки Z001 (ставим курсор на узел и жмем на кнопку выделения узла(третья кнопка слева в тулбаре). Далее в поле для транзакций вводим слово MASS и жмем Enter. В принципе дальше уже все интуитивно понятно.
Таким образом можно выбирать любой узел дерева (всю систему, пакет и т.д.)

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

Олег Точенюк

  |  13 февраля 2017, 11:52

Если по скринам из статьи, то на рис.8 можно выбрать класс разработки Z001 (ставим курсор на узел и жмем на кнопку выделения узла(третья кнопка слева в тулбаре). Далее в поле для транзакций вводим слово MASS и жмем Enter. В принципе дальше уже все интуитивно понятно.
Таким образом можно выбирать любой узел дерева (всю систему, пакет и т.д.)

Ага понятно. Спасибо