УкраїнськаEnglishmRussian
Вхід/Новий
У темі немає нових постів

создание функции


Автор Повідомлення
Повідомлення створено: 10. 06. 2013 [12:28]
monia
Олег Намятов
Автор теми
Зареєстрован(а) с: 21.05.2012
Повідомлення: 173
извините за тупой вопрос

а как создать свою функцию и как ее вызывать в шаблоне
просмотрел документацию так и не понял.

мои действия:
1) в узле "Вычислитель на Java подобном языке" - "Библиотека" создаю библиотеку ("trigs")
2) в этой библиотеке добавляю функцию "Change" (отслеживает изменение входного параметра, если изменился то возвращает true) (вопрос - если переменная объявленный в таблице параметров, то она сохраняет свое значение при следующем вызове функции? как в шаблонах)
3) создаю шаблон с использованием моей функции
вызываю ее так SYS.DAQ.JavaLikeCalc.trigs.Change(параметр), на данную строку OpenSCADA не ругается
4) и делаю вызов шаблона на логическом уровне.

Наверное я делаю что то не так, по скольку вызов функции не работает.

может есть пошаговая инструкция по созданию и вызову функции пользователя, пните в нужную сторону
Повідомлення створено: 10. 06. 2013 [15:39]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
"monia" wrote:

2) в этой библиотеке добавляю функцию "Change" (отслеживает изменение входного параметра, если изменился то возвращает true) (вопрос - если переменная объявленный в таблице параметров, то она сохраняет свое значение при следующем вызове функции? как в шаблонах)

Нет конечно, сохраняйте через передаваемые аргументы, в вызывающем контексте.

"monia" wrote:

3) создаю шаблон с использованием моей функции
вызываю ее так SYS.DAQ.JavaLikeCalc.trigs.Change(параметр), на данную строку OpenSCADA не ругается

Неправильно, префикс "lib_", в документации, перед идентификатором библиотеки указан не просто так.

Learn, learn and learn better than work, work and work.
Повідомлення створено: 10. 06. 2013 [17:03]
monia
Олег Намятов
Автор теми
Зареєстрован(а) с: 21.05.2012
Повідомлення: 173
т.е. вызов должен быть таким
SYS.DAQ.JavaLikeCalc.lib_trigs.Change
Повідомлення створено: 10. 06. 2013 [17:26]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
"monia" wrote:

т.е. вызов должен быть таким
SYS.DAQ.JavaLikeCalc.lib_trigs.Change

Да, таким.

Learn, learn and learn better than work, work and work.



6807