You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

    • Используйте тег <Form>, чтобы отобразить виджет формы записи с заданными необходимыми параметрами (такие, как таблица, вид формы, ID записи). Это позволяет пользователю редактировать поля, сохраняя при этом реакцию обычной формы. Тег также поддерживает функциональность виджетов, добавленных на форму.

      Структура


      Данный виджет имеет следующую структуру:

      1. Встроенный виджет, содержащий элементы формы.
      2. Блок заголовка:
      3. Блок секций:
        • Секция Default должна быть первой в списке секций, если их больше одной. 
        • Каждая секция виджета относится к соответствующей секции формы и имеет собственный заголовок.
        • Этот блок обязателен.
      4. Блок нижнего колонтитула, который содержит UI-действия (кнопки и другое).

      Элементы 


      Элементы виджета формы, такие как элементы формы, могут быть разных типов. Все функции типов полей, используемые в формах, поддерживаются в виджетах (например, свойства, поведение, скалярный тип и другое).

      • Элементы виджета отображают дату и время в часовом поясе пользователя. 
      • Элементы виджета, содержащие поля типа Translated Text (например, заголовки таблиц и колонок, выбор опций) отображают значения на языке текущего пользователя.  

      Атрибуты


      Для создания динамической формы, используйте следующие атрибуты:

      Атрибут

      Тип

      Обязательный

      Описание

      classStringНетУкажите название класса CSS, указанного в поле виджете CSS.
      isPortalBooleanНетЧтобы задать тегу портальное поведение и визуализацию, установите значение true. По умолчанию установлено значение false.
      nameStringНет

      Этот атрибут содержит название формы.

      Задайте название формы через поле Шаблон, как в примере ниже: 

      Шаблон
      <Form tableName="{data.table_name}" sysId="{data.record_id}" name="custom"></Form>

      Затем вызовите его через клиентский скрипт виджета:

      Клиентский скрипт
      const builtInForm = s_widgets.getForm('custom');
      await builtInForm.save();
      tableNameStringДаУкажите название таблицы.
      viewStringНетУкажите название вида формы таблицы, например, По умолчанию.
      saveStringНет

      Добавьте на форму кнопку сохранения, добавив на нее необходимый текст (см. пример ниже).

      Используйте этот атрибут, когда по каким-либо причинам невозможно использовать UI-действия (значение атрибута uiActions  false).

      titleHideBooleanНетПри установленном по умолчанию значении true заголовок формы скрыт. 
      uiActionsBooleanНетУстановите значение true, чтобы сделать возможным использование UI-действий. В противном случае их использование будет запрещено (кроме кнопки Сохранить, определенной атрибутом save).
      userScriptsBooleanНетЧтобы отключить клиентские скрипты выбранной таблицы, установите для этого атрибута значение false. Значение по умолчанию true.
      sysidStringНет

      Укажите ID записи таблицы, но сначала укажите таблицу через параметр tableName.

      Если не указать sysid, то отобразится форма новой записи.

      Пример формы


      Form
      <Form tableName="user" sysid="158747771611397284" view="Profile" save="Новая кнопка сохранения" uiActions="true" userScripts="true"></Form>

      Дочерний тег IndicatePresence


      Используйте тег <IndicatePresence> в сочетании с тегом <Form>, чтобы добавить на форму виджет индикации присутствия других пользователей на записи.

      Для отображения виджета, на форме таблицы должен быть установлен флажок Отображать присутствие (indicate_presence=true).

      Доступные атрибуты:

      АтрибутТипОбязательныйОписание
      tableNameStringДа

      Укажите название таблицы. Значение должно соответствовать значению атрибута tableName тега <Form>.

      recordIdStringДа

      Укажите ID записи таблицы. Значение должно соответствовать значению атрибута sysid тега <Form>.

      Пример:

      IndicatePresence
      <IndicatePresence tableName="{data.table_name}" recordId="{data.record_id}"></IndicatePresence>

  • No labels