Автоматический запуск базы данных Oracle системы SAP

Чтобы заставить систему автоматически стартовать базу Oracle нужно:

В реестре:

HKLM\Software\Oracle\HomeX\ORA_<DBSID>_AUTOSTART

параметр ORA_SID_AUTOSTART  поставить в значение true

Так же в этой ветке есть интересный параметр:

ORA_SID_SHUTDOWNTYPE - при выполнении команды shutdown в sqlplus будет выполнена мягкая команда shutdown immediate

Добрые советы по SAP..

  • при копировании манданта проверьте, что у вас много места в тэйблспэйсе PSAPTEMP. При копировании больших таблиц в нем должно быть достаточно места
  • при выполнении скрипта sapdba_role имейте в виду, что параметр запуска выглядит sqlplus /nolog @sapdba_role SR3 или sqlplus /nolog @sapdba_role SR3DB. А не sqlplus /nolog @sapdba_role SAPSR3
  • если при заходе в систему GUI пишет - rabax during sapgui logon - проверьте, верное ли системное время на уровне OS
  • если у пользователя пропала история ввода данных в поля, один из вариантов - проверьте, не включена ли галочка МЕДЛЕННОЕ СОЕДИНЕНИЕ в SAP GUI
  • если у пользователя перестали печататься документы, а лишь попадают в спул (метод печати G), хоть и в настройках стоит галочка немедленной печати - ему не хватает кол-ва режимов. Окно фронт-энд печати требует отдельного режима. Просто закройте лишние окна.

Как узнать кто изменил данные RFC

SCU3 >     RFCATTRIB, RFCDES, RFCDOC >  анализ изменения этих таблиц
для работы SCU3 должен быть активирован параметр rec_client.

Так же можно посмотреть таблицу DBTABLOG

OB52 — Не изменяемо в QA системе

У ваших консультантов появилась необходимость ввести данные в тестовую систему, пользуясь транзакциями OB52, S_ALR_87003642,
но у них появляется сообщение о том, что система в статусе «не изменяемо», хотя в продуктивной системе это действие разрешено?
Имеется три пути решения сложившейся ситуации:
1. Открыть мандант в системе тестирования на изменение и внести данные.
При помощи тр. SCC4 разрешаем изменение репозитария и настроек.
2. Изменить роль манданта в системе тестирования со значения «Тест» на «Продуктивный» при помощи той же транзакции SCC4
3. Описан в ноте Note 214132 — OB52: No current settings
И Вуаля! Все работает. Главное не забудьте вернуть настройки в исходное состояние после того, как консультант завершит ввод данных

А вот и нота:

Symptom

If it has been set in Customizing that no changes are to be made to the system, the posting periods can no longer be opened and closed (Transaction OB52).

Other Terms
V_T001B, SOBJ, V_T001B, CURSETTING

Reason and Prerequisites
The maintenance and transport object V_T001B is not declared as a current setting because of an incorrect delivery.

Solution
Start Transaction SOBJ and for object V_T001B set the flag "Current settings" in the header data.

Блокировка манданта от входа

Для блокировки, разблокировки манданта, используйте транзакцию se37
1. SCCR_LOCK_CLIENT (для блокировки манданта)
2. SCCR_UNLOCK_CLIENT (для разблокировки манданта)
Данная функция предназначена для блокировки\разблокировки манданта от входа пользователей. При блокировки манданта, всем пользователям попытавшимся войти в мандант будет появлятся сообщение «данный мандант блокирован от входа». Мандант доступен будет доступен для входа только пользователям SAP* и DDIC.
Для разблокировки:
1. Запустите тр. SE37
2. Введите имя модуля SCCR_UNLOCK_CLIENT
3. Нажмите F8 для активации
4. Введите номер манданта и нажмите (F8).

Для блокировки процедура аналогична, только с модулем SCCR_LOCK_CLIENT

SAP STMS. Как узнать кто перенес запрос

Можно посмотреть в табличке TPALOG,

либо в истории импорта:

Пункт меню "Обработать" > "Показать больше" (Ctrl+Shift+F1) > столбец "Пользователь"

либо в истории импорта:

Правой кнопкой на заголовок таблицы > "показать больше". Добавится столбец "Пользователь"

NIPING

На сервере SAP:
niping -s -I 0

На клиенте:

Measuring throughput
niping -c -H <nipingsvr> -B 100000

Measuring RTT
niping -c -H <nipingsvr> -B 1 -L 100

Long LAN stability test:
niping -c -H <nipingsvr> -B 10000 -D 100 -L 360000


Long WAN test (stability):
niping -c -H <nipingsvr> -B 200 -D 1000 -L 36000

Long WAN test (idle timeouts):
niping -c -H <nipingsvr> -P -D 3600000

Short throughput/stability test:
niping -c -H <nipingsvr> -B 1000000 -L 100

