Как сгенерировать псевдоним системы в /iwfnd/maint_service?

У меня следующая проблема:

Я создал приложение и соответствующие oData в интерфейсной системе. Все работало нормально. Потом меня научили, что это неправильно и я должен создавать oData в бэкенд-системе.

Так что я сделал это. Я создал точно такой же oData в бэкэнд-системе, создал другую службу для нового oData в транзакции /iwfnd/maint_service во внешнем интерфейсе, изменил источник данных в манифесте моего приложения, и все, казалось, работало нормально. Чтобы добавить приложение на панель запуска, мне понадобился еще один (или два?) сервиса в транзакции SICF (пути sap/bc/bsp/sap и sap/bc/ui5_ui5/sap). Они были сгенерированы автоматически для моего внешнего интерфейса-oData. Поскольку они не были сгенерированы автоматически во внешней системе для моего нового backend-oData, я добавил их вручную. Это, похоже, тоже сработало. Поэтому я перенес все в систему качества (приложение из WebIDE в SAP было перенесено как обновление уже существующего приложения).

А теперь моя проблема:

Вчера после переноса мое приложение отлично работало в только что обновленной версии. Сегодня я получаю ошибку в системе качества, которая гласит: Не найден системный алиас для сервиса ZEXAMPLE_SRV_0001 и пользователя USER1234 (я перевел это сообщение об ошибке с немецкого). Эта ошибка для меня новая и раньше у меня такого не было. Настройки для моего внешнего интерфейса-oData были другими (без системных псевдонимов и режима обработки службы = только совместное развертывание), и они были сгенерированы автоматически.

Теперь для моего бэкэнд-oData в системе разработки есть настройка на основе маршрутизации, и поддерживается правильный системный псевдоним, и приложение работает там отлично. Но в системе качества нет системности. Итак, я перенес системные алиасы из системы разработки в систему качества, но это не сработало, потому что системные алиасы в системе качества должны быть другими.

Я попытался сделать точно такие же настройки в системе качества для моего backend-oData, как и для frontend-oData, но затем в /IWFND/ERROR_LOG я получаю сообщение No service for namenspace /SAP/, Name ZEXAMPLE_SRV, Version 0001 found.

Так может ли кто-нибудь сказать мне секрет, какой шаг мне нужно сделать, чтобы все снова работало правильно? Я уже в отчаянии.

Большое спасибо и лучшие пожелания


person Julia    schedule 15.07.2020    source источник
comment
Вы активировали услугу в транзакции SICF?   -  person Marc    schedule 16.07.2020
comment
Большое спасибо за ваш ответ. Да я так и сделал. Я должен был сделать это в системе качества после транспортировки.   -  person Julia    schedule 16.07.2020


Ответы (1)


В вашей системе разработки откройте транзакцию /IWFND/MAINT_SERVICE и выберите сервис в каталоге сервисов.

Вы должны увидеть системные псевдонимы в правом нижнем углу:

введите здесь описание изображения

Нажмите Настройка и в следующем представлении переключитесь в режим редактирования:

введите здесь описание изображения

Как только вы перейдете в режим редактирования, вы можете выбрать Таблица › Транспорт. Вам будет предложено выбрать существующий транспорт или создать новый.

В окне настройки появятся две кнопки. Добавить в транспорт и Удалить из транспорта.

введите здесь описание изображения

Выберите строку системного псевдонима из таблицы и нажмите Добавить в транспорт.

Теперь нажмите сохранить!!! В противном случае псевдоним не будет частью транспорта. Он приостанавливается только тогда, когда вы нажимаете «Добавить для транспорта». Нажмите сохранить!!!

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

person Marc    schedule 16.07.2020
comment
Большое спасибо за ваш ответ. Я сделал именно это, и тогда у меня была система из системы развития в системе качества. Но это было не правильно, т.к. для каждой системы (dev, qual, prod) должен поддерживаться свой особый systemalias. Я получил это сообщение об ошибке в /iwfnd/error_log в системе качества: Ошибка RFC: RFC-Destination DEVCLNT100_DIA не существует. (оригинал: RFC Error: RFC-Destination DEVCLNT100_DIA exists nicht.). В системе разработки все работает с этой настройкой без ошибок. - person Julia; 16.07.2020
comment
Может быть, вы можете поговорить с администраторами вашей базы. Я думаю, что лучше всего, если псевдоним будет одинаковым во всех системах (например, LOCAL всегда указывает на вашу текущую систему). На всех серверах должен меняться только пункт назначения RFC (Псевдоним и пункт назначения не совпадают!) - person Marc; 16.07.2020
comment
Если псевдоним не будет изменен, то единственным другим вариантом (я думаю) является выполнение вышеуказанных шагов в каждой системе. - person Marc; 16.07.2020
comment
Хорошо, большое спасибо. Я сделаю так. Если я смогу найти какое-либо решение от администраторов базы, я дам вам знать :) - person Julia; 16.07.2020