Wiki source code of Тип действия: пользовательский скрипт
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | В данном разделе приведены сведения по настройке заданий автоматизации на выполнение действий в автоматическом режиме. Настройка доступна только для узлов Платформа НЕЙРОСС. | ||
| 2 | |||
| 3 | {{info}} | ||
| 4 | Общие сведения об автоматизации и порядке настройке заданий автоматизации приведены в разделе ~[[[doc:ui.Параметры узла.Автоматизация.WebHome]]]. | ||
| 5 | {{/info}} | ||
| 6 | |||
| 7 | == {{id name="Типдействия:пользовательскийскрипт-Общиесведения"/}}Общие сведения == | ||
| 8 | |||
| 9 | Функция выполнения произвольного скрипта позволяет использовать сложные алгоритмы анализа входных условий и последовательности выполняемых действий. Предоставляется механизм Scala-скриптовой логики и современный редактор с удобной навигацией и подсветкой синтаксиса. Это позволяет решать нестандартные объектовые задачи, «не покрытые» базовым функционалом Платформы НЕЙРОСС, в том числе самостоятельно, с помощью (% style="color: rgb(51,51,51);" %)сервиса (%%)//services.common.CodeCompilationService//(% style="color: rgb(51,51,51);" %). | ||
| 10 | |||
| 11 | При выборе в качестве параметра действия «//Произвольный скрипт//», вам потребуется ввести код скрипта и сохранить задание. Для удобства создания собственных скриптов предоставляется базовый шаблон скрипта. | ||
| 12 | |||
| 13 | == {{id name="Типдействия:пользовательскийскрипт-Порядокдействий"/}}Порядок действий == | ||
| 14 | |||
| 15 | Чтобы создать новое задание автоматизации: | ||
| 16 | |||
| 17 | В списке заданий нажмите на кнопку **Добавить новое задание** [[image:attach:ui.Параметры узла.Автоматизация.WebHome@btn_plus_new.png||thumbnail="true" height="22"]]. | ||
| 18 | |||
| 19 | [[image:attach:ui.Параметры узла.Автоматизация.WebHome@action_newtask.png]] | ||
| 20 | |||
| 21 | Настройте параметры сигнала ~[[[doc:ui.Параметры узла.Автоматизация.Сигналы автоматизации.WebHome]]]. | ||
| 22 | |||
| 23 | В блоке **Параметры действия** выберите из раскрывающегося списка **Пользовательский скрипт**. | ||
| 24 | |||
| 25 | Чтобы раскрыть редактор скрипта, нажмите на кнопку [[image:attach:btn_rename.png||thumbnail="true" height="16"]] в поле **Скрипт**. Откроется окно редактора с базовым шаблоном скрипта. | ||
| 26 | |||
| 27 | [[image:attach:action_scrypt.png||width="470"]] [[image:attach:action_scrypt_redactor.png||width="700"]] | ||
| 28 | |||
| 29 | Отредактируйте код скрипта. По завершении нажмите на кнопку** ОК**, чтобы закрыть редактор. | ||
| 30 | |||
| 31 | Нажмите на кнопку **Сохранить задание**. | ||
| 32 | |||
| 33 | == {{id name="Типдействия:пользовательскийскрипт-Настройкапеременных"/}}Настройка переменных == | ||
| 34 | |||
| 35 | Реализована возможность ввода параметров скрипта не напрямую в коде скрипта из редактора, а посредством пользовательского интерфейса. В этом случае для настройки скрипта достаточно ввести требуемые значения и сохранить параметры задания автоматизации. Введённые значения будут добавлены в код скрипта. | ||
| 36 | Чтобы иметь возможность самостоятельно создавать такие формы настройки необходимо в коде скрипта перед объявлением очередной переменной добавить блок кода следующего вида: | ||
| 37 | |||
| 38 | {{code}} | ||
| 39 | // @parameter { "type": "тип поля", "title": "заголовок поля", "key": "имя переменной" } | ||
| 40 | {{/code}} | ||
| 41 | |||
| 42 | Где: | ||
| 43 | |||
| 44 | * type — тип поля, возможные значения: "boolean", "string", "number", "select"; | ||
| 45 | * title — заголовок поля в форме — произвольный текст; | ||
| 46 | * key — имя переменной. | ||
| 47 | |||
| 48 | Например: | ||
| 49 | |||
| 50 | {{code}} | ||
| 51 | // @parameter { "type": "number", "title": "Временной интервал, за который учитываются неисправности (сек)", "key": "timeIntervalInSeconds" } | ||
| 52 | val timeIntervalInSeconds = 10 | ||
| 53 | {{/code}} | ||
| 54 | |||
| 55 | \\ | ||
| 56 | |||
| 57 | [[image:attach:action_scrypt_params.png]] | ||
| 58 | |||
| 59 | //Пример параметров скрипта автоматизации// | ||
| 60 | |||
| 61 | При необходимости и организационной возможности выполнения теста, нажмите (% style="color: rgb(0,0,255);" %)**выполнить тест**(%%) в заголовке блока **Параметры действия**. | ||
| 62 | |||
| 63 | == {{id name="Типдействия:пользовательскийскрипт-Логирование"/}}Логирование == | ||
| 64 | |||
| 65 | Платформа НЕЙРОСС обеспечивает логирование процедуры выполнения скрипта и ошибок компиляции ~[[[doc:ui.Журнал аудита.WebHome]]]. Для отладки скрипта перейдите в «живой» журнал аудита (нажмите (% style="color: rgb(0,0,255);" %)**открыть **(%%)в поле **Журнал аудита**). | ||
| 66 | |||
| 67 | При переходе в журнал аудита отображается приглашение добавить фильтры для логирования ошибок компиляции. Нажмите на кнопку **Да**. | ||
| 68 | |||
| 69 | [[image:attach:action_scrypt_journal.png]] | ||
| 70 | |||
| 71 | [[image:attach:action_scrypt_journal_wnd.png||width="900"]] | ||
| 72 | |||
| 73 | //Пример логирования ошибок компиляции скрипта// | ||
| 74 | |||
| 75 | Ошибки также фиксируются в [[системном журнале>>doc:ui.Системный журнал.WebHome]]. | ||
| 76 | |||
| 77 | [[image:attach:action_scrypt_sysjournal.png||width="900"]] | ||
| 78 | |||
| 79 | \\ | ||
| 80 | |||
| 81 | {{info}} | ||
| 82 | Дополнительная информация по настройке заданий автоматизации приведена в разделе ~[[[doc:ui.Параметры узла.Автоматизация.WebHome]]]. Примеры готовых скриптов приведены [[здесь>>neyross.НЕЙРОСС Автоматика.WebHome]]. | ||
| 83 | {{/info}} |