Commit 7abf8b42 authored by Valentin Skripnikov's avatar Valentin Skripnikov

Скриптинг

parent 203966f9
......@@ -42,70 +42,39 @@
**Общедоступные объекты:**
.. js:data:: AS
Общее пространство имен
.. js:data:: AS.FORMS
Формы
.. js:data:: AS.COMPONENTS
Компоненты, которые могут быть использованы отдельно от проигрывателя форм
.. js:data:: AS.SERVICES
Сервисы
.. js:data:: AS.LOGGER
Логгер
.. js:data:: AS.OPTIONS
Настройки
.. js:data:: AS.DICTIONARIES
Кэш справочников
* `AS` - общее пространство имен
* `AS.FORMS` - формы
* `AS.COMPONENTS` - компоненты, которые могут быть
использованы отдельно от проигрывателя форм
* `AS.SERVICES` - сервисы
* `AS.LOGGER` - логгер
* `AS.OPTIONS` - настройки
* `AS.DICTIONARIES` - кэш справочников
* ``AS`` - общее пространство имен
* ``AS.FORMS`` - формы
* ``AS.COMPONENTS`` - компоненты, которые могут быть использованы отдельно от проигрывателя форм
* ``AS.SERVICES`` - сервисы
* ``AS.LOGGER`` - логгер
* ``AS.OPTIONS`` - настройки
* ``AS.DICTIONARIES`` - кэш справочников
**Типы событий:**
* `formShow : 'formShow'` - отображение формы
* ``formShow : 'formShow'`` - отображение формы
(построение новой формы)
* `formDestroy : "formDestroy"` -
[метод `destroy`](#integration.methods.form_scripting.specific) модели проигрывателя
* ``formDestroy : 'formDestroy'`` - метод `destroy`_ модели проигрывателя
* `dataLoad: 'dataLoad'` - подгрузка данных
* ``dataLoad: 'dataLoad'`` - подгрузка данных
* `valueChange: 'valueChange'` - изменение значения
* ``valueChange: 'valueChange'`` - изменение значения
модели
* `markInvalid : 'markInvalid'` - необходимость
отображению подсветить невалидное значение
* ``markInvalid : 'markInvalid'`` - необходимость отображению подсветить невалидное значение
* `tableRowAdd: 'tableRowAdd'` - добавление ряда в таблице
* ``tableRowAdd: 'tableRowAdd'`` - добавление ряда в таблице
* `tableRowDelete: 'tableRowDelete'` - удаление ряда в таблице
* ``tableRowDelete: 'tableRowDelete'`` - удаление ряда в таблице
* `dictionaryLoad : 'dictionaryLoad'` - подгрузка справочника
* ``dictionaryLoad : 'dictionaryLoad'`` - подгрузка справочника
* `tagEdit : 'tagEdit'` - редактирование тега
* ``tagEdit : 'tagEdit'`` - редактирование тега
* `tagDelete : 'tagDelete'` - удаление тега
* ``tagDelete : 'tagDelete'`` - удаление тега
* `loadComponentAdditionalInfo : 'loadComponentAdditionalInfo'` -
* ``loadComponentAdditionalInfo : 'loadComponentAdditionalInfo'`` -
подгрузка дополнительной информации компонента (сейчас
используется для пользовательского компонента)
......@@ -115,11 +84,11 @@
так и пользовательскому компоненту) имеются следующие
переменные:
* `model` - модель текущего компонента;
* `view` - отображение текущего компонента;
* `editable` - режим (просмотр / редактирование);
* `model.playerModel` - модель проигрывателя;
* `view.playerView` - отображение проигрывателя.
* ``model`` - модель текущего компонента;
* ``view`` - отображение текущего компонента;
* ``editable`` - режим (просмотр / редактирование);
* ``model.playerModel`` - модель проигрывателя;
* ``view.playerView`` - отображение проигрывателя.
Скрипт (добавленный как к компоненту, так и пользовательскому
компоненту) выполняется каждый раз при смене режима
......@@ -149,44 +118,20 @@
.. warning:: Если код скрипта содержит конструкции, не соответствующие стандарту ES5, то они не будут выполняться. Это не является ошибкой Synergy.
**Ссылки для быстрого перехода по документу:**
* [Создание экземпляра проигрывателя и его методы](#integration.methods.form_scripting.asforms)
* [Базовые модели и отображения](#integration.methods.form_scripting.base)
* [Модели и отображения, которые не имеют специфичных свойств или переопределения методов](#integration.methods.form_scripting.non_specific)
* [Модели и отображения, которые имеют специфичные свойства или методы](#integration.methods.form_scripting.specific)
* Модели и отображения проигрывателя
* Модели и отображения компонентов
* [«Страница» и «Таблица»](#integration.methods.form_scripting.table)
* [«Числовое поле»](#integration.methods.form_scripting.numeric_field)
* [«Выпадающий список», «Выбор вариантов», «Переключатель вариантов»](#integration.methods.form_scripting.combobox_checkbox_radiobutton)
* [«Дата/время»](#integration.methods.form_scripting.date_time)
* [«Файл»](#integration.methods.form_scripting.file)
* [«Ссылка»](#integration.methods.form_scripting.link)
* [«Пользователь»](#integration.methods.form_scripting.user)
* [«Должность»](#integration.methods.form_scripting.position)
* [«Подразделение»](#integration.methods.form_scripting.department)
* [«Период повторения»](#integration.methods.form_scripting.repeat_period)
* [«Ссылка на проект»](#integration.methods.form_scripting.project_link)
* [«Ссылка на реестр»](#integration.methods.form_scripting.registry_link)
* [«Ссылка на адресную книгу»](#integration.methods.form_scripting.address_book)
* [«Ссылка на файл в хранилище»](#integration.methods.form_scripting.file_storage)
* [Методы поля ввода с тегами](#integration.methods.form_scripting.tag_area)
* [Методы AS.SERVICES](#integration.methods.form_scripting.as_services)
* Утилиты, полезные функции
* [Утилита при вызове методов API Synergy](#integration.methods.form_scripting.api_utils)
* [Утилиты для работы с asfData и asfDefinition](#integration.methods.form_scripting.asfdata_utils)
* [Утилиты для работы с датами](#integration.methods.form_scripting.date_utils)
* [Утилиты для работы с компонентами](#integration.methods.form_scripting.component_utils)
* [Создание нового компонента](#integration.methods.form_scripting.new_user_component)
#### Создание экземпляра проигрывателя и его методы {#integration.methods.form_scripting.asforms}
Для того, чтобы создать экземпляр проигрывателя, необходимо вызвать
метод `AS.FORMS.createPlayer()`.
метод ``AS.FORMS.createPlayer()``.
Методы проигрывателя
~~~~~~~~~~~~~~~~~~~~
.. js:function:: showFormByCode(formCode[,version])
Отображает форму по ее коду, без создания соответствующего экземпляра asfData
Методы проигрывателя:
:param string formCode: Код формы.
:param number version: Версия формы.
.. js:function:: showFormData(formUUID[, version[, dataUUID[, dataVersion]]])
......@@ -197,67 +142,23 @@
:param string dataUUID: Идентификатор данных формы.
:param number dataVersion: Номер версии данных формы.
.. js:function:: showFormByCode(formCode[,version])
Отображает форму по ее коду, без создания соответствующего экземпляра asfData
:param string formCode: Код формы.
:param number version: Версия формы.
.. js:function:: saveFormData(callback)
Сохраняет данные формы
:param callback: Функция, которая будет вызвана после сохранения данных с параметром asfDataUUID.
.. js:function:: dataLoaded(definition[,data])
Построение формы согласно definition и заполнение asfData значением параметра data
Вспомогательный метод, вызывающийся при выполнении методов `showFormData`_ и `showFormByCode`_.
+-----------------------+----------------------+------------------------------+
| Наименование | Аргумент | Описание |
+=======================+======================+==============================+
| showFormData | formUid(*) | Отображение последней версии |
| | | формы по ее идентификатору |
+-----------------------+----------------------+------------------------------+
| showFormData | formUid(*), version | Отображение указанной версии |
| | | формы по ее идентификатору |
+-----------------------+----------------------+------------------------------+
| showFormData | formUid(*), version, | Отображение формы по |
| | dataUid | сведениям, содержащимся в |
| | | последней версии данных по |
| | | форме (параметры formUid и |
| | | version игнорируются) |
+-----------------------+----------------------+------------------------------+
| showFormData | formUid(*), version, | Отображение формы по |
| | dataUid, dataVersion | сведениям, содержащимся в |
| | | указанной версии данных по |
| | | форме (параметры formUid и |
| | | version игнорируются) |
+-----------------------+----------------------+------------------------------+
| showFormByCode | formCode(*), version | Отображение формы по ее коду |
| | | без создания |
| | | соответствующего экземляра |
| | | asfData. |
+-----------------------+----------------------+------------------------------+
| dataLoaded | definition(*), data | Построение формы согласно |
| | | definition и заполнение |
| | | asfData значением параметра |
| | | data |
+-----------------------+----------------------+------------------------------+
| saveFormData | hander(*) | Сохранение данных формы, |
| | | после которого выполняется |
| | | функция handler с параметром |
| | | asfDataUUID |
+-----------------------+----------------------+------------------------------+
| destroy | | Удаления экземпляра |
| | | проигрывателя |
+-----------------------+----------------------+------------------------------+
> Примечания:
:param string definition: Описание формы в формате JSON.
:param string data: Данные формы в форме JSON.
> * `(*)` - параметр обязателен.
.. js:function:: destroy()
> * `dataLoaded` - вспомогательный метод, вызывающийся при выполнении методов
`showFormData` и `showFormByCode`.
Удаляет экземпляр проигрывателя
#### Базовые модели и отображения {#integration.methods.form_scripting.base}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment