Создание каналов КП в Администарторе

Стартовая страница Форумы Разработка и интеграция Создание каналов КП в Администарторе

Просмотр 15 сообщений - с 31 по 45 (из 64 всего)
  • Автор
    Записи
  • #11857
    manjey73
    Участник

    Все нормально, имя файла конфигурации есть, усе хорошо, но при активной строке точка останова внутри функции не срабатывает вообще.

    Подозрение что Администратор на чем то спотыкается, предположение что на Сериализации , но очень странно что вообще не заходит в функцию и не останавливается, просто вылетает нафик и все…

    #11858
    Romiros
    Участник

    А версии администратора, коммуникатора из одной сборки? А то в новой версии скады большие изменения.

    #11860
    manjey73
    Участник

    Да, все из одной, что стоит сейчас на ПК. Файлы подтягивались прямиком из C:\\SCADA куда она установлена.

    Отправил Вам и Михаилу. Посмотрите.
    Если это проблема в коде Администратора то лечится ли ? и как долго на излечение ?
    Буду пробовать сейчас поставить бета версию и собрать на ней как разберусь.

    #11861
    manjey73
    Участник

    Отправил еще одно письмо с файлом шаблона, забыл прилепить.

    #11887
    Mikhail
    Модератор

    Уточните, Вы сейчас тестируете со «старым» Администратором?
    В проекте и в Администраторе лежат одинаковые базовые библиотеки ScadaData.dll и ScadaCommCommon.dll?
    При возникновении исключения при получении каналов, оно должно записаться в лог ошибок Администратора. Там есть что-нибудь?

    На своём компьютере у меня нет возможности запустить, потому что там совсем другие версии кода и dll работают.

    #11890
    manjey73
    Участник

    установлена была 5.6.0 если я правильно понял. Создавая проект сделал ссылки на нужные библиотеки прямо из папки SCADA.

    Ошибок как таковых, почему не выполняется код с данной строкой не было, просто он не выполняется и все тут. Ошибка создания каналов, почему и из-за чего непонятно.

    Ставил точку останова на входе функции, просто не останавливается там и все, как будто этой функции и нет.

    • Ответ изменён 7 лет, 2 месяца назад пользователем manjey73.
    #11892
    Romiros
    Участник

    Ошибка возникает при обращении к файлу. Там используется Ваша библиотека ScadaCommFunc. Может в ней нет обработки ошибок. У меня и при загрузке шаблона возникало исключени, пока вручную название файла конфига не прописал. Но я в версиях вообще не уверен. Там наверное сборная солянка. Нужно тоже переходить на последнюю и нормально тестировать. А так каналы прописанные Вами вручную создаются. Точка останова и у меня не срабатывает.

    #11895
    manjey73
    Участник

    Romiros Ну я посмотрел по переменным, Имя файла вроде корректное, хотя попробую прописать его полностью для проверки..
    Исключения да, пока не обрабатываются, это несколько укороченный код, полный закоментирован, там попытка обработать исключение было (хотя вот то, что нет логирования самим Администратором как в Коммуникаторе не очень удобно). Не обязательно вывод в окно, а хотя бы в штатный файл лога…

    Собственно ориентировался на код KpModbus, но там другой способ чтения xml ну и там другой шаблон, привязанный к протоколу Modbus, что не подходит.

    • Ответ изменён 7 лет, 2 месяца назад пользователем manjey73.
    #11897
    Romiros
    Участник

    Что я имею ввиду. Сам механизм формирования каналов работает нормально. Проблема здесь FileFunc.LoadXml. Это Ваша закрытая библиотека. В ней есть обработка исключений?
    Либо filename, либо filepath не передаются. И возникает исключение в сторонней библиотеке (ScadaCommFunc), которое не обрабатывается.
    Просто проверьте, чтобы файл читался и тогда каналы будут нормально формироваться.

    • Ответ изменён 7 лет, 2 месяца назад пользователем Romiros.
    #11900
    manjey73
    Участник

    Она не закрыта 🙂 на Гите лежит.
    https://github.com/Manjey73/OpnenKPs/tree/master/ScadaCommFunc
    И это, «Мопед не мой, я только дал объяву» (с). В смысле код чтения и записи в XML был найден на просторах нета для сериализации. К тому же код работает в Коммуникаторе исправно в разделе Kp__Logic а вот в Kp__View спотыкается.
    Обработки исключений там нет, ее надо прикручивать в Kp__View

    з.ы. нашел у себя ошибки при формировании тегов каналов, но это другая история…

    Я вроде пробовал обернуть в try — catch, все равно спотыкается… Мне кажется тут в чем-то другом проблема, но это уже только Михаил сможет сказать. Полагаю у него больше способов отладки своей системы.

    • Ответ изменён 7 лет, 2 месяца назад пользователем manjey73.
    • Ответ изменён 7 лет, 2 месяца назад пользователем manjey73.
    #11903
    manjey73
    Участник

    Да, собственно о чем я. Предположим LoadXML не находит файла и там возникает исключение. Но ведь точка останова стоит на входе в функцию ????
    Сперва должно остановиться, считать из KPProps имя файла и вот только тогда вылететь с исключением, разве нет ?
    А оно даже в саму функцию не заходит, не происходит остановки.

    #11904
    Romiros
    Участник

    Да у меня тоже самое. Непонятно. Может какие-то тонкости отладки :). У меня на буке, где стоит студия, просто уже три версии скады и драйвера собраны с разными. Хочу привести все к последней, чтобы нормально проверять. Потому как изменения есть, плагины написанные ранее не работают. Михаил сказал нужно пересобрать с новыми библиотеками. Сегодня заметил что один драйвер ругается при работе с treeView. Так что нужно для начала все обновить.

    #11905
    manjey73
    Участник

    Ну я то собирал все с использованием одной версии и проверял на ней же.
    Сейчас тут свои огрехи при опросе поправлю, кое что проверю на установленной 5.6.1
    И попробую снова поставить 5.7.0 и на ней еще проверить.

    Но обычно моя интуиция редко подводит, раз в одной части кода работает как надо а в другой нет, то проблема вряд ли именно в LoadXML, а вот насколько она глубоко непонятно…

    Мне собственно осталось допилить мелкие огрехи при опросе, когда ответ некорректный и разные мелочи. И в принципе драйвер рабочий для ручного использования :). Создать XML шаблон для своего счетчика тепла, который у меня есть.
    А остальное это больше удобство, чтобы те же 30 каналов или больше руками не набивать в Администраторе, конфигурировать сам опрос из UI а не ручками лазить в XML как сейчас делаю и т.д.

    • Ответ изменён 7 лет, 2 месяца назад пользователем manjey73.
    #11911
    Mikhail
    Модератор

    Скопируйте Вашу DLL с функциями в папку Администратора. Он её не найдёт в папке Коммуникатора. В новом Администраторе есть директория C:\SCADA\ScadaAdmin\Lib для этих целей.

    #11912
    manjey73
    Участник

    Упс, понятно, он ищет функции у себя в директориях?
    Что-то я про это совсем даже не подумал… Ноут на выходные заберу домой для дальнейших экспериментов.

Просмотр 15 сообщений - с 31 по 45 (из 64 всего)
  • Для ответа в этой теме необходимо авторизоваться.