MTU test:
niping -c -H <nipingsvr> -B <nnn>

Vary <nnn> according to these values: 500, 1000, 1400, 1500, 4000, 10000 and 40000

Переименование системы SAP. Сделать из продуктивной системы тестовую.

Раньше это считалось невозможным, но SAP выпустил утилиту, позволяющую переименовать систему. Особенно это удобно когда у вас виртуализация и нужно сделать из продуктивной системы тестовую, а копировать мандант по RFC или через транспортную систему долго.

 

Вам поможет SOFTWARE PROVISIONING MGR 1.0 (если ссылка не работает поиграйтесь с именем хоста websmp207.sap-ag.de, быть может он в это время не доступен:

https://websmp207.sap-ag.de/~form/handler?_APP=00200682500000001943&_EVENT=DISPHIER&HEADER=Y&FUNCTIONBAR=N&EVENT=TREE&TMPL=67838200100200018544&V=MAINT&TA=ACTUAL&PAGE=SEARCH

 

https://websmp207.sap-ag.de/~form/handler?_APP=00200682500000002672&_EVENT=DISPLAY&_SCENARIO=01100035870000000122&_HIER_KEY=501100035870000015092&_HIER_KEY=601100035870000179416&_HIER_KEY=601100035870000236470&_HIER_KEY=701100035871000563073&#wrapper

 

Общий принцип даной процедуры:

  1. Клонируем систему
  2. Запускаем клон, не давая ему сеть.
  3. Отключаем систему от сети, на место которой должна встать новая система.
  4. Переименовываем имя хоста на то, которое будет, IP-адрес.
  5. Правим конфигурационные файлы oracle, дабы избежать подключения к продуктивной базе.
  6. Запускаем SOFTWARE PROVISIONING. (для linux можн запустить SSH -Y дабы получить экран X11 у себя на клиенте).
  7. Производим переименование. (для windows два косяка: Косяк1 - переменная TMP и TEMP не должны указывать в каталог, где находится SAP система. Их нужно временно направить в другой каталог, например c:\temp. Косяк 2 - проверьте, что база остановлена - попробуйте переименовать каталог базы данных. Если не получается - смотрите кто держит файлы. Можно воспользоваться  unlocker. В моем случае это была почему-то оракловая java, хотя все службы были остановлены)
  8. Убеждаемся, что во всех профилях теперь указан правильный SID, имя хоста. Убеждается что каталог базы данных теперь тоже имеет нужное название.
  9. Отключаем архивлоги
  10. Запускаем SAP, молимся
  11. Заходим в систему. SM59 - грохаем RFC, ссылающиеся на продуктивных хост. RZ12, SMLG - убиваем лишние хосты. Проверяем SM51.
  12. SE06 выполняем постпроцессинг. Грохаем транспортную конфигурацию на этой системе. Останавливаем фоновые задания, далее с ними нужно будет разобраться. Стандартные нужно пересоздать в SM36, пользовательские отдать им на рассмотрение. DB13 пересоздаем задания.
  13. SECSTORE - убрать красные записи.
  14. SCC4, создаем новую запись о манданте, ведь мы не хотим чтобы на продуктиве и тесте были одинаковые номера мандантов.
  15. Выполняем локальное копирование (SCCL) манданта из старого в новое, не забыв о месте в тейблспейсах. Ведь новая система на данный момент будет содержать 2 копии продуктивного манданта.
  16. Заходим в новый мандант, выполняем BDLS
  17. Распространяем транспортную конфигурацию на новоявленный хост.
  18. SP12, проверка непротиворечивости
  19. Удаляем старый мандант
  20. Делаем оффлайн реорг таблиц, самых жирных особенно.
    пример :
    brspace -u / -f tbreorg -t  "COEP","VBFA","BSIS" -p 8
  21. Пересобираем статистику.
  22. Заказываем новую лицензию.
  23. Радуемся

 

В SAP EWM после перевода времени некорректно отображается время создания складской задачи

SAP Extended Warehouse Management. Проблема после перевода времени:

Нюанс в том, что в EWM для каждого склада можно выбрать свой часовой пояс.

1

 

 

 

 

 

 

 

Выбираем единицу логической цепочки

2

 

 

 

 

 

 

 

 

 

 

 

Видим, что часовой пояс по-прежнему RUS04, меняем его на нужный нам (RUS03 для Москвы)

3

Если Oracle не стартует из-за не верного параметра

Если Oracle не стартует из-за не верного параметра:

коннектимся к базе как умеем, например

sqlplus / as sysdba (если настроен NTS)

Выполняем:

     create pfile='d:\tmp\pfile.ora' from spfile;

Правим ошибочный параметр в pfile;

Запускаем базу с pfile

     startup pfile='d:\tmp\pfile.ora';

Создаем spfile из pfile обратно:

     create spfile from pfile='d:\tmp\pfile.ora';