Як можна бачити з рисунку 1, взаємодія з пристроєм відбувається через деякий транспорт на якому вони фізично базуються. Запит до транспорту Ви можете надіслати:
+
Як можна бачити з рисунку 1, взаємодія з пристроєм відбувається через деякий транспорт, на якому вони фізично базуються. Запит до транспорту можете надіслати:
−
# Безпосередньо за допомогою функції системного API OpenSCADA об'єкту транспорту ''[[Special:MyLanguage/Documents/User_API#SYSTransport|string messIO( string mess, real timeOut = 0 );]]'', якщо протоколоспецифічна частина дуже проста та дані вам потрібно лише вилучити.
+
# Безпосередньо за допомогою функції системного API OpenSCADA об'єкту транспорту ''[[Special:MyLanguage/Documents/User_API#SYSTransport|string messIO( string mess, real timeOut = 0 );]]'', якщо протоколоспецифічна частина дуже проста і дані вам потрібно лише вилучити.
−
# Загорнутий запит даних ''req'', функцією ''[[Special:MyLanguage/Documents/User_API#SYSTransport|int messIO( XMLNodeObj req, string prt );]]'' та для протоколу ''prt'', якщо протокольна частина достатньо складна та вже представлена у OpenSCADA.
+
# Загорнутий запит даних ''req'', функцією ''[[Special:MyLanguage/Documents/User_API#SYSTransport|int messIO( XMLNodeObj req, string prt );]]'' і для протоколу ''prt'', якщо протокольна частина достатньо складна і вже представлена у OpenSCADA.
−
# Загорнутий запит даних специфічний до користувача за допомогою функції ''[[Special:MyLanguage/Documents/User_API#SYSTransport|int messIO( XMLNodeObj req, "UserProtocol" );]]'' та реалізації [[Special:MyLanguage/Modules/UserProtocol|користувацького протоколу]], якщо протокольна частина достатньо складна та ще відсутня у OpenSCADA. Користувач реалізує тут саму протоколоспецифічну частину у [[Special:MyLanguage/Modules/UserProtocol|модулі UserProtocol]] та частину специфічну до даних у шаблоні для [[Special:MyLanguage/Modules/LogicLev|модуля Логічного Рівня]] або безпосередньо у процедурі контролеру на внутрішній мові програмування [[Special:MyLanguage/Modules/JavaLikeCalc|модуля JavaLikeCalc]].
+
# Загорнутий запит даних, специфічний до користувача, за допомогою функції ''[[Special:MyLanguage/Documents/User_API#SYSTransport|int messIO( XMLNodeObj req, "UserProtocol" );]]'' і реалізації [[Special:MyLanguage/Modules/UserProtocol|користувацького протоколу]], якщо протокольна частина достатньо складна і ще відсутня у OpenSCADA. Користувач реалізує тут саму протоколоспецифічну частину у [[Special:MyLanguage/Modules/UserProtocol|модулі UserProtocol]] і частину, специфічну до даних, у шаблоні для [[Special:MyLanguage/Modules/LogicLev|модуля Логічного Рівня]] або безпосередньо у процедурі контролеру на внутрішній мові програмування [[Special:MyLanguage/Modules/JavaLikeCalc|модуля JavaLikeCalc]].
−
:: [[File:at.png]] Цей останній метод наразі розвинено до можливості формування протокольної частини коду безпосередньо у тому-ж коді шаблону, як окрема вбудована функція через виклик функції запиту першого методу, якщо немає потреби повторного використання, або навіть якщо така потреба є та тут має сенс створення комплексного шаблону, який зможе поєднувати роль й вихідного протоколу, через його підключення також до модуля користувацького протоколу. Та воно буде повністю зберігатися у одній бібліотеці шаблонів.
+
:: [[File:at.png]] Цей, останній, метод наразі розвинено до можливості формування протокольної частини коду безпосередньо у тому-ж коді шаблону у вигляді вбудованої функції через виклик запиту першого методу, якщо немає потреби повторного використання; або навіть якщо така потреба є і тут є сенс створення комплексного шаблону, який зможе поєднувати роль і вихідного протоколу через його підключення також до модуля користувацького протоколу, та воно буде повністю зберігатися у одній бібліотеці шаблонів.
Latest revision as of 16:55, 12 April 2025
Як можна бачити з рисунку 1, взаємодія з пристроєм відбувається через деякий транспорт, на якому вони фізично базуються. Запит до транспорту можете надіслати:
Безпосередньо за допомогою функції системного API OpenSCADA об'єкту транспорту string messIO( string mess, real timeOut = 0 );, якщо протоколоспецифічна частина дуже проста і дані вам потрібно лише вилучити.
Загорнутий запит даних req, функцією int messIO( XMLNodeObj req, string prt ); і для протоколу prt, якщо протокольна частина достатньо складна і вже представлена у OpenSCADA.
Цей, останній, метод наразі розвинено до можливості формування протокольної частини коду безпосередньо у тому-ж коді шаблону у вигляді вбудованої функції через виклик запиту першого методу, якщо немає потреби повторного використання; або навіть якщо така потреба є і тут є сенс створення комплексного шаблону, який зможе поєднувати роль і вихідного протоколу через його підключення також до модуля користувацького протоколу, та воно буде повністю зберігатися у одній бібліотеці шаблонів.