PDA

Просмотр полной версии : Не выполняется MySQL процедура



Romeo13
07.06.2024, 05:58
Доброго времени суток.

К нам на обслуживание попала установка под управлением MasterSCADA 3.11, проект создавал завод-изготовитель. В проекте есть функционал формирования смет, данные для которых берутся из базы данных MySQL. Сама база установлена, крутится, доступ к ней я имею, таблицы вижу, данные получаю (через стороннего клиента MySQL).

Доступ к этой базе из MasterSCADA осуществляется через MySQL процедуры, добавленные в дерево объектов. Соответственно в свойствах указано имя базы, пользователь root, пароль я ввёл заново, он верный.

Самый первый этап проверки доступности базы выполняется так:
MySQL процедура, тип запрос: SELECT VERSION();, выходная переменная version типа string.
Период опроса процедуры 10 секунд.
Вход "Выполнять" задан константой ВКЛ.
Выход version ни к чему не привязан.
Выход "Ошибка" привязан к первому входу блока сравнения.
Второй вход блока сравнения это пустая строка.
Выход блока сравнения привязан к переменной "Связь с БД", типа признак наличия связи это отсутствие ошибки.

Проблема в том, что в отладке эта процедура в дереве объектов серая (насколько я понял не активна), выход "Ошибка" и version тоже серые, написано "Данные не обновлены". Соответственно переменная "Связь с БД" так же. При этом открыта мнемосхема, которая использует переменную "Связь с БД", она привязана к свойству текстового блока, скрывает его если связь есть. Соответственно надпись видна, и остальные MySQL функции так же не работают.

Помогите разобраться. К сожалению сам проект достать не могу, он на рабочем объекте, но что где надо посмотреть-показать, это можно

SCADAMaster
07.06.2024, 09:03
Вы смотрите на том компьютере где система функционирует?
Похоже на ситуацию когда нет опции для работы с БД.

Romeo13
07.06.2024, 09:08
Да, делаю всё локально, база локальная. Как проверить опцию?

SCADAMaster
07.06.2024, 09:28
Справка - О программе. Там будет список опций. Найдите там упоминание MySQL.

Romeo13
07.06.2024, 11:32
Прикладываю скриншот окна "О программе"
76358
Похоже что нет. Как эту опцию добавить? И есть ли возможность обойти проблему?

SCADAMaster
07.06.2024, 12:30
MySQL нет. Чтобы ее получить обратитесь в отдел продаж.
Но не совсем ясно как тогда система вообще могла работать. Или она не работала?

Romeo13
07.06.2024, 15:23
Темная история, поставили под ключ, типа рабочая. Но на поверку оказалось не полностью. То есть работать не могло? Не может же слететь часть лицензии? Или конкретно у, например, MySQL функций есть дата завершения?
Могу я как то по-другому организовать работу с базой? Через C# скрипты, например?

SCADAMaster
07.06.2024, 16:00
Нет, лицензия никак слететь не может.
Через C# скрипты можете - это не лицензируется.

Romeo13
07.06.2024, 16:08
Большое спасибо за разъяснения, буду пробовать.

P.S. Очень странно, что приложение просто не сообщило об отсутствии лицензий. Казалось бы, что проще.

SCADAMaster
07.06.2024, 17:05
Оно пишет в лог.