26 марта 2014 г.

Копирование манданта SAP системы

Как вы знаете, в SAP системе есть такое понятие как мандант. Мандант системы, с одной стороны, это набор таких данных как: манданто-зависимые настройки (customizing), основные записи пользователей (users) и основные данные или данные приложений (application data, master data) (рис. 1).

Рис. 1. Структура данных в SAP системе.

С другой стороны, с технического ракурса, мандант это набор записей таблиц, у которых поле MANDT = <номер манданта>. На уровне бизнеса же, мандант - это автономная единица в SAP системе для работы предприятия и хранения данных. В теории, два предприятия могут работать в разных мандантах одной системы без какого-либо нарушения целостности и безопасности данных.

Учтите что, в англоязычной литературе, мандант это client.

Мандант имеет номер из трех цифр и, в системе может быть до 1000 мандантов (от 000 до 999).

После установки SAP системы, в зависимости от типа и версии продукта, в ней могут присутствовать несколько стандартных мандантов, таких как, 000, 001 и 066.

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

Существует три вида процедуры копирования:
  • локальная копия манданта,
  • удаленная копия манданта,
  • экспорт/импорт манданта.

Локальная копия манданта подразумевает, что копирование производится внутри одной SAP системы.

Процедура выполнения локальной копии следующая:
  1. В транзакции BD54 создать логическую систему для нового манданта.
  2. В транзакции SCC4 создать запись о новом манданте.
  3. Войти в новый мандант системы под псевдо-пользователем SAP* с паролем PASS.
  4. В транзакции SCCL запустить копирование с выбранным профилем для копирования.
  5. Для мониторинга процесса использовать транзакцию SCC3.
Полезные SAP notes:

Удаленная копия манданта (remote client copy) выполняется между двумя системами. Копия выполняется "на лету", то есть физической копии манданта не создается, место на жестком диске не используется. В качестве механизма используется RFC.

Процедура удаленного копирования манданта:
  1. В целевой системе войти в транзакцию BD54 и создать логическую систему для нового манданта.
  2. В целевой системе в транзакции SCC4 создать запись о новом манданте.
  3. В транзакции SM59 создать RFC-соединение до исходного манданта/системы.
  4. Войти в новый мандант системы под псевдо-пользователем SAP* с паролем PASS.
  5. В транзакции SCC9 запустить копирование с выбранным профилем.
  6. Для мониторинга использовать транзакцию SCC3 в целевой системе.
Полезные SAP notes:

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

Рис. 2. Планирование параллельных процессов при копировании манданта.

При выполнении копирования манданта через экспорт/импорт процедура состоит из двух частей: экспорта из исходной системы и импорта в целевую систему. Для проведения процедуры рекомендуется чтобы системы находились в одном транспортном ландшафте. При экспорте создается физическая копия исходного манданта, которая занимает место в транспортной директории.

Процедура экспорта манданта следующая:
  1. В исходной системе/манданте войти в транзакцию SCC8 и запланировать экспорт в транспортные запросы с выбранным профилем.
  2. Мониторинг производится в транзакции SCC3.

Процедура импорта манданта следующая:
  1. В целевой системе в транзакции BD54 создать логическую систему для нового манданта.
  2. В целевой системе в транзакции SCC4 создать запись о новом манданте.
  3. Войти в новый мандант системы под псевдо-пользователем SAP* с паролем PASS.
  4. Войти в транзакцию STMS, найти запросы с экспортом, запустить импорт запросов.
  5. После окончания импорта войти в транзакцию SCC7 и выполнить шаги пост-импорта манданта.
  6. Мониторинг последнего шага в транзакции SCC3.

Прежде чем выполнять любой вид копии манданта следует выполнить расчет необходимого дискового пространства. Об этом я уже писал тут.

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

При копировании манданта репозитарий не копируется (рис. 1). При удаленном копировании можно (выбрав соответствующий профиль копирования) скопировать манданто-независимые настройки. Объединить два манданта в один при копировании нельзя.

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

При удаленном копировании и экспорте/импорте необходимо чтобы структура таблиц исходной и целевой системы совпадали. Сравнение можно выполнить на предварительном этапе через кнопку "RFC/сравнение систем" (рис. 3).

Рис. 3. Сравнение структуры таблиц перед удаленным копированием.

Еще полезные SAP notes:

Автор: Шиболов Вячеслав Анатольевич


9 комментариев:

  1. Добрый день, Вячеслав. Подскажите пожалуйста, мне необходимо скопировать мандант, то есть получается будет перезапись. Как предварительно можно удалить данные манданта вручную?

    ОтветитьУдалить
    Ответы
    1. Добрый день, Bakhtiyar TT!

      Да, если вы копируете мандант в существующий, то будет происходить перезапись.
      Как удалить целевой мандант описано тут - http://sidadm.blogspot.ru/2014/04/sap.html
      В данном случае, вы разделите процесс на два этапа и снизите нагрузку на систему.

      Удалить
    2. Спасибо за ответ. А как удалить данные без удаления манданта?

      Удалить
    3. Там это описано. Удаляете мандант без удаления записи из таблицы T000.

      Удалить
    4. Спасибо за ответ! Не хотелось бы удалять мандант и потом заново его создавать, а можно как то удалить данные без удаления манданта?

      Удалить
    5. Так это тоже самое. Почитайте внимательно пост, из чего состоит мандант.

      Удалить
  2. ДД, скажите пож-ста как скопировать мандант с основными данными но без документов ??

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Документы=документы изменений? Профиль SAP_ALL копирует всё: настройки, основные данные, пользователей, роли, но без документов изменений.

      Удалить
  3. Не совсем так. Документы по материал, например, копируются. При этом через FAGLB03 видно, что в периоде есть финансовые проводки.

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

    ОтветитьУдалить