ModArcMSSql

Просмотр 15 сообщений - с 16 по 30 (из 78 всего)
  • Автор
    Сообщения
  • #24859
    Mikhail
    Модератор

    Эти модули заменить ModDbExport?

    Модули, реализующие работу с архивами, скорее, дополнение, а не замена ModDbExport.

    Преимущество модулей для работы с архивами:
    — Проще в настройке — понятные параметры, автоматическое создание таблиц в базе, очистка старых данных.
    — Быстрее и надёжнее, т.к. использование одинаковой структуры базы множеством пользователей позволяет оптимизировать код и исправить ошибки.

    Преимущества ModDbExport:
    — Гибкость и универсальность — база данных может иметь любую структуру, которая нужна на предприятии. На получение данных можно «повесить» различные триггеры и хранимые процедуры.

    • Этот ответ был изменен 1 год, 7 месяцев назад от Mikhail.
    #24868
    Romiros
    Участник

    RS — сокращение от Rapid SCADA )) Сделайте суффиксы подлиннее, тогда можно неформально их зарезервировать.

    Отчасти да :). Ну и RS это вроде как эксклюзивная версия или типа того. Так модели автомобилей обозначают.
    Просто у меня в пятой версии половина модулей так названа, как-то уже привык :).

    А началось всё с KpSms, которую доработал для приема тревожных смс сообщений со всяких Гранитов, Униформов и пр. А эта доработка потянула за собой и доработку AddressBook для конфигурации устройств и расшифровки сообщений. А спустя год, когда я про все это естественно забыл, обновился до новой версии и естественно все заменилось стандартными библиотеками. Диспетчера очень удивлялись закодированным событиям в скаде :).
    Зато я запомнил, что любые разработки или доработки должны быть с именем, которое не с кем не пересечется :).

    • Этот ответ был изменен 1 год, 7 месяцев назад от Romiros.
    #24875
    Mikhail
    Модератор

    Зато я запомнил, что любые разработки или доработки должны быть с именем, которое не с кем не пересечется :).

    Да, это один из главных моментов.

    #24879
    JurasskPark
    Участник

    Добрый день!
    Михаил, глупый вопрос.
    Я смотрел исходники на github, смотрел библиотеку из v6 beta 8, там есть различия, но пока не в этом дело.
    Когда переключаешься между модулями, слева в окне показыются их настройки. Если настроек в xml нет, то он пустой — это первый признак, что настройка не передалась.

    А вот где в настройках вы объявляли это
    ctrlCurrentArchiveOptions.ControlsToOptions();
    Я не могу понять.
    Расскажите, пожалуйста, для невнимательных. 🙂

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

    Добрый день!
    Откройте проект в VS. На интересующем методе вызовите контекстное меню и выберите пункт перейти к объявлению метода. Горячая клавиша F12.

    #24886
    JurasskPark
    Участник

    😀 Вообщем, разгадал я загадку, почему вроде бы всё то, но не то. 🙂
    Модули Logic написаны под NetStandard 2.0, а View под NetCoreApp v.6 )
    А я на это не обращал внимание, думал, что как драйвера и там и там NetCoreApp v.6 🙂

    #24889
    JurasskPark
    Участник

    В итоге получается, что старые модули не работают с новым ScadaServerCommon.dll, а мой модуль не работает со старым ScadaServerCommon.dll.
    Нужно делать новую сборку scada_6.beta.9 )
    Поэтому пока пойду дурацким и тупым путем… Буду делать dll, чтобы она не зависела от других. Да… код будет повторяться, но у меня задача быстро доделать модуль. )

    #24897
    JurasskPark
    Участник

    Короче, Admin.exe тоже хочет ScadaServerCommon.dll и поэтому нужно будет собирать сборку .beta9 из исходников 🙂

    #24898
    manjey73
    Участник

    Странно, я драйвера делаю на NET6 а то, что глубже на NetStandard 2 как-то не мешает…

    #24904
    JurasskPark
    Участник

    Странно, я драйвера делаю на NET6 а то, что глубже на NetStandard 2 как-то не мешает…

    Модули Logic написаны под NetStandard 2.0, а View под NetCoreApp v.6 )

    У драйверов да, а у модулей нет 🙂

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

    Логика тех драйверов, которые не имеют внешних зависимостей, написана на .NET Standard, чтобы их можно было запустить на .NET 4.8.
    Драйвера, зависящие от других пакетов, обычно используют .NET6.
    Постепенно будем уходить от .NET Standard, он используется на всякий случай для совместимости.

    #25045
    JurasskPark
    Участник
    2022-09-19 07:21:14 [PC][PC$][ERR] Резолвер не смог найти сборку 'Microsoft.Data.SqlClient, Version=5.0.0.0, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5'
       запрошенную 'ModArcMicrosoftSql.Logic, Version=6.0.0.0, Culture=neutral, PublicKeyToken=null'
    2022-09-19 07:21:14 [PC][PC$][ERR] Ошибка при создании архива CurMS с помощью модуля ModArcMicrosoftSql:
    System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Data.SqlClient, Version=5.0.0.0, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5'. Не удается найти указанный файл.
    File name: 'Microsoft.Data.SqlClient, Version=5.0.0.0, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5'
       at Scada.Server.Modules.ModArcMicrosoftSql.Logic.MicrosoftSqlCAL..ctor(IArchiveContext archiveContext, ArchiveConfig archiveConfig, Int32[] cnlNums, ModuleConfig moduleConfig)
       at Scada.Server.Modules.ModArcMicrosoftSql.Logic.ModArcMicrosoftSqlLogic.CreateArchive(IArchiveContext archiveContext, ArchiveConfig archiveConfig, Int32[] cnlNums) in C:\PROJECT\scada-v6-master\scada-v6-master\ScadaServer\OpenModules\ModArcMicrosoftSql.Logic\ModArcMicrosoftSqlLogic.cs:line 65
       at Scada.Server.Engine.CoreLogic.InitArchives()
    
    2022-09-19 07:19:02 [PC][PC$][ERR] Резолвер не смог найти сборку 'System.Data.SqlClient.resources, Version=4.6.1.3, Culture=ru-RU, PublicKeyToken=b03f5f7f11d50a3a'
       запрошенную 'System.Data.SqlClient, Version=4.6.1.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
    2022-09-19 07:19:02 [PC][PC$][ERR] Резолвер не смог найти сборку 'System.Data.SqlClient.resources, Version=4.6.1.3, Culture=ru, PublicKeyToken=b03f5f7f11d50a3a'
       запрошенную 'System.Data.SqlClient, Version=4.6.1.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
    2022-09-19 07:19:02 [PC][PC$][ERR] Ошибка при создании архива CurMS с помощью модуля ModArcMicrosoftSql:
    System.PlatformNotSupportedException: System.Data.SqlClient is not supported on this platform.
       at System.Data.SqlClient.SqlCommand..ctor(String cmdText)
       at Scada.Server.Modules.ModArcMicrosoftSql.Logic.PointQueue..ctor(Int32 maxQueueSize, String insertSql) in C:\PROJECT\scada-v6-master\scada-v6-master\ScadaServer\OpenModules\ModArcMicrosoftSql.Logic\PointQueue.cs:line 36
       at Scada.Server.Modules.ModArcMicrosoftSql.Logic.MicrosoftSqlCAL..ctor(IArchiveContext archiveContext, ArchiveConfig archiveConfig, Int32[] cnlNums, ModuleConfig moduleConfig) in C:\PROJECT\scada-v6-master\scada-v6-master\ScadaServer\OpenModules\ModArcMicrosoftSql.Logic\MicrosoftSqlCAL.cs:line 56
       at Scada.Server.Modules.ModArcMicrosoftSql.Logic.ModArcMicrosoftSqlLogic.CreateArchive(IArchiveContext archiveContext, ArchiveConfig archiveConfig, Int32[] cnlNums) in C:\PROJECT\scada-v6-master\scada-v6-master\ScadaServer\OpenModules\ModArcMicrosoftSql.Logic\ModArcMicrosoftSqlLogic.cs:line 65
       at Scada.Server.Engine.CoreLogic.InitArchives()
    

    Уже неделю бьюсь.
    Библиотеки лежат в корне еxe. А вот не нравятся серверу и всё тут. 🙁

    #25046
    JurasskPark
    Участник

    Кстати, библиотека PostgreSQl также ругается.

    
    2022-09-19 07:25:58 [PC][PC$][ERR] Резолвер не смог найти сборку 'Microsoft.Bcl.AsyncInterfaces, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'
       запрошенную 'Npgsql, Version=6.0.6.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7'
    2022-09-19 07:25:58 [PC][PC$][ERR] Ошибка при создании архива CurMS с помощью модуля ModArcPostgreSql:
    System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Bcl.AsyncInterfaces, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. Не удается найти указанный файл.
    File name: 'Microsoft.Bcl.AsyncInterfaces, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'
       at Npgsql.NpgsqlCommand..ctor(String cmdText, NpgsqlConnection connection, NpgsqlTransaction transaction)
       at Npgsql.NpgsqlCommand..ctor(String cmdText)
       at Scada.Server.Modules.ModArcPostgreSql.Logic.PointQueue..ctor(Int32 maxQueueSize, String insertSql)
       at Scada.Server.Modules.ModArcPostgreSql.Logic.PostgreCAL..ctor(IArchiveContext archiveContext, ArchiveConfig archiveConfig, Int32[] cnlNums, ModuleConfig moduleConfig)
       at Scada.Server.Modules.ModArcPostgreSql.Logic.ModArcPostgreSqlLogic.CreateArchive(IArchiveContext archiveContext, ArchiveConfig archiveConfig, Int32[] cnlNums)
       at Scada.Server.Engine.CoreLogic.InitArchives()
    
    
    #25055
    Mikhail
    Модератор

    В недавнем релизе версия Npgsql была обновлена. Возможно, у Вас лежит старая версия.
    По поводу SqlClient нужно посмотреть, какие DLL сборщик кладёт в директорию publish при публикации проекта. Их все можно положить в отдельную поддиректорию — посмотрите как сделано для архива InfluxDB.

    #25163
    JurasskPark
    Участник

    Я сдаюсь. Я уже не знаю, что мне делать. 🙁
    https://www.youtube.com/watch?v=Lq3XrChHo_I
    Нужна помощь зала.
    Самое главное, какого хрена 4.6.1.3, не важно какую библиотеку использую. Может эта ссылка зашита в самом Server???

Просмотр 15 сообщений - с 16 по 30 (из 78 всего)
  • Вы должны авторизироваться для ответа в этой теме.