Дерево страниц
Skip to end of metadata
Go to start of metadata

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 53 Следующий »

Корневой элемент schema. Пространсто имен: <schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema">

Краткое описание

  • описывает структуру данных объекта;
  • содержит код управления событиями объекта.
Структура XML
<?xml version='1.0' encoding='UTF-8'?>
<schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema">
    <schema name="{name}" extends="{parent schema name}" recalc="true" workflow="false">
       
		<!--Свойство схемы -->
	 	<string name="{name}"/>    	
        
	 	<!-- Параметры конкретизации схемы -->
	  	<param-specification>
		 	<!--property-ref-->
            <string-ref ref="{property string name}" value="{string value}"/>
        </param-specification>
       
	 	<!-- Код управления событиями -->
        <custom-event-handler lang="JavaScript"><![CDATA[...]]></custom-event-handler>
    </schema>
</schemas>

attributes

ПараметрыОписание

name

Название схемы. Название должно быть уникально.

extends

Родительская схема. Из родительской схемы наследуются все свойства схем и обработчики событий. 

recalc

Отвечает за обновление свойств схемы при событии обновлении объекта. Может принимать значение: true, false.

workflow

Используется для подключения движка самописного WorkFlow. Может принимать значение: true, false.

Для движка WorkFlow Flowable он не используется.

Сохранен для совместимости более ранних версий.

<property>

Своиства схемы могут быть трех видов:

  • Примитив;
  • Перечисление;
  • Объект.

Более детально рассматривается в разделе типы свойств

param-specification

Параметр отвечает за конктретизацию Схемы.  Позволяет настроить отображение объекта по различным Формам в зависимости от определенных Свойств схемы. Результатом конкретизации является изменение Схемы данных объекта, а по измененной Схеме будет выбрана новая Форма для его отображения.

Сохранен для совместимости более ранних версий. Вместо него нужно использовать Условие применения

<property>-ref

Сопоставление свойства родительской схемы и значения, при котором будет включатся механизм конкретизации схемы

ПараметрыОписание
ref
Название свойства родительской схемы
value
Значение свойства

workflow

Сохранен для совместимости более ранних версий. Сейчас уже не используется.

ПараметрыОписание

param

Параметры выражений

source-notice

Источник уведомления данных

custom-event-handler

Настраиваемый обработчик событий. Поддерживается настройка обработки событий для web-клиента:

СобытиеОписание

queryCreate

Вызывается при создании объекта

querySave

Вызывается непосредственно перед переносом данных из объекта Java API в документ, в котором этот объект хранится.

Функция возвращает значение типа Boolean. Если функция вернула false - сохранение будет прервано.

Обработчики события выполняются в порядке наследования схем снизу вверх: сначала событие querySave текущей Схемы объекта, потом событие querySave той Схемы, которую она уточняет, и так далее до события querySave базовой Схемы.

postSave

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

Обработчики события выполняются в обратном порядке, сверху вниз: сначала событие postSave базовой Схемы, потом событие postSave уточняющей Схемы и так далее до текущей Схемы объекта. Обработчики события recalc выполняются аналогично postSave, сверху вниз.

recalc

Вызывается при пересчете ресурса, том числе вызов recalc может быть связан в изменением значения поля или нажатием на кнопку.

Обработчики событий могут быть созданы к нескольким схемам, объединенным в одну иерархию.

Если для какой-то из Схем в иерархии Обработчик событий не создан или не содержит описания соответствующего события, то эта Схема пропускается, и выполняется обработчик следующей по порядку обработки Схемы.

Код обработчика событий имеет доступ к API CMJ системы и подключенным к ней сторонним библиотекам. Для работы с тем или иным Java классом его или пакет, в котором он расположен, предварительно необходимо импортировать в обработчик. Для этого можно использовать функции importPackage() или importClass ().

importPackage (Packages.java.util); - импортирует все классы, расположенные в пакете java.util.

Как и в Java, импортируются только классы, находящиеся непосредственно в указанном пакете. Классы из дочерних пакетов импортированы не будут.

Коду обработчика на JavaScript доступны все public методы реальных классов, реализующих те или иные интерфейсы Java API. Области видимости protected и private недоступны.

Синтаксис работы с объектами Java классов точно такой же, как и с объектами JavaScript.

В описании обработчика событий можно объявлять дополнительные функции и вызывать их из событий.

Объекты API CMJ, переданные в обработчик событий извне (например, параметр document), нельзя передавать в дополнительно объявленные функции. Работать с параметром document можно только внутри событий querySave и postSave.




Статус

ГОТОВО

Комментарий

Теги и атрибуты:



  • Нет меток