Общий контроллер SAP HCM PersInfoWrapperController - PullRequest
0 голосов
/ 25 апреля 2019

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

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

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

Вид: enter image description here

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

enter image description here

Ответы [ 2 ]

1 голос
/ 30 апреля 2019

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

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

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

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

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

Один из способов реализации специфичной для клиента проверки ввода может заключаться в реализации специфичного для клиента « CommonCountryController » на основе универсального * 1030 SAP* PersInfoCommonCountryController - аналогично « CommonCountryController » для конкретного приложения: enter image description here Необходимо заменить контроллер для конкретного приложения (отмеченный зеленым цветом) вашим собственным клиентомконкретный контроллер.

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

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

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

Метод « IF_EX_HCMFAB_PERSINFO_CONFIG ~ GET_SCREEN_VERSIONS » необходимо переопределить, чтобы вернуть экран, специфичный для клиента, для идентификатора приложения «if_hcmfab_constants => gc_application_id-my * Communication * (MYCOM):« MYCOM:enter image description here

0 голосов
/ 06 июня 2019

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

...