Общий контроллер SAP HCM PersInfoWrapperController

Уважаемые эксперты SAP Fiori.

Может кто-нибудь посоветовать по проблеме, с которой я столкнулся. Я пытаюсь расширить стандартное приложение HCM Fiori — мои коммуникационные данные. Требование состоит в том, чтобы добавить некоторые проверки к входным данным в одном из представлений при нажатии кнопки сохранения.

К сожалению, я не могу найти соответствующий контроллер для добавления проверки, представление использует общий контроллер HCM «hcm.fab.lib.common.controller.PersInfoWrapperController», и может ли кто-нибудь посоветовать, где добавить пользовательский код в этом случае и даже кнопка сохранения тоже есть в «sap.ushell.ui.footerbar»? Заранее спасибо.

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

Структура проекта:

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


person lampstand    schedule 25.04.2019    source источник


Ответы (2)


Представление, которое вы показываете на снимке экрана, представляет собой представление «Отображение» и содержит только метки и тексты. Таким образом, вы не можете использовать это представление для проверки ввода. Соответствующее представление «Редактировать», которое вы можете использовать, это «99_Edit_Default_V001.view.xml»: введите здесь описание изображения

В этом представлении вы найдете соответствующие поля ввода.

Вместо того, чтобы использовать PersInfoWrapperController, как вы упомянули, вы можете использовать поэтому PersInfoCommonCountryController, как показано выше.

Этот контроллер находится в общей службе «HCMFAB_COMMON», которая совместно используется всеми приложениями ESS вместе. PersInfoCommonCountryController используется для экранов редактирования во всех приложениях PersInfo. Он предоставляет метод «validateField», который проверяет только обязательные поля, но не необязательные поля.

Проверяются все поля с атрибутом fieldGroupIds="PersInfoValidation". В стандарте SAP это все поля ввода на экранах, поставляемых SAP. Controller-Hooks для пользовательских расширений в настоящее время недоступны.

Одним из способов реализации проверки входных данных для конкретного клиента может быть реализация специфичного для клиента «CommonCountryController» на основе универсального PersInfoCommonCountryController от SAP — аналогично специфичному для приложения «». CommonCountryController»: введите здесь описание изображения Контроллер для конкретного приложения (отмечен зеленым цветом) необходимо заменить контроллером для конкретного клиента.

В дополнение к этому вам необходимо предоставить свой собственный экран для конкретного клиента и указать там в заголовке под «controllerName» свой собственный контроллер для конкретного клиента.

Чтобы загрузить экран для конкретного клиента, вам необходимо создать реализацию области улучшения «HCMFAB_PERSINFO» для конкретного клиента в серверной части. Версия для страны будет «99». ».

Эта реализация может наследоваться от класса «CL_IM_HCMFAB_PERSINFO_CONFIG99».

Метод «IF_EX_HCMFAB_PERSINFO_CONFIG~GET_SCREEN_VERSIONS» необходимо переопределить, чтобы вернуть экран для конкретного клиента для идентификатора приложения «if_hcmfab_constants=>gc_application_id-mycommunication ('MYCOMMUNICATION')»: введите здесь описание изображения

person Community    schedule 30.04.2019
comment
Спасибо @SAP Fiori Crew, это помогло мне. Извините за поздний ответ - person lampstand; 06.06.2019

Спасибо @SAP Fiori Crew, это помогло мне. Извините за поздний ответ

person lampstand    schedule 05.06.2019