Реализовать конвертацию значения поля на странице

Средний
PDF

Пример. На страницу записи пользовательского раздела Converters добавить конвертер, который конвертирует значение поля Название (Name) в верхний регистр. Значение поля Название (Name) остается неизменным, а конвертированное значение отображается в компоненте типа Надпись (Label).

1. Настроить интерфейс страницы 

  1. Используя шаблон Данные и бизнес-процессы (Records & business processes), создайте пользовательское приложение Converters. Для этого воспользуйтесь инструкцией, которая приведена в статье Создать пользовательское приложение.
  2. В рабочей области страницы приложения Converters откройте страницу Страница записи Converters (Converters form page).

    Поле Название (Name) по умолчанию добавлено на страницу Страница записи Converters (Converters form page).

  3. В рабочую область Freedom UI дизайнера добавьте компонент типа Надпись (Label).
  4. На панели действий Freedom UI дизайнера нажмите на кнопку . После сохранения настроек страницы открывается исходный код страницы Freedom UI.

2. Настроить конвертацию значения поля 

Бизнес-логика настраивается в дизайнере клиентского модуля. В этом примере настроим конвертацию значения поля. Конвертируем значение поля Название (Name) страницы Страница записи Converters (Converters form page).

  1. В секции converters реализуйте пользовательский конвертер usr.ToUpperCase.

    Секция converters
    converters: /**SCHEMA_CONVERTERS*/{
        /* Пользовательский конвертер. Конвертирует значение в верхний регистр. */
        "usr.ToUpperCase": function(value) {
            return value?.toUpperCase() ?? '';
        }
    }/**SCHEMA_CONVERTERS*/,
    
  2. В секции viewConfigDiff привяжите свойство caption элемента Label к атрибуту $UsrName модели. $UsrName — значение поля Название (Name). К атрибуту $UsrName добавьте конвертер usr.ToUpperCase.

    Секция viewConfigDiff
    viewConfigDiff: /**SCHEMA_VIEW_CONFIG_DIFF*/[
    ...,
    {
        "operation": "insert",
        "name": "Label",
        "values": {
            ...,
            /* Привязывает конвертер usr.ToUpperCase к атрибуту $UsrName. */
            "caption": "$UsrName | usr.ToUpperCase",
            ...
        },
        ...
    }
    ]/**SCHEMA_VIEW_CONFIG_DIFF*/,
    
    Полный исходный код схемы страницы
  3. На панели инструментов дизайнера клиентского модуля нажмите Сохранить (Save).

Результат выполнения примера 

Чтобы посмотреть результат выполнения примера:

  1. Перейдите на страницу приложения Converters и нажмите Запустить приложение (Run app).
  2. На панели инструментов приложения Converters нажмите Добавить (New).
  3. В поле Название (Name) введите значение "Converters's name".

В результате выполнения примера на странице конвертера при заполнении поля Название (Name) его значение конвертируется в верхний регистр и отображается в компоненте типа Надпись (Label). При этом значение поля Название (Name) не меняется.