1. Создать пользовательский веб-сервис
В примере используется пользовательский веб-сервис UsrCustomConfigurationService, разработка которого описана в статье Разработать пользовательский веб-сервис с аутентификацией на основе cookies.
В веб-сервисе UsrCustomConfigurationService измените параметр Method атрибута WebInvoke на POST.
Исходный код пользовательского веб-сервиса, используемого в примере, представлен ниже.
2. Создать замещающую страницу записи контакта
- Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
-
На панели инструментов реестра раздела нажмите Добавить —> Замещающая модель представления (Add —> Replacing view model).
-
В свойстве Родительский объект (Parent object) выберите схему модели представления Схема отображения карточки контакта (Display schema — Contact card) пакета ContactPageV2, которую необходимо заместить. После подтверждения выбранного родительского объекта остальные свойства будут заполнены автоматически.
- В объявлении модуля страницы записи в качестве зависимости подключите модуль ServiceHelper. Зависимости модуля описаны в статье Функция define().
3. Добавить кнопку на страницу записи контакта
-
В блоке Локализуемые строки (Localizable strings) панели свойств нажмите кнопку и заполните свойства локализуемой строки:
- Код (Code) — "GetServiceInfoButtonCaption".
- Значение (Value) — "Вызвать сервис" ("Call service").
-
Добавьте обработчик кнопки.
Для вызова веб-сервиса воспользуйтесь методом callService() модуля ServiceHelper. Параметры функции callService(), которые необходимо передать:
- UsrCustomConfigurationService — имя класса пользовательского веб-сервиса.
- GetContactIdByName — имя вызываемого метода пользовательского веб-сервиса.
- Функцию обратного вызова, в которой выполните обработку результатов сервиса.
- serviceData — объект с проинициализированными входящими параметрами для метода пользовательского веб-сервиса.
- Контекст выполнения.
Исходный код схемы замещающей модели представления ContactPageV2 представлен ниже.
- На панели инструментов дизайнера нажмите Сохранить (Save).
Результат выполнения примера
В результате выполнения примера после обновления страницы приложения на странице контакта появится кнопка Вызвать сервис (Call service). При нажатии на эту кнопку вызывается метод GetContactIdByName пользовательского веб-сервиса UsrCustomConfigurationService, который возвращает значение идентификатора текущего контакта.