Корневой элемент schema:
<?xml version='1.0' encoding='UTF-8'?> <schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema"> <schema name="{name}" extends="{schema name}" recalc="true" workflow="false"> <{property} name="{name}"/> <param-specification> <string-ref ref="{string name}" value="{string value}"/> </param-specification> <custom-event-handler lang="JavaScript"><![CDATA[...]]></custom-event-handler> </schema> </schemas> |
Параметры | Описание |
---|---|
name | Указывается название схемы. Название должно быть уникально, если оно совпадет, то будет выбрана первая попавшаяся схема. |
extends | Указывается родительская схема. Из родительской схемы наследуются все описание данных и обработчики событий. |
recalc | Отвечает за обновление свойств схемы при событии обновлении объекта. Может принимать значение: true, false. |
workflow | Используется для подключения движка самописного WorkFlow. Может принимать значение: true, false. Для движка WorkFlow Flowable он не используется. |
Своиства схемы могут быть трех видов:
Более детально рассматривается в разделе типы свойств
Тег отвечает за конкретизацию Схемы позволяет настроить отображение объекта по различным Формам в зависимости от определенных Свойств схемы. Результатом конкретизации является изменение Схемы данных объекта, а по измененной Схеме будет выбрана новая Форма для его отображения. Конкретизация доступна для Схем данных типа «Объект».
Раздел «Параметры конкретизации» сохранен для совместимости с 4.6.1. Вместо Параметров конкретизации нужно использовать Условие применения |
Поскольку при конкретизации Схемы данных происходит изменение Схемы, то для ее использования в Палитре XML должно быть описано как минимум две Схемы данных: родительская и производная. Родительская Схема связывается с типом документа, а производная будет являться результатом конкретизации родительской. Конкретизация Схемы производится по значениям Свойств родительской Схемы.
|
Настраиваемый обработчик событий. Поддерживается настройка обработки событий для web-клиента:
Обработчики событий могут быть созданы к нескольким схемам, объединенным в одну иерархию.
Если для какой-то из Схем в иерархии Обработчик событий не создан или не содержит описания соответствующего события, то эта Схема пропускается, и выполняется обработчик следующей по порядку обработки Схемы.
Код обработчика событий имеет доступ к Java API системы и подключенным к ней сторонним библиотекам. Для работы с тем или иным Java классом его или пакет, в котором он расположен, предварительно необходимо импортировать в обработчик. Для этого можно использовать функции importPackage() или importClass ().
importPackage (Packages.java.util); - импортирует все классы, расположенные в пакете java.util.
Как и в Java, импортируются только классы, находящиеся непосредственно в указанном пакете. Классы из дочерних пакетов импортированы не будут.
Коду обработчика на JavaScript доступны все public методы реальных классов, реализующих те или иные интерфейсы Java API. Области видимости protected и private недоступны.
Синтаксис работы с объектами Java классов точно такой же, как и с объектами JavaScript.
В описании обработчика событий можно объявлять дополнительные функции и вызывать их из событий.
Внимание: Объекты Notes Java API, переданные в обработчик событий извне (например, параметр document), нельзя передавать в дополнительно объявленные функции. Работать с параметром document можно только внутри событий querySave и postSave.
Теги и атрибуты: |