Служебные действия и вызов схемы
Переменные шаблона
Section titled “Переменные шаблона”Значок в палитре: [x] · даёт: [имя] · раздел «Служебные» · template-variables · начинает схему
Задаёт переменные шаблона: строки шаблона ниже вызова подставляют их как [имя].
Фраза на фигуре у только что поставленного шага: задать переменную шаблона [имя]
Так в шаблонах работает AddVariable у GAP. Около шестидесяти шаблонов на копию конфигурации заводят так одно-два имени, а шаблоны МОПС и МУПС — по два десятка разом, по имени на канал.
{канал} в имени задаёт переменную на каждое значение: восемь каналов — восемь переменных.
Шаг сам ничего никуда не пишет: он говорит, что задать, а кладёт переменные в строку вызова тот, кто позвал схему из шаблона. В ячейку уходит пустота.
Подробно: Вызов схемы из ячейки и из шаблона.
Постоянных строк-входов нет. Входы появляются сами — по одному на каждую строку списка переменных.
| Имя | Что на нём окажется |
|---|---|
| Ответ | В ячейку уходит пустота: шаг задаёт переменные шаблона, а не значение. |
Настройки
Section titled “Настройки”Переменные — настройка переменные, обязательна, по умолчанию имя, многострочная
По одной на строку, без скобок — как после них пишут в шаблоне: ModuleTag. {канал} в имени — переменная на каждое значение «канал».
Свой код
Section titled “Свой код”Значок в палитре: {} · даёт: текст · раздел «Служебные» · custom-code · начинает схему
Кусок C# со своими данными на входах — для того, чего в палитре пока нет.
Фраза на фигуре у только что поставленного шага: свой код — пока пустой
Палитра покрывает разобранное и названное; всё остальное пока пишется кодом. Пусть оно живёт в схеме рядом со своими данными, а не отдельным методом в чужой сборке: так видно, чего в палитре не хватает. Повторился приём трижды — становится действием, и код из схем уходит.
Код правят в своём окне, кнопкой «Править код» на фигуре. Подробно: Шаг «Свой код» и окно кода.
Постоянных строк-входов нет. Входы появляются сами — по именам из настройки «Что подать в код».
| Имя | Что на нём окажется |
|---|---|
| Значение | То, что вернуло последнее выражение кода. |
Настройки
Section titled “Настройки”Что подать в код — настройка значения, по умолчанию value, заготовка: стёртая не возвращается
Имена через запятую. Каждое станет входом блока и переменной в коде.
Код — настройка код, обязательна, по умолчанию // последнее выражение уходит в следующий шаг value, многострочная, заготовка: стёртая не возвращается
C#. Значение последнего выражения — результат шага.
Вызвать схему
Section titled “Вызвать схему”Значок в палитре: ⤷ · даёт: то, что отдаёт схема · раздел «Библиотека» · call-schema · начинает схему
Зовёт другую схему решения и отдаёт её результат: объект остаётся объектом.
Фраза на фигуре у только что поставленного шага: вызвать схему …
Ради него переносились функции порогов: «датчик → пороги → порог под номером» стояло копией в GetThTag, GetThData, GetThSeverity.
Входы вызова называются так же, как входы вызываемой схемы, и аргументы подаются по именам: переставленные входы вызываемой схемы по порядку получили бы чужие значения, и в код ПЛК уехал бы номер уставки вместо тега.
Схемы решения стоят в палитре своим разделом «Схемы» — каждая как обычное действие.
Подробно: Вызов схемы из схемы.
Постоянных строк-входов нет. Входы появляются сами — по входам вызываемой схемы.
| Имя | Что на нём окажется |
|---|---|
| Значение | То, что отдала вызванная схема; на каждое значение — список ответов. |
Настройки
Section titled “Настройки”Схема — настройка схема, обязательна
Какую схему позвать. Ставится из палитры, раздел «Схемы».
Как звать — настройка как звать, по умолчанию один раз
| Значение | Пояснение под пунктом |
|---|---|
один раз | всё пришедшее уходит в схему одним вызовом |
на каждое значение | вызов на каждое значение списка: каналы 1…8 — восемь ответов |