Способы инициализации данных диалога редактирования

Выбор способа инициализации данных диалога редактирования осуществляется на основе данных, имеющихся на момент открытия диалога.

Способ инициализации данных задаётся в опции initializingWay.

Открытие диалога редактирования по клику на строку реестра

При открытии диалога редактирования по клику на строку реестра для работы некоторых способов инициализации необходимо, чтобы в конфигурации Controls/form:Controller были заданы опции key или record. В зависимости от значений этих опций необходимо задать способ инициализации диалога редактирования в опции initializingWay.

Значение опции initializingWayНеобходимо задать в конфигурации Controls/form:ControllerКак диалог инициализирует данные?
keyrecord
createДиалог отобразится после того, как запись будет создана на источнике данных.

Создаётся новая запись в источнике данных диалога редактирования. В свойстве createMetaData можно определить значения полей, с которыми будет инициализирована новая запись.
read+Диалог отобразится после того, как запись будет прочитана на источнике данных.

Редактируемая запись вычитывается из источника данных диалога редактирования по переданной опции key. В свойстве readMetaData можно определить значения полей, которыми будет инициализирована редактируемая запись.

Для ускорения построения данных диалога редактирования необходимо внутри шаблона использовать content.record.
local+Диалог будет открыт мгновенно.

Редактируемая запись извлекается из переданной опции record. Запрос к источнику данных диалога редактирования не происходит.
delayedRead++Диалог будет открыт мгновенно.

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

Параллельно открытию диалога происходит вычитывание редактируемой записи с полным набором данных. Чтение записи выполняется из источника данных диалога редактирования по переданной опции key. В свойстве readMetaData можно определить значения полей, которыми будет инициализирована редактируемая запись.

Этот способ инициализации данных — компромисс между скоростью открытия диалога и временем подготовки отображаемых данных.
delayedCreate+Диалог будет открыт мгновенно.

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

В следующем примере редактируемая запись извлекается из источника данных диалога редактирования:

<!-- WML -->
<Controls.form:Controller 
   name="formControllerInst" 
   source="{{ _dataSource }}"
   record="{{ _record }}" 
   key="id"
   initializingWay="delayedRead">

Открытие диалога редактирования, описанного через pagex

Если ваша страница описана через pagex, то для открытия диалога редактирования передайте опцию pageId в контрол-опенер. Подробнее о создании страницы на pagex читайте в статье.

Чтобы задать способ открытия диалога редактирования, установите значение preload для опции initializingWay.

<!-- WML -->
<Controls.form:Controller 
   name="formControllerInst" 
   source="{{ _dataSource }}"
   record="{{ _record }}" 
   key="id"
   initializingWay="preload">