Commit 5b1acbea authored by Sergey Antonovich's avatar Sergey Antonovich 🇯🇵

Update jSynergyDocs.md

parent a09b0a19
# Class Synergy API # :butterfly: Библиотека `jSynergy 1.0.9`
Данный класс предназначен для работ с платформой Synergy.<br>
Особенностями класса являются методы `client` и `server`.
Различия в них просты: :point_right: Данный класс предназначен для работ с платформой Synergy.<br>
* `client` - Этот метод работает везде где используется `javaScript`
* `server` - Этот метод работает только в самой платформе и нужен для `Блок процессов`
jSynergy [Скачать класс](./jSynergy.js) :point_right: Особенностями класса является метод `client` работает как вне блок-процесса так и внутри (авто-определение)
<hr> :clock8: Экономия вашего времени
<h3>Disclaimer:</h3> :rocket: Пишите бизнес-логику быстрее и экономьте свое время
Автор не несет ответственности за неправильное функционирование, нанесенный ущерб, неработоспособность и т.д. Который можно получить при использовании данного `класса`. А также не обязуется за доработку его возможностей по вашим прихотям.<br>
<hr> Пишите свой код внутри браузера прямо в консоли для более гибкой и удобной отладки.<br/>Если код работает то смело переносите его в интерпретатор.<br/>
Ну или же пишите на хардкоре прямо в БП :sweat_smile:
Совместимость с версиями Synergy: [`Поддержка платформы`] [`Работоспособность класса`] > PSS: Пишите код на странице с открытой *Synergy* или *SynergyAdmin* или *Configurator* для предотвращения CORS
* `3.12` - [❌] [❌]
* `3.15` - [❌] [❌]
* `4.0`   - [✅] [✅]
* `4.1`   - [✅] [✅]
Автор данного класса: [`Антонович Сергей`](@yandexphp) ## :coffee: Disclaimer:
Версия класса: `0.5.2` > Автор не несет ответственности за неправильное функционирование, нанесенный ущерб, неработоспособность и т.д. Который можно получить при использовании данного `класса`. А также не обязуется за доработку его возможностей по вашим прихотям.<br>
<hr> <hr/>
## Структура класса ### Совместимость с версиями Synergy
#### Корневые методы класса * `Работоспособность` - это потверждение того что в определенных версиях Synergy есть нужные API, а так же что библиотека будет работать но возможны и последствия так что утвердитесь в пункте `Проверено`
* `jSynergy.setConnection` - 3 аргумента `host`, `login`, `password`<br> | :beginner: **Версия Synergy** | :hammer_and_wrench: **Работоспособность** | **Проверено** |
Данная функция добавляет подключение к контейнеру а также записывается в лист.<br><br> | ------ | ------ | ------ |
* `jSynergy.getConnection` - Без аргументов `void`<br> | **3.*** | <div align="center">:x:</div> | <div align="center">:x:</div> |
Данная функция возвращает `Object` (объект) подключения к контейнеру.<br><br> | **4.*** | <div align="center">:heavy_check_mark:</div> | <div align="center">:heavy_check_mark:</div> |
* `jSynergy.getListConnection` - Без аргументов `void`<br> | **5.*** | <div align="center">:heavy_check_mark:</div> | <div align="center">:x:</div> |
Данная функция возвращает `Array` (массив) раних подключенний контейнерам.<br><br>
* `jSynergy.selectConnection` - 1 аргумент `index`<br>
Данная функция возвращает `Array` (массив) раних подключенний контейнерам.<br><br>
* `jSynergy.getFormData` - Без аргументов `void`<br>
Данная функция возвращает данные по форме `после загрузки формы`<br><br>
* `jSynergy.getDataUUID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getDocumentID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getFormUUID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getNodeUUID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getFormVersion` - Без аргументов `void`<br>
Данная функция возвращает ID версии формы `после загрузки формы`<br><br>
* `jSynergy.testConnect` - Без аргументов `void`<br>
Данная функция возвращает проверку соединения с контейнером.<br><br>
* `jSynergy.destroy` - Без аргументов `void`<br>
Данная функция полностью очищает работу с классом.<br><br>
* `jSynergy.about` - под категория класса, тут вся информация о классе.<br><br>
* `jSynergy.getWordDeclination` - 2 аргумента `Array`, `Integer`<br>
Данная функция возвращает склонения слова из массива по числу.<br><br>
* `jSynergy.strAddZero` - 2 аргумента `Integer & String`, `Integer`<br>
Данная функция возвращает тоже число или текст, но вначале добавляется ноль.<br><br>
* `jSynergy.utf8_encode` - 1 аргумент `String`<br>
Данная функция возвращает текст в кодировке `UTF-8`<br><br>
* `jSynergy.utf8_decode` - 1 аргумент `String`<br>
Данная функция возвращает текст в кодировке `CP1251`<br><br>
* `jSynergy.client` - под категория класса<br>
Данная категория работает везде где используется `javaScript`<br><br>
* `jSynergy.server` - под категория класса<br>
Данная категория работает `только` в платформе `Synergy` для написания `Блок процессов` в интерпретаторе.<br><br>
#### client класса **[:rice_ball: Библиотека jSynergy](./jSynergy.js)**
* `jSynergy.client.load` - 1 аргумент `Integer & String`<br>
Данная функция подгружает данные по форме.<br><br>
* `jSynergy.client.save` - Без аргументов `void`<br>
Данная функция сохраняет измененные данные по форме.<br><br>
* `jSynergy.client.multiLoad` - 1 аргумент `Integer & String & Array`<br>
Данная функция подгружает все перечисленные данные форм.<br><br>
* `jSynergy.client.getFormsList` - Без аргументов `void`<br>
Данная функция возвращает все данные по формам после их подгрузки.<br><br>
* `jSynergy.client.selectForm` - 1 аргумент `Integer & String`<br>
Данная функция устанавливает работу с выбранной формой по её идентификатору.<br><br>
* `jSynergy.client.regainForm` - Без аргументов `void`<br>
Данная функция возвращает форму загруженную через `jSynergy.client.load`. Последнюю загруженную форму.<br><br>
* `jSynergy.client.getAsfData` - Без аргументов `void`<br>
Данная функция возвращает все компоненты ввиде листа.<br><br>
* `jSynergy.client.addAsfData` - 1 аргумент `Object`<br>
Данная функция добавляет в лист компонентов новый `Object` (объект).<br><br>
* `jSynergy.client.setAsfData` - 1 аргумент `Array`<br>
Данная функция устанавливает новый лист компонентов.<br><br>
* `jSynergy.client.converTable` - 1 аргумент `String`<br>
Данная функция конвертирует таблицу в читаемый вид.<br><br>
* `jSynergy.client.getRowsCount` - 1 аргумент `String`<br>
Данная функция возвращает кол-во рядов в дин.таблице.<br><br>
* `jSynergy.client.addRowTable` - 3 аргумента `String`, `Integer`, `Boolean`<br>
Данная функция добавляет в дин.таблицу ряды. Третий аргумент при значении `true` нечего не добавляет.<br><br>
* `jSynergy.client.removeRowTable` - 2 аргумента `String`, `Integer`<br>
Данная функция удаляет ряд по его `index`.<br>Внимание под индексом подразумивается `-b1`, `-b2`, ... только без `-b`.<br><br>
* `jSynergy.client.clearTable` - 1 аргумент `String`<br>
Данная функция очищает всю таблицу.<br><br>
* `jSynergy.client.getValue` - 4 аргумента `String`, `String`, `Integer & String`, `String`<br>
Данная функция возвращает данные компонента.<br>Первый аргумент `ID компонента`, Второй аргумент `Ключ или ID таблицы`, Третий аргумент `Index`, Четвёртый аргумент: `Ключ`. Если вам нужен статический компонент то логично указать 2 или 1 аргумент. Иначе если вам нужен компонент из дин.таблицы, то нужно указать 3 или 4 аргумента.<br><br>
* `jSynergy.client.setValue` - 5 аргументов `String`, `Integer & String & Object`, `Integer & String`, `String`<br>
Данная функция возвращает данные компонента.<br>Первый аргумент `ID компонента`, Второй аргумент `Ключ или ID таблицы`, Третий аргумент `Index`, Четвёртый аргумент: `Ключ`. Если вам нужен статический компонент то логично указать 2 или 1 аргумент. Иначе если вам нужен компонент из дин.таблицы, то нужно указать 3 или 4 аргумента.<br>
* `jSynergy.client.ApiUtils` - под категория, категории `jSynergy.client`<br>
Там лежат различные готовые API запросы.<br><br>
* `jSynergy.client.api` - метод для выполнения API запросов Synergy.
#### server класса ### Использование
* `jSynergy.server.load`<br>
* `jSynergy.server.save`<br>
* `jSynergy.server.multiLoad`<br>
* `jSynergy.server.getFormsList`<br>
* `jSynergy.server.selectForm`<br>
* `jSynergy.server.regainForm`<br>
* `jSynergy.server.getAsfData`<br>
* `jSynergy.server.addAsfData`<br>
* `jSynergy.server.setAsfData`<br>
* `jSynergy.server.converTable`<br>
* `jSynergy.server.getRowsCount`<br>
* `jSynergy.server.addRowTable`<br>
* `jSynergy.server.removeRowTable`<br>
* `jSynergy.server.clearTable`<br>
* `jSynergy.server.getValue`<br>
* `jSynergy.server.setValue`<br>
* `jSynergy.server.ApiUtils`<br>
* `jSynergy.server.api`
<hr>
## Использование класса
Вызов класса с пред. установленной переменной: `jSynergy`.<br> Вызов класса с пред. установленной переменной: `jSynergy`.<br>
Или можете создать новый класс через объект класса `let varName = new __classSynergy()`. Или можете создать новый класс через объект класса `const varName = new __classSynergy()`.
P.S: Если у вас версия платформы Synergy `4.1` и выше то там есть так называемые Библиотеки для интерпретатора пихаем класс > Если у вас версия платформы Synergy `4.*` и выше то там есть так называемые `Библиотеки для интерпретатора` пихаем класс туда и просто пропускаем шаг с созданием экземпляра класса тобишь `__classSynergy` и пропускаем авторизацию контейнера т.е
туда и просто пропускаем шаг с созданием экземпляра класса тобишь `__classSynergy` и пропускаем авторизацию контейнера т.е
`jSynergy.setConnection(false, login, password);`. Тогда можно сразу работать с классом и формами. `jSynergy.setConnection(false, login, password);`. Тогда можно сразу работать с классом и формами.
<hr>
##### Для метода `jSynergy.server` все методы как и в `jSynergy.client` равны.
Прочие функции
```javascript ```javascript
// Вернет `true & false` подключения к контейнеру // Вернет `true & false` подключения к контейнеру
...@@ -196,9 +93,7 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш ...@@ -196,9 +93,7 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш
// Полное очищение класса в его исходное состояние // Полное очищение класса в его исходное состояние
jSynergy.destroy(); jSynergy.destroy();
```
```javascript
/** /**
* Подключения к контейнеру * Подключения к контейнеру
*/ */
...@@ -215,8 +110,6 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш ...@@ -215,8 +110,6 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш
// Вариант подключения к контейнеру (третий) // Вариант подключения к контейнеру (третий)
jSynergy.setConnection('https://synergy.arta.pro/Synergy/', '$key', 'token'); jSynergy.setConnection('https://synergy.arta.pro/Synergy/', '$key', 'token');
/** /**
* После подключения к контейнеру можно начинать работу с формами * После подключения к контейнеру можно начинать работу с формами
*/ */
...@@ -327,8 +220,6 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш ...@@ -327,8 +220,6 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш
// Сохранить изменения формы // Сохранить изменения формы
jSynergy.client.save(); jSynergy.client.save();
/** /**
* Для выполнения API запроса несколько примеров: * Для выполнения API запроса несколько примеров:
* методы можно писать так: 'asforms/data' или так 'rest/api/asforms/data' разница в '/rest/api/' * методы можно писать так: 'asforms/data' или так 'rest/api/asforms/data' разница в '/rest/api/'
...@@ -360,7 +251,6 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш ...@@ -360,7 +251,6 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш
password: 'password', // key or token password: 'password', // key or token
}); });
/** /**
* Дополонение. Готовые API методы (У методов в client есть асинхронность callback) * Дополонение. Готовые API методы (У методов в client есть асинхронность callback)
*/ */
...@@ -376,4 +266,81 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш ...@@ -376,4 +266,81 @@ P.S: Если у вас версия платформы Synergy `4.1` и выш
// Возвращает список доступных реестров авторизованному пользователю // Возвращает список доступных реестров авторизованному пользователю
jSynergy.client.ApiUtils.getRegistryList(); jSynergy.client.ApiUtils.getRegistryList();
``` ```
\ No newline at end of file
### Корневые методы класса
* `jSynergy.setConnection` - 3 аргумента `host`, `login`, `password`<br>
Данная функция добавляет подключение к контейнеру а также записывается в лист.<br><br>
* `jSynergy.getConnection` - Без аргументов `void`<br>
Данная функция возвращает `Object` (объект) подключения к контейнеру.<br><br>
* `jSynergy.getListConnection` - Без аргументов `void`<br>
Данная функция возвращает `Array` (массив) раних подключенний контейнерам.<br><br>
* `jSynergy.selectConnection` - 1 аргумент `index`<br>
Данная функция возвращает `Array` (массив) раних подключенний контейнерам.<br><br>
* `jSynergy.getFormData` - Без аргументов `void`<br>
Данная функция возвращает данные по форме `после загрузки формы`<br><br>
* `jSynergy.getDataUUID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getDocumentID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getFormUUID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getNodeUUID` - Без аргументов `void`<br>
Данная функция возвращает UUID `после загрузки формы`<br><br>
* `jSynergy.getFormVersion` - Без аргументов `void`<br>
Данная функция возвращает ID версии формы `после загрузки формы`<br><br>
* `jSynergy.testConnect` - Без аргументов `void`<br>
Данная функция возвращает проверку соединения с контейнером.<br><br>
* `jSynergy.destroy` - Без аргументов `void`<br>
Данная функция полностью очищает работу с классом.<br><br>
* `jSynergy.about` - под категория класса, тут вся информация о классе.<br><br>
* `jSynergy.getWordDeclination` - 2 аргумента `Array`, `Integer`<br>
Данная функция возвращает склонения слова из массива по числу.<br><br>
* `jSynergy.strAddZero` - 2 аргумента `Integer & String`, `Integer`<br>
Данная функция возвращает тоже число или текст, но вначале добавляется ноль.<br><br>
* `jSynergy.utf8_encode` - 1 аргумент `String`<br>
Данная функция возвращает текст в кодировке `UTF-8`<br><br>
* `jSynergy.utf8_decode` - 1 аргумент `String`<br>
Данная функция возвращает текст в кодировке `CP1251`<br><br>
* `jSynergy.client` - под категория класса<br>
Данная категория работает везде где используется `javaScript`<br><br>
* `jSynergy.server` - под категория класса<br>
Данная категория работает `только` в платформе `Synergy` для написания `Блок процессов` в интерпретаторе.<br><br>
#### client класса
* `jSynergy.client.load` - 1 аргумент `Integer & String`<br>
Данная функция подгружает данные по форме.<br><br>
* `jSynergy.client.save` - Без аргументов `void`<br>
Данная функция сохраняет измененные данные по форме.<br><br>
* `jSynergy.client.multiLoad` - 1 аргумент `Integer & String & Array`<br>
Данная функция подгружает все перечисленные данные форм.<br><br>
* `jSynergy.client.getFormsList` - Без аргументов `void`<br>
Данная функция возвращает все данные по формам после их подгрузки.<br><br>
* `jSynergy.client.selectForm` - 1 аргумент `Integer & String`<br>
Данная функция устанавливает работу с выбранной формой по её идентификатору.<br><br>
* `jSynergy.client.regainForm` - Без аргументов `void`<br>
Данная функция возвращает форму загруженную через `jSynergy.client.load`. Последнюю загруженную форму.<br><br>
* `jSynergy.client.getAsfData` - Без аргументов `void`<br>
Данная функция возвращает все компоненты ввиде листа.<br><br>
* `jSynergy.client.addAsfData` - 1 аргумент `Object`<br>
Данная функция добавляет в лист компонентов новый `Object` (объект).<br><br>
* `jSynergy.client.setAsfData` - 1 аргумент `Array`<br>
Данная функция устанавливает новый лист компонентов.<br><br>
* `jSynergy.client.converTable` - 1 аргумент `String`<br>
Данная функция конвертирует таблицу в читаемый вид.<br><br>
* `jSynergy.client.getRowsCount` - 1 аргумент `String`<br>
Данная функция возвращает кол-во рядов в дин.таблице.<br><br>
* `jSynergy.client.addRowTable` - 3 аргумента `String`, `Integer`, `Boolean`<br>
Данная функция добавляет в дин.таблицу ряды. Третий аргумент при значении `true` нечего не добавляет.<br><br>
* `jSynergy.client.removeRowTable` - 2 аргумента `String`, `Integer`<br>
Данная функция удаляет ряд по его `index`.<br>Внимание под индексом подразумивается `-b1`, `-b2`, ... только без `-b`.<br><br>
* `jSynergy.client.clearTable` - 1 аргумент `String`<br>
Данная функция очищает всю таблицу.<br><br>
* `jSynergy.client.getValue` - 4 аргумента `String`, `String`, `Integer & String`, `String`<br>
Данная функция возвращает данные компонента.<br>Первый аргумент `ID компонента`, Второй аргумент `Ключ или ID таблицы`, Третий аргумент `Index`, Четвёртый аргумент: `Ключ`. Если вам нужен статический компонент то логично указать 2 или 1 аргумент. Иначе если вам нужен компонент из дин.таблицы, то нужно указать 3 или 4 аргумента.<br><br>
* `jSynergy.client.setValue` - 5 аргументов `String`, `Integer & String & Object`, `Integer & String`, `String`<br>
Данная функция возвращает данные компонента.<br>Первый аргумент `ID компонента`, Второй аргумент `Ключ или ID таблицы`, Третий аргумент `Index`, Четвёртый аргумент: `Ключ`. Если вам нужен статический компонент то логично указать 2 или 1 аргумент. Иначе если вам нужен компонент из дин.таблицы, то нужно указать 3 или 4 аргумента.<br>
* `jSynergy.client.ApiUtils` - под категория, категории `jSynergy.client`<br>
Там лежат различные готовые API запросы.<br><br>
* `jSynergy.client.api` - метод для выполнения API запросов Synergy.
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