Стартовая страница › Форумы › Разработка и интеграция › ModArcMSSql
- В этой теме 77 ответов, 5 участников, последнее обновление 5 месяцев, 3 недели назад сделано Mikhail.
-
АвторСообщения
-
07.09.2022 в 17:43 #24859MikhailМодератор
Эти модули заменить ModDbExport?
Модули, реализующие работу с архивами, скорее, дополнение, а не замена ModDbExport.
Преимущество модулей для работы с архивами:
— Проще в настройке — понятные параметры, автоматическое создание таблиц в базе, очистка старых данных.
— Быстрее и надёжнее, т.к. использование одинаковой структуры базы множеством пользователей позволяет оптимизировать код и исправить ошибки.Преимущества ModDbExport:
— Гибкость и универсальность — база данных может иметь любую структуру, которая нужна на предприятии. На получение данных можно «повесить» различные триггеры и хранимые процедуры.- Этот ответ был изменен 1 год, 7 месяцев назад от Mikhail.
07.09.2022 в 20:23 #24868RomirosУчастникRS — сокращение от Rapid SCADA )) Сделайте суффиксы подлиннее, тогда можно неформально их зарезервировать.
Отчасти да :). Ну и RS это вроде как эксклюзивная версия или типа того. Так модели автомобилей обозначают.
Просто у меня в пятой версии половина модулей так названа, как-то уже привык :).А началось всё с KpSms, которую доработал для приема тревожных смс сообщений со всяких Гранитов, Униформов и пр. А эта доработка потянула за собой и доработку AddressBook для конфигурации устройств и расшифровки сообщений. А спустя год, когда я про все это естественно забыл, обновился до новой версии и естественно все заменилось стандартными библиотеками. Диспетчера очень удивлялись закодированным событиям в скаде :).
Зато я запомнил, что любые разработки или доработки должны быть с именем, которое не с кем не пересечется :).- Этот ответ был изменен 1 год, 7 месяцев назад от Romiros.
08.09.2022 в 16:38 #24875MikhailМодераторЗато я запомнил, что любые разработки или доработки должны быть с именем, которое не с кем не пересечется :).
Да, это один из главных моментов.
09.09.2022 в 08:21 #24879JurasskParkУчастникДобрый день!
Михаил, глупый вопрос.
Я смотрел исходники на github, смотрел библиотеку из v6 beta 8, там есть различия, но пока не в этом дело.
Когда переключаешься между модулями, слева в окне показыются их настройки. Если настроек в xml нет, то он пустой — это первый признак, что настройка не передалась.А вот где в настройках вы объявляли это
ctrlCurrentArchiveOptions.ControlsToOptions();
Я не могу понять.
Расскажите, пожалуйста, для невнимательных. 🙂09.09.2022 в 12:06 #24880MikhailМодераторДобрый день!
Откройте проект в VS. На интересующем методе вызовите контекстное меню и выберите пункт перейти к объявлению метода. Горячая клавиша F12.11.09.2022 в 10:27 #24886JurasskParkУчастник😀 Вообщем, разгадал я загадку, почему вроде бы всё то, но не то. 🙂
Модули Logic написаны под NetStandard 2.0, а View под NetCoreApp v.6 )
А я на это не обращал внимание, думал, что как драйвера и там и там NetCoreApp v.6 🙂11.09.2022 в 14:54 #24889JurasskParkУчастникВ итоге получается, что старые модули не работают с новым ScadaServerCommon.dll, а мой модуль не работает со старым ScadaServerCommon.dll.
Нужно делать новую сборку scada_6.beta.9 )
Поэтому пока пойду дурацким и тупым путем… Буду делать dll, чтобы она не зависела от других. Да… код будет повторяться, но у меня задача быстро доделать модуль. )11.09.2022 в 23:09 #24897JurasskParkУчастникКороче, Admin.exe тоже хочет ScadaServerCommon.dll и поэтому нужно будет собирать сборку .beta9 из исходников 🙂
12.09.2022 в 09:26 #24898manjey73УчастникСтранно, я драйвера делаю на NET6 а то, что глубже на NetStandard 2 как-то не мешает…
12.09.2022 в 12:05 #24904JurasskParkУчастникСтранно, я драйвера делаю на NET6 а то, что глубже на NetStandard 2 как-то не мешает…
Модули Logic написаны под NetStandard 2.0, а View под NetCoreApp v.6 )
У драйверов да, а у модулей нет 🙂
12.09.2022 в 12:09 #24906MikhailМодераторЛогика тех драйверов, которые не имеют внешних зависимостей, написана на .NET Standard, чтобы их можно было запустить на .NET 4.8.
Драйвера, зависящие от других пакетов, обычно используют .NET6.
Постепенно будем уходить от .NET Standard, он используется на всякий случай для совместимости.19.09.2022 в 05:23 #25045JurasskParkУчастник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. А вот не нравятся серверу и всё тут. 🙁19.09.2022 в 05:27 #25046JurasskParkУчастникКстати, библиотека 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()
19.09.2022 в 10:31 #25055MikhailМодераторВ недавнем релизе версия Npgsql была обновлена. Возможно, у Вас лежит старая версия.
По поводу SqlClient нужно посмотреть, какие DLL сборщик кладёт в директорию publish при публикации проекта. Их все можно положить в отдельную поддиректорию — посмотрите как сделано для архива InfluxDB.22.09.2022 в 08:04 #25163JurasskParkУчастникЯ сдаюсь. Я уже не знаю, что мне делать. 🙁
https://www.youtube.com/watch?v=Lq3XrChHo_I
Нужна помощь зала.
Самое главное, какого хрена 4.6.1.3, не важно какую библиотеку использую. Может эта ссылка зашита в самом Server??? -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.