Информация о расширенной карточке

Данный раздел содержит описание примера разработки и подключения собственного серверного расширения для чтения значения полей, загруженных и не загруженных на страницу.

Ссылка на пример на GitHub: ExtendedCardInfo.

Пример рассчитан на версию Web-клиента 6.1 или выше.

Перечень необходимых инструментов:

Сборка и установка

  1. Откройте /Samples.sln.

  2. Собрать проект ServerExtensions > ExtendedCardInfo > ExtendedCardInfoServerExtension.

  3. Откройте консоль в папке ServerExtensions > ExtendedCardInfo > ExtendedCardInfoWebExtension и выполните команду npm install, затем npm update и в конце npm run build:prod.

  4. Скопировать каталог SamplesOutput\Extensions\ExtendedCardInfoServerExtension в каталог Путь к сайту Web-клиента\Extensions.

  5. Скопируйте файл SamplesOutput\Extensions\ru\ExtendedCardInfoServerExtension.resources.dll в каталог Путь к сайту Web-клиента\Extensions\ru.

  6. Скопируйте файл SamplesOutput\Extensions\uk\ExtendedCardInfoServerExtension.resources.dll в каталог Путь к сайту Web-клиента\Extensions\uk.

  7. Скопируйте каталог SamplesOutput\Content\Modules\ExtendedCardInfoWebExtension в каталог Путь к сайту Web-клиента\Content\Modules.

  8. Перезапустите dvwebclient.

Проверка примера

  1. Запустите конструктор разметок.

  2. Скопируйте любую разметку просмотра.

  3. Выберите условия использования этой разметки.

  4. Откройте разметку и для ЭУ RegDate на событие onChanged привязать функцию extendedCardCheckDates.

    Для разных видов карточки название может варьироваться, например, RegistrationDate.
  5. Сохраните разметку.

  6. Перезапустите dvwebclient.

  7. Откройте карточку с этой разметкой.

  8. Убедитесь, что при изменении даты появляется сообщение.

Проект "ExtendedCardInfoServerExtension"

Проект-расширение для Web-клиента. Содержит бизнес-логику для чтения значения полей, загруженных и не загруженных на страницу.

Демонстрирует расширение функционала с помощью добавления новых сервисов, контроллеров. Реализован контроллер ExtendedCardController с методом Get, который вызывает сервис IExtendedCardService для чтения не загружаемых на страницу полей документа:

  • CreateDate

  • ChangeDate

  • Description

  • BarCode

Проект "ExtendedCardInfoWebExtension"

Проект-расширение клиентской части Web-клиента. Содержит клиентский скрипт функции extendedCardCheckDates, которая вызывается на событие onChanged ЭУ RegDate. С помощью requestManager.get отправляем запрос на сервер для получения расширенной модели IExtendedCardModel и сравниваем поля.