Skip to content

Сообщения лога Uniplant Atomix (Warn и выше)

ADPUtils.BackupManager
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsERROR(логируется исключение)src/legacy/ADPUtils/BackupManager.csИсключение при копировании содержимого бэкапа в целевую директорию во время отката (CopyAllInDirectory).
ADPUtilsERRORДиректории не существует {pathToSubDirectory}src/legacy/ADPUtils/BackupManager.csПри откате (UndoDirectory) каталог бэкапа с указанным именем не существует; откат прерван.
ADPUtilsERRORДиректории не существует {targetDirectory}src/legacy/ADPUtils/BackupManager.csПри откате (UndoDirectory) целевой каталог, в который восстанавливается бэкап, не существует; откат прерван.
ADPUtilsERRORОшибка при выполнении бэкапа: {ex.Message}src/legacy/ADPUtils/BackupManager.csИсключение в процессе создания бэкапа (создание каталога/копирование содержимого) в методе Backup.
ADPUtilsWARNДиректория не найдена и будет создана: {targetDirectory}src/legacy/ADPUtils/BackupManager.csВ UndoFile целевой директории не существует; она будет создана перед перемещением файла.
ADPUtilsWARNНе удалось удалить старую директорию бэкапа {oldestBackup}: {ex.Message}src/legacy/ADPUtils/BackupManager.csПри удалении лишних старых бэкапов (DeleteExtraBackups) удаление самого старого каталога вызвало исключение; цикл удаления прерван.
GenericXmlSerializer
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsERRORПри чтении файла {filePath} произошла критическая ошибкаsrc/legacy/ADPUtils/Extensions/GenericXmlSerializer.csИсключение при XML-десериализации файла в методе Load; файл нечитаем или невалиден, исключение пробрасывается дальше.
Модуль валидации
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsWARNСтрока '{input}' содержит русские символыsrc/legacy/ADPUtils/Extensions/Common.csМетод CheckForRussianAndWarn обнаружил в строке кириллические символы (ContainsRussiaLetters).
Модуль генерации Excel-файлов
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsWARNНе найдены листы в файле {path}src/legacy/ADPUtils/Extensions/FileHandlers/ExcelFileHandler.csВ открытой книге первый лист (GetSheetAt(0)) равен null; лист отсутствует, создаётся новый лист 'Sheet'.
Модуль генерации специфичных Excel-файлов
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsWARNНевозможно сделать автоширину на листе {sheet.SheetName}src/legacy/ADPUtils/Extensions/FormattingHandler/ExcelUnimodDocSpecialFormatter.csИсключение в AutoSizeColumns при применении автоширины колонок листа; автоширина не применена.
Модуль глобального файлового обработчика
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsERRORОшибка при копировании из "{dest}" сюда "{file.Name}"src/legacy/ADPUtils/Extensions/GlobalFileHandler.csИсключение при копировании файла в CopyAllInDirectory (file.CopyTo); файл не скопирован.
ADPUtilsERRORЧто-то пошло не так при создании директории {dirName} {ex.Message}src/legacy/ADPUtils/Extensions/GlobalFileHandler.csИсключение при Directory.CreateDirectory в CheckDirectoryExists; директорию создать не удалось.
ADPUtilsWARNReadFromFile: путь к файлу не задан (null или пустой). Вызов из {callerMember} ({callerFile}:{callerLine}). Чтение пропущено.src/legacy/ADPUtils/Extensions/GlobalFileHandler.csВ ReadFromFile передан null или пустой путь; чтение файла пропускается, возвращается null.
ADPUtilsWARNSaveFile: путь к файлу не задан (null или пустой). Вызов из {callerMember} ({callerFile}:{callerLine}). Запись пропущена.src/legacy/ADPUtils/Extensions/GlobalFileHandler.csВ PrepareToSave передан null или пустой путь; сохранение файла пропускается, чтобы не упасть на Path.GetExtension(null).
ADPUtilsWARNSaveXlsFileWithAutoColumns: путь не задан (null или пустой). Вызов из {callerMember} ({callerFile}:{callerLine}). Запись пропущена.src/legacy/ADPUtils/Extensions/GlobalFileHandler.csВ SaveXlsFileWithAutoColumns передан null или пустой путь к файлу; запись xls пропускается.
Модуль сохранения контекста классов (GenericJsonSerializer)
МодульУровеньСообщениеОписание причины возникновения
ADPUtilsERRORПри чтении файла '{filePath}' произошла критическая ошибкаsrc/legacy/ADPUtils/Extensions/GenericJsonSerializer.csJsonException при десериализации содержимого файла в методе Load; JSON некорректен, далее бросается FileProcessingException.
ADPUtilsERRORПри чтении файла '{path}' произошла критическая ошибкаsrc/legacy/ADPUtils/Extensions/GenericJsonSerializer.csJsonException при десериализации конфигурации в LoadConfig; файл конфигурации содержит некорректный JSON.
API.JSC.JscSettings
МодульУровеньСообщениеОписание причины возникновения
APIWARNНе найдено элемента по пути {path}src/legacy/API/JSC/JscSettings.csПоиск узла по указанному пути вернул null (foundNode == null): элемент по пути отсутствует; возвращается null.
APIWARNПередан некорректный путь ({path}) к переменным pathsrc/legacy/API/JSC/JscSettings.csПроверка string.IsNullOrEmpty(path) провалилась: переданный путь к переменным пустой или null; возвращается null.
APIWARNПроблема с получением переменных из {path} {foundNode.Value}src/legacy/API/JSC/JscSettings.csИз найденного узла не удалось извлечь переменные (variables == null); возвращается null.
Модуль обработки GAP
МодульУровеньСообщениеОписание причины возникновения
APIERRORОшибка инициализации скриптов: {e.Message}src/legacy/API/Script/ScriptManager.csИсключение в catch при инициализации скриптов (вызов инициализации в ScriptManager).
APIERRORОшибка выполнения скрипта: {e.Message}src/legacy/API/Script/Scripts.csИсключение при компиляции и запуске собранного C#-скрипта (CSharpScript.RunAsync) во время инициализации.
APIERRORОшибка выполнения скрипта: {e.Message}src/legacy/API/Script/Scripts.csИсключение при выполнении метода скрипта через _scriptState.ContinueWithAsync(method) в RunMethod; возвращается null.
APIERRORОшибка чтения файла Includes.gs: {e.Message}src/legacy/API/Script/Scripts.csВнешний catch: сбой при чтении/обработке файла Includes.gs и сборке кода скриптов.
APIERRORОшибка чтения файла скрипта {path}: {e.Message}src/legacy/API/Script/Scripts.csИсключение в catch при попытке прочитать файл скрипта по пути path (File.ReadAllTextAsync); файл недоступен или не читается.
AppSettings.ViewModels.ChangeHandler
МодульУровеньСообщениеОписание причины возникновения
AppSettingsERRORОшибка очистки кэша парсеровsrc/legacy/AppSettings/ViewModels/ChangeHandler.csВ обработчике ошибок Rx-подписки (ThrownExceptions) команды ClearCommand парсеров: команда очистки кэша парсеров завершилась исключением.
Настройка ExternalModules
МодульУровеньСообщениеОписание причины возникновения
AppSettingsERRORОшибка во время закрытия настроек ExternalModules{e.GetFullMessage()}src/legacy/AppSettings/ViewModels/LibraryManagerViewModel.csИсключение в catch при восстановлении состояния модулей из бэкапа во время закрытия настроек ExternalModules.
AppSettingsWARNКлюч модуля отсутствует в бэкапе настроек ExternalModules: {key}src/legacy/AppSettings/ViewModels/LibraryManagerViewModel.csBackupModules.TryGetValue по ключу модуля не нашёл сохранённого значения; модуль помечается как не используемый в PLC.
AutomiqAutomation.App
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationFATALВо время запуска произошла ошибкаsrc/legacy/AutomiqAutomation/App.xaml.csИсключение в общем catch при инициализации/запуске приложения — после логирования приложение завершается (Environment.Exit).
AutomiqAutomationERRORUnhandled exception {ex.Message}src/legacy/AutomiqAutomation/App.xaml.csГлобальный обработчик необработанных исключений (LogException) — приложение поймало критическую ошибку и требует перезапуска.
AutomiqAutomation.Diagnostics.ParserDebug.ParserEventDispatcher
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationWARNParserEventDispatcher: не удалось получить обработчиков события {0}src/legacy/AutomiqAutomation/Diagnostics/ParserDebug/ParserEventDispatcher.csИсключение при получении обработчиков уведомления из DI (GetServices) — диспетчеризация события прекращается.
AutomiqAutomationWARNParserEventDispatcher: обработчик {0} завершился с ошибкойsrc/legacy/AutomiqAutomation/Diagnostics/ParserDebug/ParserEventDispatcher.csИсключение в catch при вызове handler.Handle(notification) — конкретный обработчик события упал, остальные продолжают обрабатываться.
AutomiqAutomation.Modules.BaseInstanceNodeModelModule.ViewModels.BaseInstanceNodeModelViewModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORНе удалось открыть файл IObj по пути {model.IObjPath}: {ex.Message}src/legacy/AutomiqAutomation/Modules/BaseInstanceNodeModelModule/ViewModels/BaseInstanceNodeModelViewModel.csВ блоке catch метода OpenIObjExcel: запуск Excel (Process.Start) для файла IObj выбросил исключение.
AutomiqAutomationERRORНе удалось открыть файл: {ex.Message}src/legacy/AutomiqAutomation/Modules/BaseInstanceNodeModelModule/ViewModels/BaseInstanceNodeModelViewModel.csВ блоке catch метода OpenModel: запуск Excel (Process.Start) для файла модели выбросил исключение.
AutomiqAutomationERRORОшибка загрузки модулей из библиотеки {lib}src/legacy/AutomiqAutomation/Modules/BaseInstanceNodeModelModule/ViewModels/BaseInstanceNodeModelViewModel.csВ блоке catch цикла по библиотекам в LoadExternalModulesAsync: вызов LoadModulesFromAssembly для конкретной библиотеки завершился исключением.
AutomiqAutomationERRORФайл не найден: {model.FullName}src/legacy/AutomiqAutomation/Modules/BaseInstanceNodeModelModule/ViewModels/BaseInstanceNodeModelViewModel.csВ методе OpenModel файл по пути model.FullName не существует (File.Exists вернул false).
AutomiqAutomationERRORФайл не найден: {model.FullName}src/legacy/AutomiqAutomation/Modules/BaseInstanceNodeModelModule/ViewModels/BaseInstanceNodeModelViewModel.csВ методе OpenIObjExcel файл IObj по пути model.IObjPath не существует (File.Exists вернул false).
AutomiqAutomation.Modules.HmiManager.ViewModels.ConfigViewModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationWARNНе удалось создать {IconJsonFilePath}.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/ConfigViewModel.csИсключение в catch при автоматическом создании JSON-файла размеров иконок (сериализация/запись файла не удалась).
AutomiqAutomation.Modules.ParserDebug.Services.ExplorerInfoService
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORExplorer: ошибка чтения снимкаsrc/legacy/AutomiqAutomation/Modules/ParserDebug/Services/ExplorerInfoService.csВ блоке catch метода LoadAsync: при чтении опций или файла снимка Explorer возникло непредвиденное исключение.
AutomiqAutomationWARNExplorer: не удалось загрузить снимок {0}src/legacy/AutomiqAutomation/Modules/ParserDebug/Services/ExplorerInfoService.csЗагрузка снимка Explorer завершилась неудачей (snapshotResult.IsFailed) или корень снимка пуст (Root == null).
AutomiqAutomation.Modules.ParserDebug.Services.ParserDebugCollector
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORParserDebugCollector: сбой конвейера событийsrc/legacy/AutomiqAutomation/Modules/ParserDebug/Services/ParserDebugCollector.csВ onError-обработчике Rx-подписки буферизованного конвейера событий парсинга произошло необработанное исключение.
AutomiqAutomation.Modules.ParserDebug.ViewModels.ParserDebugViewModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORНе удалось загрузить данные Проводникаsrc/legacy/AutomiqAutomation/Modules/ParserDebug/ViewModels/ParserDebugViewModel.csВ блоке catch метода LoadExplorerAndPopulateAsync: вызов EnsureLoadedAsync (загрузка снимка Проводника) выбросил исключение.
AutomiqAutomationERRORНе удалось открыть {0} {1}src/legacy/AutomiqAutomation/Modules/ParserDebug/ViewModels/ParserDebugViewModel.csВ блоке catch метода OpenFile: запуск внешнего приложения для открытия файла (Process.Start) завершился исключением.
AutomiqAutomation.Navigation.NavigationService
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORServiceProvider недоступен, навигация на страницу {PageType} невозможнаsrc/legacy/AutomiqAutomation/Navigation/NavigationService.csАксессор сервис-провайдера вернул null — DI-контейнер ещё не готов, поэтому навигация на страницу невозможна.
AutomiqAutomationWARNСтраница {PageType} не зарегистрирована в DIsrc/legacy/AutomiqAutomation/Navigation/NavigationService.csserviceProvider.GetService вернул null — запрошенный тип страницы не зарегистрирован в DI-контейнере, переход не выполняется.
AutomiqAutomation.ViewModels.MainWindowViewModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОшибка при копировании информации о текущей локацииsrc/legacy/AutomiqAutomation/ViewModels/MainWindowViewModel.csИсключение в catch при формировании текста и копировании информации о текущей локации в буфер обмена.
MnemoViewModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERROR{valueKind} в данный момент не реализован ^_^src/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ GetUpdateAction попался неизвестный (default) тип значения свойства, обработка которого не реализована.
AutomiqAutomationERROR{valueKind} в данный момент не реализован ^_^src/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ FindProperty попался неизвестный (default) вид значения свойства, обработка которого не реализована.
AutomiqAutomationERROR{valueKind} в данный момент не реализован ^_^src/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ FindPropertyFromBase попался неизвестный (default) вид значения свойства, обработка которого не реализована.
AutomiqAutomationWARNConditional formula пока не обновляетсяsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ GetUpdateAction тип свойства ConditionalFormula не поддерживается для обновления — действие пропускается.
AutomiqAutomationWARNConditional formula пока не обновляетсяsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ FindProperty тип свойства ConditionalFormula не поддерживается — поиск свойства для этого вида не выполняется.
AutomiqAutomationWARNConditional formula пока не обновляетсяsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ FindPropertyFromBase тип свойства ConditionalFormula не поддерживается — поиск значения из базового типа не выполняется.
AutomiqAutomationWARNInit formula пока не обновляетсяsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ GetUpdateAction тип свойства InitFormula не поддерживается для обновления — действие пропускается.
AutomiqAutomationWARNInit formula пока не обновляетсяsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ FindProperty тип свойства InitFormula не поддерживается — поиск свойства для этого вида не выполняется.
AutomiqAutomationWARNInit formula пока не обновляетсяsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csВ FindPropertyFromBase тип свойства InitFormula не поддерживается — поиск значения из базового типа не выполняется.
AutomiqAutomationWARNДля {optionName} {hmiObject.Name} будет применено значение из базового, так как ApplyOptions пришел пустымsrc/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csЗначение ApplyOptions для свойства оказалось пустым, поэтому подставляется значение из базового типа объекта.
AutomiqAutomationWARNНе найдено свойства {optionName} в объекте {hmiObject.Name}src/legacy/AutomiqAutomation/Modules/HmiManager/Extensions/HmiObjectExtensions.csУ объекта HMI не нашлось ни обычного свойства, ни параметра с искомым именем опции — обновление иконки по этой опции невозможно.
Замена иконок на мнемосхеме
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОшибка получения данных о мнемосхемах.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/RebindingIconViewModel.csИсключение в catch при инициализации моделей иконок мнемосхем (InitializeMnemoHmiIconViewModels); исключение пробрасывается дальше.
AutomiqAutomationWARN{e.Message}src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/RebindingIconViewModel.csИсключение в catch при обработке выбранных иконок (ProcessIcons); логируется текст ошибки, окно закрывается, исключение пробрасывается.
Изменение размеров иконок
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORНе удалось внести изменения в файл {JsonFilePath}src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/IconsResizerViewModel.csИсключение в catch при сериализации списка размеров иконок и записи их в JSON-файл.
Импорт сетевых параметров Unimod
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORНе найден файл конфигурации {pathToUnimodConfiguration}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/Unimod/UnimodConfigurationViewModel.csВ методе ImportNetworkParameters файл configuration.json по пути _pathToUnimod не существует, импорт сетевых параметров невозможен.
AutomiqAutomationERRORСетевые настройки не получилось импортириоватьsrc/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/Unimod/UnimodConfigurationViewModel.csTryUpdateJsonData вернул false — обновление секции controllers в configuration.json сетевыми параметрами ПЛК не выполнено.
Импорт словарей
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОбязательная переменная {jscSettingName} отсутствует или пуста в конфигурацииsrc/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Models/DictionaryImporter.csTryGetDictionaryPath вернул false (нет пути к словарю), а импорт помечен как обязательный (isRequired = true).
AutomiqAutomationERRORОшибка при копировании файла {fileName}: {ex.Message}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Models/DictionaryImporter.csВ блоке catch(IOException): операция File.Copy при копировании словаря в целевую папку завершилась ошибкой ввода-вывода.
AutomiqAutomationWARNДля packed-словаря используется устаревшая переменная {ImportDictionaryPath2}. Рекомендуется перейти на {PackedDictionaryPathSetting}.src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Models/DictionaryImporter.csДля packed-словаря не задана новая переменная UNIMOD_DICTIONARY_PACKED_PATH, и путь берётся из устаревшей UNIMOD_DICTIONARY_PATH2.
Инициализатор PLC
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОшибка инициализации PLC {plc.Name}: {ex.Message}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/PlcInitializationService.csВ блоке catch при инициализации ПЛК: вызов TrySetupInstance внутри Task.Run выбросил исключение, инициализация экземпляра ПЛК не завершилась.
Основной Модуль
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationFATALПроизошла фатальная ошибка и сборка дальше не отработает \n{ex.GetFullMessage()}:\n{ex}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ блоке catch метода BuildPLC: вызов _model.Build выбросил исключение, прерывающее сборку ПЛК.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod ({unimodUnetFilePath}) в DevStudio ({devStudioUnetFilePath}): \n{e.GetFullMessage()}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csОбщий блок catch(Exception) метода Copy: при загрузке Solution/AxmlHlp или копировании файла произошло непредвиденное исключение.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: PLC не выбран.src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csВ метод Copy передан null вместо объекта ПЛК, копирование невозможно.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: в DevStudio нет PLC {plc.Name}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csGetPlcAppElementByShortName вернул null — в omx DevStudio не найден элемент приложения ПЛК с указанным коротким именем.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: в {config.SelectedProject.Name} нет omx файлаsrc/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csУ выбранного проекта в DevStudio отсутствуют исходные файлы (Files.SourceFiles пуст или null).
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: в конфиге нет omx проектаsrc/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csconfig.SelectedProject равен null — в конфигурации не выбран omx-проект.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: не удалось определить путь источника unet.xml для PLC {plc.Name}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csBuildUnimodUnetFilePath вернул пустую строку — не удалось определить путь к исходному unet.xml в проекте Unimod.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: не удалось получить unetAddressMap для PLC {plc.Name} omx = {selectedOmxPath}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csGetUnetAddressDefinition вернул null — в omx не найдено описание unet-address-map для данного ПЛК.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: не удалось получить путь к omx файлу, копирование отменено.src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csGetSelectedOmxPath вернул пустую строку — не удалось определить путь к omx-файлу выбранного проекта.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: не удалось сформировать путь назначения для unet.xml для PLC {plc.Name}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csBuildDevStudioUnetFilePath вернул пустую строку — не удалось построить путь назначения для unet.xml в DevStudio.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: нет omx файлаsrc/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csПуть к omx-файлу пуст или файл по этому пути не существует на диске.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: отсуствует unetAddressMaps у PLC {plc.Name}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csУ элемента приложения ПЛК нет потомков unet-address-map (коллекция пуста или null).
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: отсутствует unet.xml в проекте Unimod у PLC {plcName}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csПо пути проекта Unimod файл unet.xml не существует (File.Exists вернул false).
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: путь к проекту Unimod пуст.src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csПередан пустой путь к проекту Unimod (unimodProjectPath), исходный unet.xml не определить.
AutomiqAutomationERRORНевозможно скопировать unet.xml из Unimod в DevStudio: у PLC {plc.Name} отсутствует Attribute = file в {unetAddress}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csУ элемента unet-address-map отсутствует или пуст атрибут file, путь к unet.xml построить нельзя.
AutomiqAutomationERRORНе удалось определить путь к папке глобальных словарей по переменной UNIMOD_DICTIONARY_PATH.src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csPlcOptions равны null либо подстановка переменной UNIMOD_DICTIONARY_PATH (TryGetUpdatedValue) не удалась.
AutomiqAutomationERRORНе удалось открыть результат сборки по пути {fullPath}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ блоке catch при открытии результата сборки: запуск проводника или копирование файла во временную папку выбросили исключение.
AutomiqAutomationERRORНе удалось открыть файл: {ex.GetFullMessage()}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ блоке catch метода OpenModel: запуск Excel (Process.Start) для файла модели ПЛК выбросил исключение.
AutomiqAutomationERRORОшибка загрузки модулей из библиотеки {library}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ блоке catch цикла по библиотекам: вызов LoadModulesFromAssembly для конкретной библиотеки внешних модулей завершился исключением.
AutomiqAutomationERRORОшибка при обработке изменения настроекsrc/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ блоке catch обработчика OnSettingsChanged: переинициализация конфигурации (_model.InitConfig/AfterInitPLC) после смены настроек завершилась исключением.
AutomiqAutomationERRORПапка глобальных словарей не найдена: {directoryPath}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csПолученный путь к папке словарей пуст или директория по нему не существует на диске.
AutomiqAutomationERRORФайл не найден: {PLC.FullName}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ методе OpenModel файл модели ПЛК по пути PLC.FullName не существует (File.Exists вернул false).
AutomiqAutomationWARNОбнаружено несколько unetAddressMaps: {countUnetAddressMaps} у PLC {plc.Name}. Будет взят первый: {unetAddress.Attribute("name").Value}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/Services/DevStudioUnetCopier.csНайдено более одной записи unet-address-map для ПЛК; неоднозначность разрешается выбором первой.
AutomiqAutomationWARN(логируется исключение)src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ блоке catch метода AfterInitPLC: загрузка внешних модулей (LoadExternalModulesAsync) выбросила исключение, логируется сам объект ex без текста.
AutomiqAutomationWARNНе найден файл или папка по пути {fullPath}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/WorkspaceViewModel.csВ OpenModuleInBuildResult по сформированному пути в папке результатов сборки нет ни файла, ни директории.
Основной модуль Unimod Programms
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORДиректория не найдена: {PathToMainProjectUnimod}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/Unimod/UnimodProgrammsViewModel.csВ методе Import директория основного проекта Unimod (PathToMainProjectUnimod) не существует, импорт программ прерывается.
AutomiqAutomationWARNДиректория не найдена и будет создана: {PathToResultUnimod}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/Unimod/UnimodProgrammsViewModel.csВ методе Import целевая директория результатов Unimod (PathToResultUnimod) отсутствует, поэтому она будет создана.
AutomiqAutomationWARNНе удалось удалить директорию {dir}: {ex.Message}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/Unimod/UnimodProgrammsViewModel.csВ блоке catch при импорте: попытка удалить старую директорию программы (Directory.Delete) завершилась исключением.
Перепривязка env
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORНе удалось перепривязать env для uuid='{item.TargetUuid}' в '{mnemo.Name}'src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvRebindApplier.csИсключение в catch при применении перепривязки env к одной строке (TryApplyRow) — обработка строки завершилась ошибкой.
AutomiqAutomationERRORОшибка сохранения мнемосхемы '{mnemo.Name}'src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvRebindApplier.csИсключение в catch при mnemo.Save() после перепривязки env — все ранее успешные строки группы откатываются в неуспешные.
AutomiqAutomationWARN<object uuid='{item.TargetUuid}'/> не найден в '{mnemo.Name}', пропускаем.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvRebindApplier.csВ XML мнемосхемы не найден элемент object с указанным uuid — целевой объект для перепривязки отсутствует, строка пропускается.
AutomiqAutomationWARNМнемосхема '{group.Key}' не найдена в проекте, пропускаем.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvRebindApplier.csВ проекте HMI не найдена мнемосхема с именем из запроса перепривязки — все строки этой группы помечаются как неуспешные.
AutomiqAutomationWARNНе удалось перечитать '{pathToCheck}' для проверки.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvRebindApplier.csВ отладочной проверке после сохранения не удалось перечитать файл мнемосхемы с диска (XDocument.Load бросил исключение).
AutomiqAutomationWARNУ строки нет TargetUuid (FullPath='{item.OffenderFullPath}', тег='{item.Tag}'), пропускаем.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvRebindApplier.csВ строке запроса перепривязки отсутствует TargetUuid, поэтому объект на мнемосхеме невозможно идентифицировать — строка пропускается.
AutomiqAutomationWARNНе удалось обновить окно конфликтов после Apply.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/EnvRebindViewModel.csИсключение в catch при вызове коллбэка _onApplied после применения перепривязки — обновление окна конфликтов не удалось.
Перепривязка HMI
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОшибка загрузки модулей из {lib}src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.Command.csИсключение в catch при асинхронной загрузке внешних модулей из сборки (LoadModulesFromAssembly) для одной из библиотек.
AutomiqAutomationERRORHmiData не найдена для объекта: {instanceModel.InstanceName} (ObjectType: {instanceModel.ObjectTypeName})src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.csУ экземпляра при перестроении иконок ObjectTypes отсутствует HmiData (instanceModel.HmiData == null) — объект пропускается.
AutomiqAutomationERRORБазовая мнемосхема {BaseMnemoName} не найдена.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/MnemoUpdateViewModel.csСреди мнемосхем проекта не найдена базовая мнемосхема с заданным именем — обновление всех мнемосхем невозможно.
AutomiqAutomationERRORОшибка при обновлении мнемосхем.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/MnemoUpdateViewModel.csИсключение в catch при чтении проекта HMI и обновлении всех мнемосхем по базовой.
AutomiqAutomationWARNНе удалось найти выделенные мнемосхемы в проекте.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.Command.csПосле перезагрузки проекта среди мнемосхем не нашлось ни одной из выделенных (mnemos.Count == 0) при поиске конфликтов env.
AutomiqAutomationWARNНе удалось найти выделенные мнемосхемы в проекте.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.Command.csПосле перезагрузки проекта среди мнемосхем не нашлось ни одной из выделенных (mnemos.Count == 0) при пакетной подстановке цветов env.
AutomiqAutomationWARNНе удалось найти мнемосхему {selectedMnemo.Mnemo.Name} в проекте.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.Command.csВыбранная мнемосхема не найдена в проекте после перезагрузки (FirstOrDefault вернул null) при открытии окна цветов env.
AutomiqAutomationWARNОкно привязки иконок не открыто: мнемосхема {mnemoName} не перезагружена.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.Command.csTryReloadMnemo вернул false — мнемосхему не удалось перечитать с диска, поэтому окно привязки иконок не открывается.
AutomiqAutomationWARNВыбранный ПЛК {_parserHelper?.Plc?.Name} не найден в AppObject {AppConfig?.SelectedObject}src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/HmiManagerViewModel.csПроверка AxmlHlp.IsPlc вернула false — выбранный для парсинга ПЛК не числится среди объектов проекта (AppObject).
ПЛК конфигуратор: начальная страница
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERROR{plc.Message}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/StartPageViewModel.csПри выборе ПЛК у выбранного экземпляра не пустое поле Message — то есть в нём накоплены ошибки инициализации/валидации ПЛК.
AutomiqAutomationERROR{plc.Message}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/StartPageViewModel.csВ блоке catch метода BuildPLC: сборка модели ПЛК (_model.Build) выбросила исключение, текст которого добавлен в plc.Message.
AutomiqAutomationERRORНе удалось перезагрузить начальную страницу ПЛК после смены настроек.src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/StartPageViewModel.csВ блоке catch обработчика OnSettingsChanged: при перезагрузке списка ПЛК (InitializeAllPLC) после смены проекта произошло исключение.
Подмена иконок на мнемосхеме
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОшибка загрузки шаблонов из {selectedFolder}.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/IconReplacementViewModel.csИсключение в catch при загрузке и разборе мнемосхем-шаблонов из выбранной папки.
AutomiqAutomationERRORОшибка поиска подмен.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/IconReplacementViewModel.csИсключение в catch при выполнении поиска предложений подмены (FindReplacements).
AutomiqAutomationERRORОшибка применения подмен.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/MnemoReplacementViewModel.csИсключение в catch при применении выбранных предложений подмены к мнемосхеме.
AutomiqAutomationWARNОбъект "{candidate.DisplayName}" ({rule.From.BaseTypeName}) на мнемосхеме "{proposal.SourceMnemo.Name}" не найден для замены (возможно, уже заменён ранее).src/legacy/AutomiqAutomation/Modules/HmiManager/Services/IconReplacementService.csUpdateMnemoIcon вернул false: объект для замены не найден в мнемосхеме (вероятно, уже был заменён ранее), предложение пропускается.
AutomiqAutomationWARNОбъект "{entry.ObjectName}" ({entry.BaseTypeName}) на мнемосхеме "{entry.MnemoName}" подменить не удастся: {entry.Details}src/legacy/AutomiqAutomation/Modules/HmiManager/Services/ReplacementResultBuilder.csФормируется запись о пропуске объекта при подмене (BuildSkip): объект не удалось сопоставить с шаблоном по указанной причине.
AutomiqAutomationWARNВ {replaceRectangle.Name} на мнемосхеме {mnemo.Name} нет вложенных From/To — шаблон пропущен.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/ReplacementTemplateReader.csВнутри ReplaceRectangle не найдены контейнеры From и/или To, поэтому шаблон подмены некорректен и пропускается.
AutomiqAutomationWARNВ {replaceRectangle.Name} на мнемосхеме {mnemo.Name} пустой From или To — шаблон пропущен.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/ReplacementTemplateReader.csКонтейнер From или To не содержит ни одного символа, поэтому пары для подмены построить нельзя и шаблон пропускается.
AutomiqAutomationWARNВ {replaceRectangle.Name} на мнемосхеме {mnemo.Name} число символов From ({fromSymbols.Count}) не совпадает с To ({toSymbols.Count}) — шаблон пропущен.src/legacy/AutomiqAutomation/Modules/HmiManager/Services/ReplacementTemplateReader.csКоличество символов в From и To не совпадает, сопоставление 1:1 невозможно, шаблон считается некорректным и пропускается.
AutomiqAutomationWARNВ выбранных мнемосхемах-шаблонах не найдено ни одного шаблона подмены (прямоугольник ReplaceRectangle с вложенными From и To). Проверьте, что выбрана правильная папка шаблонов и отмечены нужные мнемосхемы.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/IconReplacementViewModel.csПосле разбора выбранных мнемосхем не найдено ни одного валидного шаблона подмены (templates.Count == 0).
Подстановка цветов env
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORОшибка сохранения мнемосхемы {mnemo.Name}src/legacy/AutomiqAutomation/Modules/HmiManager/Services/MnemoColorBatchApplier.csИсключение в catch при попытке сохранить мнемосхему через SaveMnemoSpecial в пакетном применении цветов env (метод Apply по коллекции мнемосхем).
AutomiqAutomationERRORОшибка сохранения мнемосхемы {mnemo.Name}src/legacy/AutomiqAutomation/Modules/HmiManager/Services/MnemoColorBatchApplier.csИсключение в catch при попытке сохранить одну мнемосхему через SaveMnemoSpecial после применения цветов env к выбранным объектам.
AutomiqAutomationWARNНе удалось прочитать {filePath}: {ex.Message}src/legacy/AutomiqAutomation/Modules/HmiManager/Services/EnvironmentResolver.csИсключение при чтении/разборе XML-файла окружений (LoadFile) — файл с описанием environment не удалось загрузить.
Привязка иконок HMI
МодульУровеньСообщениеОписание причины возникновения
AutomiqAutomationERRORНе удалось сохранить привязку иконок для мнемосхемы {mnemo.Name}.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/MnemoIconBinderViewModel.csИсключение в catch при сохранении мнемосхемы с добавленными иконками (SaveMnemoSpecial/AddMnemosToHmi); выполняется откат перечитыванием мнемосхемы.
AutomiqAutomationERRORу объекта {hmiIconViewModel.Instance.InstanceName} HMIData is nullsrc/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/MnemoIconBinderViewModel.csУ модели иконки отсутствует HmiModel (HmiModel == null) при создании HMI-иконки — иконка не создаётся.
AutomiqAutomationWARNПривязка иконок не сохранена: мнемосхема {_mnemo.Name} не перезагружена.src/legacy/AutomiqAutomation/Modules/HmiManager/ViewModels/MnemoIconBinderViewModel.csTryReloadMnemo вернул false — мнемосхему не удалось перечитать с диска, поэтому привязка иконок не сохраняется.
AutomiqLib.API
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНеожиданная ошибка при получении IosPath для sourceName = "{sourceName}", tag = "{tag}". Причина: {ex.Message}src/legacy/AutomiqLib/API/Api.csВ блоке catch при получении источника или IosPath возникло непредвиденное исключение.
AutomiqLibERRORIOS_App '{_selectedAppFullName}' не найден в проекте.src/legacy/AutomiqLib/API/IosPath/DeviceIosPathResolver.csНе найдено выбранное IOS_App ни по полному имени, ни как главный объект (iosApp == null); путь построить невозможно.
AutomiqLibERRORОбъектов с тегом {tag} в DevStudio слишком много - {elements.Count}шт.!src/legacy/AutomiqLib/API/IosPath/DeviceIosPathResolver.csПри поиске объекта по тегу с аспектом IOS по всему проекту найдено более одного элемента (ветка > 1); неоднозначность, возвращается null.
AutomiqLibERRORУстройство с именем '{deviceName}' не найдено.src/legacy/AutomiqLib/API/IosPath/DeviceIosPathResolver.csЭлемент устройства по короткому имени не найден в проекте (deviceAppObject == null); путь не может быть построен.
AutomiqLibERRORОбъект '{tag}' не найден в IOS_App домена '{sourceName}'.src/legacy/AutomiqLib/API/IosPath/DomainIosPathResolver.csВнутри IOS_App домена не найден объект с заданным тегом (iosObj == null).
AutomiqLibERRORНайдено несколько элементов с именем '{sourceName}' ({candidates.Count} шт.). Это ошибка конфигурации. Список: - Тип: '{typeName}', FullPath: {path}src/legacy/AutomiqLib/API/IosPath/IosPathResolverFactory.csПо имени sourceName найдено более одного элемента (candidates.Count > 1); неоднозначность конфигурации, резолвер не создаётся.
AutomiqLibERRORIOS_App '{_selectedAppFullName}' не найден в проекте.src/legacy/AutomiqLib/API/IosPath/PlcIosPathResolver.csНе найдено выбранное IOS_App ни по полному имени, ни как главный объект (iosApp == null).
AutomiqLibERRORОбъект с тегом '{tag}' не найден внутри ПЛК '{plcName}'.src/legacy/AutomiqLib/API/IosPath/PlcIosPathResolver.csВнутри найденного ПЛК нет объекта с заданным непустым тегом (objectInPlc == null при непустом tag).
AutomiqLibERRORПЛК с именем '{plcName}' не найден.src/legacy/AutomiqLib/API/IosPath/PlcIosPathResolver.csЭлемент application-object для ПЛК по короткому имени не найден (plcAppObj == null); путь построить невозможно.
AutomiqLibWARNНе удалось найти IOS_App в Domain {domain}src/legacy/AutomiqLib/API/Api.csLINQ-запрос по доменам/узлам/объектам не нашёл io-server приложения для указанного домена (iosAppObject == null); возвращается пустая строка.
AutomiqLibWARNНе удалось определить тип источника: {sourceName} (tag = "{tag}")src/legacy/AutomiqLib/API/Api.csФабрика резолверов не смогла подобрать резолвер для sourceName (вернула null) — источник не является ПЛК/устройством/узлом/доменом; возвращается пустая строка.
AutomiqLibWARNОбъект '{tag}' с аспектом IOS не найден в узле Alpha.Domain '{sourceName}'.src/legacy/AutomiqLib/API/IosPath/DomainNodeIosPathResolver.csВнутри IOS_App узла домена не найден объект с заданным тегом и аспектом IOS (iosObj == null).
AutomiqLibWARNПередан ct:object с именем '{sourceName}' напрямую. Это, скорее всего, ошибка вызова. FullPath: {single.GetFullName()}src/legacy/AutomiqLib/API/IosPath/IosPathResolverFactory.csЕдинственный найденный элемент имеет тип object (ct:object) — передан объект напрямую, а не источник; путь по нему получить нельзя.
AutomiqLibWARNЭлемент '{sourceName}' найден, но его тип '{singleName}' не поддерживается для получения IOSPath пути. FullPath: {single.GetFullName()}src/legacy/AutomiqLib/API/IosPath/IosPathResolverFactory.csЕдинственный найденный элемент имеет тип, не поддерживаемый для получения IOSPath (не ПЛК/устройство/узел/домен/object); резолвер не создаётся.
AutomiqLibWARNЭлемент '{sourceName}' не найден в проекте DevStudio. (tag = "{tag}")src/legacy/AutomiqLib/API/IosPath/IosPathResolverFactory.csПоиск элементов по имени sourceName не дал результатов (candidates.Count == 0); резолвер не создаётся, возвращается null.
AutomiqLibWARNCALL API GetIosPath: plcName = {plcName}, tag = {tag} - объектов с таким тегом {elements.Count} шт. Объекты расположены по следующим путям в DevStudio: {element.GetFullName()}src/legacy/AutomiqLib/API/IosPath/PlcIosPathResolver.csОбъект внутри выбранного IOS_App не найден, а по всему проекту по тегу с аспектом IOS найдено более одного элемента (ветка > 1); неоднозначность путей.
AutomiqLib.AutomiqModels.AddressMaps.BaseMapModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORПри загрузке карты {this.NameAttribute} по пути {FilePath} произошла ошибка! {e.GetFullMessage()}src/legacy/AutomiqLib/AutomiqModels/AddressMaps/BaseMapModel.csВ блоке catch метода LoadMapBase загрузка карты не удалась (файл отсутствует или ошибка десериализации); карта обнуляется, флаг ошибки выставляется.
AutomiqLibERRORПри сохранении файла '{FilePath}' произошла ошибка. {e.GetFullMessage()}src/legacy/AutomiqLib/AutomiqModels/AddressMaps/BaseMapModel.csВ блоке catch метода SaveMapBase при создании каталога и сериализации карты в файл возникло исключение.
AutomiqLibERRORПри сохранении файла '{FilePath}' произошла ошибка. Класс {typeof(T)} == null.src/legacy/AutomiqLib/AutomiqModels/AddressMaps/BaseMapModel.csВ SaveMapBase сохраняемая карта (map) равна null; сериализовать нечего.
AutomiqLib.AutomiqModels.AddressMaps.NetDiagMapModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORПри загрузке карты адресов {this.NameAttribute} по пути {FilePath} произошла ошибка! {e.GetFullMessage()}src/legacy/AutomiqLib/AutomiqModels/AddressMaps/NetDiagMapModel.csВ блоке catch метода LoadMap файл карты сетевой диагностики отсутствует или не десериализуется; выставляется флаг ошибки загрузки.
AutomiqLibERRORПри сохранении произошла ошибка. {e.GetFullMessage()}src/legacy/AutomiqLib/AutomiqModels/AddressMaps/NetDiagMapModel.csВ блоке catch метода SaveMap при сериализации NetDiagMap в файл возникло исключение.
AutomiqLibERRORПри сохранении произошла ошибка. Класс NetDiagMap == null.src/legacy/AutomiqLib/AutomiqModels/AddressMaps/NetDiagMapModel.csВ SaveMap сохраняемый объект NetDiagMap равен null; сериализовать нечего.
AutomiqLib.AutomiqModels.ApplicationObjectModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORОшибка при загрузке атрибутов: {e.Message}src/legacy/AutomiqLib/AutomiqModels/ApplicationObjectModel.csВ блоке catch метода LoadAttributes при загрузке карт атрибутов и построении иерархии контрол-объектов возникло исключение; метод возвращает false.
AutomiqLib.AutomiqModels.AttributeMapModel
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНе удалось получить тип карты атрибута у name = {element.Attribute("name")?.Value}src/legacy/AutomiqLib/AutomiqModels/AttributeMapModel.csУ элемента карты не удалось определить тип ни из атрибута type, ни из вложенного attribute-map-attribute-type; возвращается пустая строка.
AutomiqLibERRORПри загрузке карты атрибутов {Type} по пути {Path} произошла ошибка! {e.ToString()}src/legacy/AutomiqLib/AutomiqModels/AttributeMapModel.csВ блоке catch метода LoadMap при десериализации XML-карты атрибутов возникло исключение (файл недоступен/повреждён); карта остаётся пустой.
AutomiqLib.AutomiqModels.ControlObject
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibWARNСписок атрибутов для объекта {name} равен null. Будет использован пустой список атрибутов.src/legacy/AutomiqLib/AutomiqModels/ControlObject.csВ CreatePlcObject передан attributes == null; вместо него создаётся пустой список атрибутов.
AutomiqLibWARNатрибут {attribute.Type} отсутствует в типе {baseType.GlobalName}, поэтому не будет добавлен в объект {name}src/legacy/AutomiqLib/AutomiqModels/ControlObject.csВ CreatePlcObject базовый тип не содержит данного атрибута (baseType.HasAttribute вернул false); атрибут не добавляется в создаваемый объект.
AutomiqLib.AutomiqModels.InnerObject
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibWARNпри инициализации InnerObject с именем {Name} не удалось найти его базовый тип {BaseTypeName}src/legacy/AutomiqLib/AutomiqModels/InnerObject.csПри инициализации вложенного объекта по полному имени базового типа GetTypeInfo вернул null; базовый тип не установлен.
AutomiqLib.AutomiqModels.Refs.Ref
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНе найден тип, на который ссылается r:ref type = {RelativeTypeName}. родитель {element.Parent.GetFullName()}, элемент {element.ToString()}src/legacy/AutomiqLib/AutomiqModels/Refs/Ref.csДля ссылки r:ref не удалось определить элемент базового типа (typeElement == null); тип, на который указывает ссылка, не найден.
AutomiqLib.HMI.HmiDataHandler
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORОшибка загрузки {jsonFilePath}, {ex.Message}src/legacy/AutomiqLib/HMI/HmiDataHandler.csВ конструкторе при создании словаря размеров иконок из json-файла произошло исключение (файл недоступен/повреждён/невалидный JSON).
AutomiqLib.HMI.Types.HmiWithInnerObjects
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНе найдено в базовом типе hmi {BaseType.Name} target={target}src/legacy/AutomiqLib/HMI/Types/HmiObject.csСвойство target отсутствует и в текущем объекте, и в DesignedProperties базового типа (TryGetValue вернул false); метод возвращает false.
AutomiqLibWARNПроверьте значение для {target}, должно быть (condition){ConditionValueSplitter}(expression)src/legacy/AutomiqLib/HMI/Types/HmiObject.csЗначение условного выражения после разбиения по разделителю не содержит ровно двух частей (parts.Length != 2); формат condition/expression нарушен.
AutomiqLibWARNПереданный placer и собственный placer у {Name} равны nullsrc/legacy/AutomiqLib/HMI/Types/HmiWithInnerObjects.csВ PlaceObjects и переданный placementArea, и собственный InnerObjectPlacer равны null; разместить объекты невозможно.
AutomiqLibWARNПопытка добавления в {Name} hmiObject, который равен nullsrc/legacy/AutomiqLib/HMI/Types/HmiWithInnerObjects.csВ AddInnerObject (перегрузка с координатами) передан hmiObject == null; добавление прекращается.
AutomiqLibWARNПопытка добавления в {Name} hmiObject, который равен nullsrc/legacy/AutomiqLib/HMI/Types/HmiWithInnerObjects.csВ AddInnerObject (перегрузка со смещениями offsetX/offsetY) передан hmiObject == null; добавление прекращается.
AutomiqLibWARNУ объекта {Name} не задан InnerObjectPlacersrc/legacy/AutomiqLib/HMI/Types/HmiWithInnerObjects.csВ AddInnerObject у объекта отсутствует InnerObjectPlacer (== null); вычислить координаты для размещения нельзя.
AutomiqLibWARNУ объекта {Name} не задан InnerObjectPlacersrc/legacy/AutomiqLib/HMI/Types/HmiWithInnerObjects.csВ ChangeOffset у объекта отсутствует InnerObjectPlacer (== null); изменить смещение невозможно.
AutomiqLibWARNНе определен путь для мнемосхемы {Name}src/legacy/AutomiqLib/HMI/Types/Mnemo.csВ методе Save путь к файлу мнемосхемы (_mnemoPath) пустой; сохранение невозможно.
AutomiqLib.HMI.Types.Param
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORПопытка задать значение {value} атрибута {name}, но элемент == null.src/legacy/AutomiqLib/HMI/Types/Param.csВ методе SetAttributeValue связанный XML-элемент Element равен null; установить значение атрибута нельзя.
AutomiqLibERRORЭлемент == null, невозможно обновить XML.src/legacy/AutomiqLib/HMI/Types/Param.csВ методе UpdateElement связанный XML-элемент Element равен null; обновить атрибуты нельзя.
AutomiqLib.HMI.Types.ValueBase
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORПопытака задать значение {value} атрибута {name}, но элемент == null, owner = {Owner}src/legacy/AutomiqLib/HMI/Types/ValueBase.csВ SetAttributeValue связанный XML-элемент Element равен null; установить значение атрибута невозможно.
HmiGlobalObject
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibWARNНе найдено свойство со значением {propertyValue} глобального объекта {_globalLinkName}src/legacy/AutomiqLib/HMI/Types/HmiGlobalObject.csВ GetGlobalNameByValue среди init-свойств не нашлось свойства с заданным значением (init.Key == null); возвращается исходное значение.
AutomiqLibWARNНе найдено свойство со значением {propertyValue} у глобального объекта {_globalLinkName}src/legacy/AutomiqLib/HMI/Types/HmiGlobalObject.csВ TryGetGlobalNameByValue среди init-свойств не нашлось свойства с заданным значением (init.Key == null); метод возвращает false.
Библиотека AutomiqLib
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORПри загрузке библиотеки {Name} произошла ошибка, не найден файл {PathToOmx}src/legacy/AutomiqLib/AutomiqModels/AutomiqModule.csФайл библиотеки .omx по пути PathToOmx не существует (File.Exists вернул false); далее выбрасывается FileNotFoundException.
AutomiqLibWARNНе найден {attrTypeName} при создании атрибута для объекта {this.FullPath}src/legacy/AutomiqLib/AutomiqModels/ControlObject.csДля элемента атрибута, не определённого в базовом типе, не найден его тип атрибута (attributeType == null); атрибут пропускается.
Детектор дублирования
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНе удалось получить базовый тип сокета по имени {BaseTypeGlobalName}. Возможно это связано с дублированием Namespace в проекте библиотеки. Обратитесь к разработчику.src/legacy/AutomiqLib/AutomiqModels/Sockets/SocketDefinition.csВ InitBaseType по BaseTypeGlobalName не удалось получить тип сокета (SocketType == null), вероятно из-за дублирования Namespace; инициализация прерывается.
Модуль DevStudio (Axml)
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНе найден тип {typeof(T).Name}: {globalName}src/legacy/AutomiqLib/Axml.csТип с указанным globalName не найден ни по локальному имени, ни по индексу GlobalName, ни с префиксом unit.; GetTypeInfo возвращает null.
AutomiqLibERRORНайдено несколько элементов <device> с именем "{name}". Возвращается первый из {devices.Count}.src/legacy/AutomiqLib/AxmlHlp.csПо имени устройства в индексе найдено более одного элемента <device> (devices.Count > 1); это неоднозначность конфигурации, возвращается только первый.
AutomiqLibWARNНе удалось найти тип {devStudioType}src/legacy/AutomiqLib/Axml.csВ GetDevStudioTypes передано пустое имя типа (devStudioType пустое или null); возвращается пустая коллекция.
AutomiqLibWARNМетод GetDomainNodeByName - вернул {foundElements.Count} по тегу {name}. Это залет. Ни один алгоритм не расчитан для работы с ТАКИМИ проектами. Удачиsrc/legacy/AutomiqLib/AxmlHlp.csПо имени domain-node найдено более одного элемента (ветка default в switch по количеству); проект содержит дубликаты узлов, алгоритмы на это не рассчитаны.
AutomiqLibWARNНе найдено плк по имени {plcName} в DevStudiosrc/legacy/AutomiqLib/AxmlHlp.csСреди узлов всех доменов не найден узел (ПЛК) с заданным именем; GetLoadedPlc возвращает null.
AutomiqLibWARNНе удалось найти объект по пути {iosAppName}src/legacy/AutomiqLib/AxmlHlp.csПо частям пути (домен/сервер/приложение) не удалось найти соответствующий IOS-объект (iosApp == null); метод возвращает null.
AutomiqLibWARNПередан некорректный путь для данного метода, нужно ИмяДомена.ИмяСервера.Сервер.ИмяОбъектаsrc/legacy/AutomiqLib/AxmlHlp.csПереданный путь IOS_App после разбиения по точке не состоит ровно из 4 частей, значит формат пути неверен.
AutomiqLibWARNПопытка добавить дубликат элемента <{elementName}> {value.FullPath} из библиотеки "{module.Name}". Уже загружено из {projectSourceName}src/legacy/AutomiqLib/Helpers/RegHelper.csTryAdd в словарь типов вернул false — элемент с таким ключом уже зарегистрирован ранее из другого источника; дубликат не добавляется.
Модуль HMI
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibERRORНе удалось перезагрузить мнемосхему {mnemo.Name} на месте.src/legacy/AutomiqLib/HMI/HmiProject.csВ блоке catch метода ReloadMnemoInPlace при перечитывании и резолве базовых типов мнемосхемы возникло исключение.
AutomiqLibERRORНе удалось перезагрузить мнемосхему {mnemoName} из файла {mnemoFilePath}src/legacy/AutomiqLib/HMI/HmiProject.csВ блоке catch метода TryReloadMnemo при создании новой мнемосхемы и резолве базовых типов возникло исключение.
GAProcessorERRORMnemoName == null у {o.InstanceName}src/legacy/GAProcessor/Generators/HmiObjectPaster.csУ элемента HmiData не задано имя мнемосхемы MnemoName, мнемосхему получить нельзя, элемент пропускается.
GAProcessorERRORу объекта {o.InstanceName} HMIData == nullsrc/legacy/GAProcessor/Generators/HmiObjectPaster.csУ обрабатываемого объекта поле HmiData равно null, создавать иконки HMI не из чего, объект пропускается.
AutomiqLibWARNМнемосхема {mnemoName} удалена из кеша HMI: файл не найден {mnemoFilePath}src/legacy/AutomiqLib/HMI/HmiProject.csФайл мнемосхемы по ожидаемому пути отсутствует (File.Exists вернул false); мнемосхема удаляется из кеша, метод возвращает false.
AutomiqLibWARNУже существует мнемосхема с именем {element.Name} {mnemo.Name}src/legacy/AutomiqLib/HMI/HmiProject.csПри добавлении мнемосхемы в скрытые в корне документа найден элемент с тем же именем; добавление прекращается.
AutomiqLibWARNШаблон {mnemoFile} не загружен: {exception.GetFullMessage()}src/legacy/AutomiqLib/HMI/HmiProject.csПри создании мнемосхемы из файла-шаблона и резолве базовых типов возникло исключение; данный шаблон пропускается.
Обработка значений атрибутов с @
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibWARNНе удалось обработь значение {matchValue} для {instance.FullRelativePath}src/legacy/AutomiqLib/Helpers/AttributeValueHelpers/AttributeValueHelper.csНайденный по шаблону @(...) линк-апдейтер не смог получить обновлённое значение (TryGetUpdatedValue вернул false); исходный текст оставляется без изменений.
Обработка сокетов devstudio
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibWARNНайдено сразу несколько параметров по пути {appObjectPathToFind}src/legacy/AutomiqLib/AutomiqModels/Sockets/SocketInstance.csПри поиске параметра сокета по пути найдено более одного совпадения (socketParameters.Count() > 1); неоднозначность, возвращается null.
Обработчик карт атрибутов
МодульУровеньСообщениеОписание причины возникновения
AutomiqLibWARNНе удалось загрузить карту атрибутов {Name} -- {Type}. Не удалось получить атрибут filesrc/legacy/AutomiqLib/AutomiqModels/AttributeMapModel.csУ элемента карты атрибутов отсутствует атрибут file (filePath == null); путь к файлу карты не определён, загрузка прекращается.
DebugProject.Program
МодульУровеньСообщениеОписание причины возникновения
DebugProjectFATAL(логируется исключение)src/legacy/DebugProject/Program.csВ том же catch (Exception) метода Main3 дополнительно логируется само объект-исключение.
DebugProjectFATALЧет критануло конкретно. Текст ошибки: {e.GetFullMessage()}src/legacy/DebugProject/Program.csОбщий catch (Exception) в методе Main3: произошла необработанная ошибка во время обработки .omx и тегов.
DebugProjectERRORapplication-object c именем {appObjName} НЕ найден!src/legacy/DebugProject/Program.csСреди application-object из .omx не найден объект с переданным именем (FirstOrDefault вернул null); программа завершается.
DebugProjectERRORнайдено несколько({el.Count}) объектов с тегом "{tagName}". Они все будут записаны в результирующий файлsrc/legacy/DebugProject/Program.csПо тегу найдено более одного объекта (el.Count > 1); все они записываются в результирующий файл.
DebugProjectERRORне найден файл "{omxFile}"src/legacy/DebugProject/Program.csУказанный во втором аргументе .omx файл не существует (File.Exists вернул false); программа завершается.
DebugProjectERRORне найден файл "{tagsFile}"src/legacy/DebugProject/Program.csФайл с тегами объектов (третий аргумент) не существует; программа завершается.
DebugProjectERRORне найдет объект с тегом "{tagName}"src/legacy/DebugProject/Program.csДля тега из списка не найдено ни одного объекта (el.Count == 0) внутри application-object.
DebugProjectERRORнеобходи передать 4 аргумента! 1-имя application-object, 2-путь к .omx файлу, 3-путь к файлу с тегами объектов, 4-путь к результирующему файлуsrc/legacy/DebugProject/Program.csКоличество аргументов командной строки не равно 4; программа завершается.
DebugProjectERRORтеги в файле {tagsFile} не обнаруженыsrc/legacy/DebugProject/Program.csСписок тегов, прочитанный из файла, пуст (Count < 1); программа завершается.
ExtModules.ModuleOrchestrator
МодульУровеньСообщениеОписание причины возникновения
ExtModulesWARNОстановка выполнения цепочки модулей: {ex.Message}src/legacy/ExtModules/ModuleOrchestrator.csПоймано ModuleStopException во время выполнения цепочки модулей — модуль запросил остановку; исключение пробрасывается дальше.
Загрузчик внешних модулей
МодульУровеньСообщениеОписание причины возникновения
ExtModulesERRORLoaderException для {assemblyPath}src/legacy/ExtModules/ModuleLoader.csПоймано ReflectionTypeLoadException при загрузке типов из сборки; перебираются LoaderExceptions — не удалось разрешить зависимости типов сборки.
ExtModulesERRORНе удалось загрузить сборку {assemblyPath}src/legacy/ExtModules/ModuleLoader.csОбщий catch при загрузке сборки из AssemblyLoadContext; сборку прочитать не удалось, возвращается пустой список типов.
ExtModulesERRORПроизошла ошибка зугрузки мастер-модулей. Подробнее в Debug. Сообщение: {ex.Message}src/legacy/ExtModules/ModuleLoader.csВ catch при получении мастер-модуля и его подмодулей из сборки выброшено исключение; мастер-модуль не загружен.
ExtModulesERRORПроизошла ошибка зугрузки модулей. Подробнее в Debug. Сообщение: {ex.Message}src/legacy/ExtModules/ModuleLoader.csВ catch при создании экземпляра одного из модулей из сборки (GetModuleAsync) выброшено исключение; модуль не загружен.
Запуск внешних модулей
МодульУровеньСообщениеОписание причины возникновения
ExtModulesERRORОшибка загрузки модулей из библиотеки {library.LibraryFileInfo.FullPath}src/legacy/ExtModules/Modules/ModuleLauncher/ViewModels/ModuleLauncherViewModel.csИсключение при загрузке модулей из сборки библиотеки (LoadModulesFromAssembly) для одной из подключённых библиотек.
Менеджер свойств модулей
МодульУровеньСообщениеОписание причины возникновения
ExtModulesERRORОшибка записи свойства {baseProperty.Name} в файл {path}: {ex.Message}src/legacy/ExtModules/Persistence/ModulePropertiesManager.csИсключение при сериализации свойства и сохранении его в XML-файл; свойство не записано.
ExtModulesERRORОшибка сохранения XML файла {filePath}: {ex.Message}src/legacy/ExtModules/Persistence/ModulePropertiesManager.csИсключение при вызове doc.Save для XML-документа; файл не сохранён.
ExtModulesERRORОшибка сохранения уровней сохранения в файл {persistenceSettingsPath}: {ex.Message}src/legacy/ExtModules/Persistence/ModulePropertiesManager.csИсключение при формировании и сохранении XML-документа с уровнями persistence; файл уровней не сохранён.
Обработка внешних модулей
МодульУровеньСообщениеОписание причины возникновения
ExtModulesERRORВ модуле {module.Name} cвойство {prop.Name} с аттрибутом BackupAttribute должно быть типа BackupManagerViewModel, но является {prop.PropertyType}. Резульирующая кнопка для данного свойства не появитсяsrc/legacy/ExtModules/ModuleControlViewModel.csСвойство с атрибутом BackupImportAttribute имеет тип, отличный от BackupImportViewModelBase; кнопка для него не создаётся.
ExtModulesERRORВ модуле {module.Name} cвойство {prop.Name} с аттрибутом OpenDirOrFileAttribute должно быть типа string, но является {prop.PropertyType}. Резульирующая кнопка для данного свойства не появитсяsrc/legacy/ExtModules/ModuleControlViewModel.csСвойство с атрибутом OpenDirOrFileAttribute имеет тип, отличный от string; кнопка для него не создаётся.
ExtModulesERRORВ модуле {module.Name} cвойство {prop.Name} с аттрибутом ResultAttribute должно быть типа ICommand, но является {prop.PropertyType}. Резульирующая кнопка для данного свойства не появитсяsrc/legacy/ExtModules/ModuleControlViewModel.csСвойство с атрибутом ResultAttribute имеет тип, отличный от ICommand; кнопка для него не создаётся.
ExtModulesERRORОшибка при загрузке свойств модуля {module.Name}src/legacy/ExtModules/ModuleControlViewModel.csModulePropertiesManager.LoadPropertiesAsync вернул false — не удалось загрузить сохранённые свойства модуля.
ExtModulesERRORОшибка при инициализации модуля {module.Name}src/legacy/ExtModules/ModuleControlViewModel.csmodule.InitializeAsync вернул false — модуль сообщил о неуспешной инициализации.
ExtModulesERRORПроизошла ошибка при инциализации модуля {loadedModule.Module.Name}src/legacy/ExtModules/ModuleControlViewModel.csИсключение при асинхронной инициализации загруженного модуля (InitLoadedModulesAsync); инициализация модуля провалилась.
ExtModulesERROR{ex.InnerException.Message}src/legacy/ExtModules/ModuleViewModel/ModuleViewModel.csЕсли у исключения выполнения модуля есть InnerException, логируется его сообщение.
ExtModulesERROR{ex.ToString()}src/legacy/ExtModules/ModuleViewModel/ModuleViewModel.csВ том же catch выполнения модуля логируется полный текст пойманного исключения.
ExtModulesERRORОшибка при выполнении модуля {Module.Name}src/legacy/ExtModules/ModuleViewModel/ModuleViewModel.csИсключение при запуске модуля через оркестратор (RunModuleAsync); состояние модуля переведено в Error.
ExtModulesWARNВ модуле {module.Name} cвойство {prop.Name} с аттрибутом BackupManagerViewModel имеет тип BackupManagerViewModel, но его значение равно null. Резульирующая кнопка для данного свойства не появитсяsrc/legacy/ExtModules/ModuleControlViewModel.csЗначение свойства с атрибутом BackupImportAttribute равно null; кнопка для него не создаётся.
ExtModulesWARNВ модуле {module.Name} cвойство {prop.Name} с аттрибутом OpenDirOrFileAttribute имеет тип string, но его значение равно null. Резульирующая кнопка для данного свойства не появитсяsrc/legacy/ExtModules/ModuleControlViewModel.csЗначение свойства типа string с атрибутом OpenDirOrFileAttribute равно null; кнопка для него не создаётся.
ExtModulesWARNВ модуле {module.Name} cвойство {prop.Name} с аттрибутом ResultAttribute имеет тип ICommand, но его значение равно null. Резульирующая кнопка для данного свойства не появитсяsrc/legacy/ExtModules/ModuleControlViewModel.csЗначение свойства типа ICommand с атрибутом ResultAttribute равно null; кнопка для него не создаётся.
ExtModulesWARNСвойство {prop.Name} содержит неизвестный атрибут {attr.GetType().Name}.src/legacy/ExtModules/ModuleControlViewModel.csВ ветке default switch по атрибутам свойства встречен атрибут, не поддерживаемый обработчиком результирующих свойств.
ExtModulesWARNне удалось провалидировать свойства результатов {module.Name}src/legacy/ExtModules/ModuleControlViewModel.csTryValidateResultProperties вернул false — результирующие свойства модуля не прошли валидацию.
FilterElixir.WPF.ViewModels.AttributesEditor.AttributesEditorViewModel
МодульУровеньСообщениеОписание причины возникновения
FilterElixirERROR(логируется исключение)src/modules/FilterElixir/FilterElixir.WPF/ViewModels/AttributesEditor/AttributesEditorViewModel.Commands.csИсключение в catch при сохранении; в лог передаётся только объект исключения e, пользователю показывается сообщение об ошибке сохранения.
FilterElixirERRORОшибка при перезагрузке данных: {e.Message}src/modules/FilterElixir/FilterElixir.WPF/ViewModels/AttributesEditor/AttributesEditorViewModel.Commands.csИсключение в catch при перезагрузке данных; пользователю показывается сообщение об ошибке.
FilterElixirERRORBackup успешно создан {backupPath}src/modules/FilterElixir/FilterElixir.WPF/ViewModels/AttributesEditor/AttributesEditorViewModel.csПосле успешного копирования проекта в backup-файл фиксируется создание резервной копии (успешное событие, записанное уровнем Error).
FilterElixirERRORОшибка при загрузке LoadAttributes() {e}src/modules/FilterElixir/FilterElixir.WPF/ViewModels/AttributesEditor/AttributesEditorViewModel.csИсключение в catch внутри LoadAttributes(); дополнительно показывается критическое сообщение пользователю.
FilterElixirERRORПроизошла ошибка backup: {ex.Message}src/modules/FilterElixir/FilterElixir.WPF/ViewModels/AttributesEditor/AttributesEditorViewModel.csИсключение в catch при создании резервной копии проекта; метод возвращает false.
FBD-генератор. Модуль замен TAG (From-To)
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORПодстановка переменной в имени {block["name"]} в библиотечном {inputJson.Name} не выполнилась. Данный блок не попадет в результирующий файл. См. локльный словарьsrc/legacy/GAProcessor/Generators/ModuleFBD/Services/TagProcessor.csПосле замены в имени блока остались квадратные скобки (неподставленная переменная); блок удаляется из FBD и не попадёт в результат.
GA ObjTypeProcessor
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERROR{instance.InstanceName} - ObjectType.Data == null, такого быть не должно - объект будет пропущен, проверьте свои исходные данные!src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csУ типа объекта отсутствуют данные (objectType.Data == null), поэтому обработка экземпляра прерывается и возвращается null.
GAProcessorERRORНе задан путь для {(instance.UseLocalObjectType ? "локальных" : "глобальных")} ObjectTypessrc/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csПолученный путь к каталогу ObjectTypes (локальных или глобальных) пуст; возвращается значение по умолчанию.
GAProcessorERRORНе найден файл ObjectType '{objectTypeName}': {ex.GetFullMessage()}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csПоиск файла ObjectType на диске (FileSearcher.FindFileByExactName) выбросил исключение, файл не найден.
GAProcessorERRORНе найдена переменная {DefLabelsPathPrefix}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csВ настройках JscSettings отсутствует ключ DefLabelsPathPrefix (путь к файлу DefLabels не получен).
GAProcessorERRORНе найдена переменная {WeintekEventParams}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csВ настройках JscSettings отсутствует ключ WeintekEventParams (путь к параметрам событий Weintek не получен).
GAProcessorERRORНе удалось распарсить ObjectType: '{objectTypeName}' из файла {matchedFile}. Проверьте файлsrc/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csПарсинг файла ObjectType (ParseObjectTypesAndAttributes) вернул null.
GAProcessorERRORОшибка при обработке ObjectType для инстанса '{instance.InstanceName}': {ex.GetFullMessage()}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csВнешний catch метода GetObjTypeOrDefault: любое исключение при поиске/парсинге ObjectType.
GAProcessorERRORОшибка при обработке экземпляра '{instance.InstanceName}': {ex.Message}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csВнешний catch при обработке экземпляра: любое исключение в основном блоке формирования UpdatedInstanceModel.
GAProcessorERRORОшибка при чтении или парсинге файла: {ex.Message}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csПри создании workbook или парсинге листов DefLabels возникло исключение.
GAProcessorWARNНе задан путь для {(useLocalObjectType ? "локальных" : "глобальных")} ObjectTypes. Проверьте Settingssrc/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csВ JscSettings отсутствует или пуст ключ пути к каталогу ObjectTypes (LocalObjectsPath/GlobalObjectsPath).
GAProcessorWARNОшибка при обработке HMI экземпляра '{instance.InstanceName}': {e.Message}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csПри замене HMI-переменных в StaburHmiModels выброшено ApiException; список Stabur HMI заменяется пустым.
GAProcessorWARNОшибка при обработке HMI экземпляра '{instance.InstanceName}': {e.Message}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csПри замене HMI-переменных в HmiModels (платформа Alpha) выброшено ApiException; список HMI-моделей заменяется пустым.
GAProcessorWARNОшибка при обработке HMI экземпляра '{instance.InstanceName}': {e.Message}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csВызов метода DevStudio API (GetDevStudioApiMethod) при вычислении IosPath выбросил исключение.
GAProcessorWARNОшибка при работе с DevStudio, {devObject.DevStudioName}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/ObjectTypeProcessor.csЭкземпляр Api (Api.Instance) равен null, поэтому путь IosPath не может быть вычислен через DevStudio.
GAP scripts
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORNamespace {nameSpace} не найден.src/legacy/GAProcessor/Scripts/Scripts.csGetTypeFromAssembly вернул null — запрошенный тип/namespace отсутствует в загруженной сборке; вызов метода прерывается.
GAProcessorERRORВо время выполнения метода {method.DeclaringType?.FullName}.{method.Name} из модуля {method.Module.Name} возникла ошибка {e.InnerException.Message}src/legacy/GAProcessor/Scripts/Scripts.csВ catch при вызове instance-метода через рефлексию выброшено исключение, у которого есть InnerException; логируется внутреннее сообщение.
GAProcessorERRORВо время выполнения метода {method.DeclaringType?.FullName}.{method.Name} из модуля {method.Module.Name} возникла ошибка {e.Message}src/legacy/GAProcessor/Scripts/Scripts.csВ catch при вызове instance-метода через рефлексию выброшено исключение без InnerException; логируется его собственное сообщение.
GAProcessorERRORКоличество параметров не совпадает для метода {methodName}.src/legacy/GAProcessor/Scripts/Scripts.csConvertParameters вернул null: число переданных аргументов не совпадает с числом параметров метода.
GAProcessorERRORМетод {methodName} не найден.src/legacy/GAProcessor/Scripts/Scripts.csGetMethodFromType не нашёл публичный статический или instance-метод с таким именем в типе; вызов прерывается.
GAProcessorERRORНе удалось загрузить сборку по пути {gapPath}src/legacy/GAProcessor/Scripts/Scripts.csAssemblyHelper.LoadOrReloadAssembly вернул null — сборка GAP.dll по указанному пути не загрузилась.
GAProcessorERRORНе удалось создать экземпляр класса GAP.Helpers.DictionaryProcessor: {ex.Message}src/legacy/GAProcessor/Scripts/Scripts.csВ catch при создании экземпляра DictionaryProcessor через рефлексию (Activator.CreateInstance) возникло исключение.
GAProcessorERRORНе удалось создать экземпляр класса {type.FullName}: {ex.Message}src/legacy/GAProcessor/Scripts/Scripts.csВ catch при переборе нестатических классов сборки не удалось создать экземпляр типа через Activator.CreateInstance.
GAProcessorERRORОшибка загрузки DLL: {e.Message}src/legacy/GAProcessor/Scripts/Scripts.csВ блоке catch при инициализации внешних модулей: не удалось загрузить или перезагрузить сборку GAP.dll либо инициализировать DictionaryProcessor.
GAProcessorERRORОшибка при вызове метода {methodName}: {ex.Message}src/legacy/GAProcessor/Scripts/Scripts.csВ общем catch CallMethod при обработке аргументов, конвертации параметров, создании экземпляра или вызове метода возникло исключение.
GAProcessorERRORСборка не загружена.src/legacy/GAProcessor/Scripts/Scripts.csВ InitializeNonStaticClasses поле _assembly == null — сборка ещё не была загружена, инициализация классов невозможна.
GAProcessor.API.InstancePostUpdateService
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORПроизошла ошибка при пост обработке инстансов: {ex.GetFullMessage()}src/legacy/GAProcessor/API/InstancePostUpdateService.csВ catch метода UpdateAll при одном из шагов пост-обновления инстанса (AdditionalData/ObjectType/Modbus/Attributes/NetDiags/HmiData) возникло исключение.
GAProcessor.API.InstructionHandlers.HmiDataInstructionHandler
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNДля HmiModel неподходящая конструкция, должно быть HmiData.(HmiType какой-то).(OptionName какой-то).Переменнаяsrc/legacy/GAProcessor/API/InstructionHandlers/HmiDataInstructionHandler.csПуть инструкции при разбиении по разделителю дал не 3 части — неверный формат обращения к HmiData.
GAProcessor.API.InstructionHandlers.TemplatesInstructionHandler
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNДля Templates неподходящая конструкция, должно быть Templates.(Alias какой-то).Переменнаяsrc/legacy/GAProcessor/API/InstructionHandlers/TemplatesInstructionHandler.csПуть инструкции при разбиении по разделителю дал не 2 части — неверный формат обращения к Templates.
GAProcessor.BaseParser
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORПроизошла ошибка при чтении файла {filePath}: {ex.Message}src/legacy/GAProcessor/BaseParser.csCatch в ParseJsmFile: чтение строк JSM-файла или их обработка выбросили исключение.
GAProcessor.CodesysModbus.GlobalDictionary.GlobalDictionary
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORНе найден Updated Instance для экземпляра {instance.Tag}src/legacy/GAProcessor/CodesysModbus/GlobalDictionary/GlobalDictionary.csСреди updatedInstances нет экземпляра, у которого InstanceName совпадает с тегом instance.Tag; префикс библиотеки получить нельзя, возвращается false.
GAProcessorERRORНе найден префикс библиотеки Codesys (CodesysLibraryPrefix) для экземпляра {instance.Tag} (ObjectType {instance.ObjectTypeName}src/legacy/GAProcessor/CodesysModbus/GlobalDictionary/GlobalDictionary.csВ AdditionData найденного экземпляра отсутствует ключ CodesysLibraryPrefix; префикс устанавливается в пустую строку.
GAProcessor.CodesysModbus.Services.InvalidDiagFileWriter
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORInvalidDiag. Не указан путь к выходному файлу {properties.OutputInvalidDiagFilePath}src/legacy/GAProcessor/CodesysModbus/Services/InvalidDiagFileWriter.csВходной путь корректен, но не задан путь к выходному файлу InvalidDiag (OutputInvalidDiagFilePath пуст); обработка не выполняется.
GAProcessorERRORInvalidDiag. Некорректный путь к файлу {properties.InputInvalidDiagFilePath}src/legacy/GAProcessor/CodesysModbus/Services/InvalidDiagFileWriter.csВходной путь InvalidDiag пуст или файл по нему не существует (isInvalidDiagPathExists == false); обработка не выполняется.
GAProcessor.CodesysModbus.Services.ModbusWriter.CodesysPlcInstanceSelector
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNНайдено несколько ПЛК-техобъектов в модели ПЛК, у которых ObjectType соответствует файлу: {plcObjectsPath}. Будет использован первый instance. Количество: {plcTechObjects.Count}. Source instance: {sourcePlcInstance.InstanceName}. ObjectType: {sourcePlcInstance.ObjectTypeName}src/legacy/GAProcessor/CodesysModbus/Services/ModbusWriter/CodesysPlcInstanceSelector.csПод условия из файла [PlcObjects] подошло более одного техобъекта ПЛК; для обновления JSM используется первый из них.
GAProcessor.ExcelHandler.ExcelParser
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORПроизошла ошибка при обработке формул листа {currentSheetName}, адрес ячейки {currentCell?.Address} {ex}src/legacy/GAProcessor/ExcelHandler/NpoiExcelParser.csВо внешнем catch при создании FormulaEvaluator или обходе листов/строк/ячеек возникло исключение.
GAProcessorERRORПроизошла ошибка при обработке формул листа {currentSheetName}, адрес ячейки {currentCell?.Address} {e}src/legacy/GAProcessor/ExcelHandler/NpoiExcelParser.csВ catch при вычислении конкретной формульной ячейки (evaluator.EvaluateInCell) возникло исключение; обработка остальных ячеек продолжается.
GAProcessor.FromDictionaryConverters.DictionaryConversionManager
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNЗадан неизвестный тип {option}src/legacy/GAProcessor/FromDictionaryConverters/DictionaryConversionManager.csДля переданного FromDictionaryOption нет зарегистрированного конвертера (TryGetValue вернул false).
GAProcessorWARNОшибка обработки для {filePath}src/legacy/GAProcessor/FromDictionaryConverters/DictionaryConversionManager.csParseWithPrefix вернул пустые/null данные — из файла не удалось получить исходные данные для конвертации.
GAProcessorWARNОшибка обработки для {filePath}-{sheetName}src/legacy/GAProcessor/FromDictionaryConverters/DictionaryConversionManager.csParseSheet вернул пустые/null данные — указанный лист файла не дал исходных данных для конвертации.
GAProcessor.FromDictionaryConverters.DictionaryToJsonConverter
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNНе удалось обработать значение для {key}-{value}src/legacy/GAProcessor/FromDictionaryConverters/DictionaryToJsonConverter.csСреди зарегистрированных IValueToJsonHandler ни один не смог обработать пару ключ-значение (Find вернул null).
GAProcessor.Unimod2.Converters.FromFrameToNodeConverter
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORне найден ModbusDiag у {frame.Device?.Name}src/legacy/GAProcessor/Unimod2/Converters/FromFrameToNodeConverter.csУ парсера отсутствует тип объекта ModbusDiag (_parser.ModbusDiagObjectType == null), поэтому узлы диагностики Modbus для устройства не строятся; возвращается null.
GAProcessor.Unimod2.Models.FrameModel
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNНе найдено {FunctionStr} {Type}src/legacy/GAProcessor/Unimod2/Models/FrameModel.Methods.csДля функции/типа фрейма отсутствует запись о максимальном размере (в _maxFrameSizesDict нет Function или нужного bitCount); проверка корректности фрейма возвращает false.
logger
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNНе удалось сформировать путь для {devStudioObject.InstanceName}, проверьте DevStudioPathsrc/legacy/GAProcessor/Helpers/DevStudioHelper.csCanInstanceDevStudioPathBeFormed вернул false — у объекта пустой DevStudioPath или DevStudioName, путь сформировать нельзя. Логгер передаётся параметром, имя NLog-логгера определяется вызывающим.
ModbusMap
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORКритическая ошибка! в {instance.InstanceName}, {instance.ObjectTypeName} не удалось найти ключ {SignalKeys.DefLabel}src/legacy/GAProcessor/MapCreation/ModbusAddressAssigner.csУ сигнала отсутствует ключ DefLabel (signal.ContainsKey вернул false) — нет данных для определения состояний/меток сигнала.
GAProcessorWARNНе заполнено имя канала у {instance.InstanceName} объекта {instance.ObjectTypeName}src/legacy/GAProcessor/MapCreation/ModbusAddressAssigner.csПри назначении адреса у сигнала пустое имя канала (ParName) — назначение адреса для этого сигнала пропускается.
SheetRowData (строка из Excel)
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORПо несуществующему ключу '{key}' произошла попытка создания action '{action.GetType().ToString()}'src/legacy/GAProcessor/ExcelHandler/SheetRowData.csВ AddAction проверка ContainsKey(key) провалилась — попытка привязать action к ключу, которого нет в строке.
GAProcessorWARN[ExtraData] Переменная '{value}' не обновлена для {parentInstanceName}src/legacy/GAProcessor/ExcelHandler/SheetRowData.csПри обновлении строки из родителя переменную не удалось разрешить (TryGetUpdatedValue вернул false) по данным родительской строки.
TVFL-обработчик (Action)
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORОшибка использования Action TVFL: файл '{updatedFilePath}' не содержит лист с именем '{updatedSheetName}'src/legacy/GAProcessor/ExcelHandler/RowDictActionHandlers/TvflActionHandler.csВ найденном файле workbook.GetSheet вернул null — запрошенный TVFL лист отсутствует в книге.
GAProcessorERRORОшибка использования Action TVFL: файла '{updatedFilePath}' не существуетsrc/legacy/GAProcessor/ExcelHandler/RowDictActionHandlers/TvflActionHandler.csFile.Exists для разрешённого пути вернул false — указанный в TVFL Excel-файл не найден.
Библиотека для генерации FBD
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORЗначение для {errorEntityName} должно содержать два значения, разделенных запятой. Текущее значение: {rawValue}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryServices/TwoValueExtractor.csПосле разбора значение разбито запятой не на 2 части (parts.Length != 2); двухзначную модель построить нельзя, возвращается false.
GAProcessorWARNНет библиотечной FBD TemplateUnimod2x для результирующей FBD fbdFileName = {outputs[i]}. Cм. ObjectType = '{model.ObjectTypeName}'src/legacy/GAProcessor/Generators/ModuleFBD/Services/FbdVariableInitializer.csВыходных имён FBD (outputs) больше, чем входных шаблонов (inputs); для лишних результирующих файлов нет соответствующего библиотечного шаблона.
Валидация TagList - Dictionary
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORДля имени '{dictionaryEntry.Name}' найдены расхождения в адресах: Dictionary - {dictionaryEntry.Address}, TagList - {tagListEntry.Address}src/legacy/GAProcessor/Validation/TagListDictionatyComparator/CsvComparator.csЗапись найдена в обоих файлах, но адреса в Dictionary и TagList не совпадают.
GAProcessorERRORИмя '{dictionaryEntry.Name}' из Dictionary не найдено в TagList.src/legacy/GAProcessor/Validation/TagListDictionatyComparator/CsvComparator.csДля записи из Dictionary не нашлась соответствующая по имени запись в TagList (FirstOrDefault вернул null).
GAProcessorERRORНе найден файл TagList или Dictionarysrc/legacy/GAProcessor/Validation/TagListDictionatyComparator/CsvComparator.csВ конструкторе путь к TagList или Dictionary пустой/null — сравнение файлов невозможно.
Генератор POU
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORКоличество сформированных POU = 0src/legacy/GAProcessor/StProgramGen.csСписок pouModels пуст — ни одного POU не сформировано, генерация ST-файлов прерывается.
GAProcessorERRORНе найден закрывающий тег </PROGRAM> в файле.src/legacy/GAProcessor/StProgramGen.csВ строках файла 0_prog.prg не найден закрывающий тег </PROGRAM> (FindIndex == -1); вставить новые ST-строки некуда, обновление прерывается.
GAProcessorERRORНе найдены теги <CHILD_PROGRAM> или </CHILD_PROGRAM> в файле.src/legacy/GAProcessor/StProgramGen.csВ файле 0_prog.prg не найден открывающий или закрывающий тег CHILD_PROGRAM (один из FindIndex == -1); вставка дочерних программ невозможна, обновление прерывается.
GAProcessorERRORОшибка при обновлении файла '{prgFilePath}': {ex.Message}src/legacy/GAProcessor/StProgramGen.csВ catch-блоке InitStProgForProject при записи обновлённого файла 0_prog.prg (File.WriteAllLines) возникло исключение.
GAProcessorERRORОшибка при обновлении файла '{prgFilePath}': {ex.Message}src/legacy/GAProcessor/StProgramGen.csВ catch-блоке InitChildStProgForProject при записи обновлённого файла 0_prog.prg (File.WriteAllLines) возникло исключение.
GAProcessorERRORОшибка при сохранении файла '{fileName}': {ex.Message}src/legacy/GAProcessor/StProgramGen.csВ catch-блоке при создании директории и записи .st файла (File.WriteAllText) возникло исключение.
GAProcessorERRORПроизошла ошибка подготовки ST программы для {updatedInstance.InstanceName}, {e.Message}src/legacy/GAProcessor/StProgramGen.csВ catch-блоке при чтении include-файлов шаблона и подстановке плейсхолдеров возникло исключение (например, файл не читается или нет ключа GroupPou).
GAProcessorERRORФайл '{prgFilePath}' не найден.src/legacy/GAProcessor/StProgramGen.csПроверка File.Exists для файла 0_prog.prg провалилась в InitStProgForProject — файл проекта не найден; обновление прерывается.
GAProcessorERRORФайл '{prgFilePath}' не найден.src/legacy/GAProcessor/StProgramGen.csПроверка File.Exists для файла 0_prog.prg провалилась в InitChildStProgForProject — файл проекта не найден; обновление прерывается.
GAProcessorWARNНе удалось найти свойство {propertyName} у экземпляра {updatedInstance.InstanceName} при использовании {match.Value}src/legacy/GAProcessor/StProgramGen.csВ InstanceData экземпляра нет свойства, указанного в плейсхолдере <getinstancedata PropertyName>; подстановка не выполняется.
Модуль DevStudio
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORНе найден объект UNET Client модуляsrc/legacy/GAProcessor/Generators/ControlObjectPaster.csПарсинг UNET Client модуля вернул null, категории данных записать некуда.
GAProcessorERRORНе найден тип {devObject.DevStudioType} объекта {devObject.DevStudioName}src/legacy/GAProcessor/Generators/ControlObjectPaster.csПо короткому имени DevStudioType не найден тип PLC-объекта в проекте, создать объект нельзя, метод прерывается.
GAProcessorERRORНе найден тип в проекте {existObjectType}, возможно необходимо обновить исходники DevStudiosrc/legacy/GAProcessor/Generators/ControlObjectPaster.csУ существующего объекта base-type не разрешается в TypeInfo (GetTypeInfo вернул null); сравнить типы невозможно, метод прерывается.
GAProcessorERRORНе удалось найти контроллер {plcName} в проекте DevStudio, ничего создано не будет!src/legacy/GAProcessor/Generators/ControlObjectPaster.csВ проекте DevStudio не найден PLC App элемент по короткому имени plcName (PlcAppObject == null), генерация объектов невозможна.
GAProcessorERRORОбъект {devObject.DevStudioName} существует, его текущий тип {oldtype.GlobalName} отличается от нового {type.GlobalName}.src/legacy/GAProcessor/Generators/ControlObjectPaster.csСуществующий объект имеет тип, не совпадающий с требуемым; перезапись типа не выполняется, объект пропускается.
GAProcessorERRORу объекта {devObject.DevStudioName} атрибуты == nullsrc/legacy/GAProcessor/Generators/ControlObjectPaster.csУ существующего объекта коллекция Attributes равна null, добавлять новые атрибуты нечем, объект пропускается.
GAProcessorWARNАтрибут {newAttributeDef["value"]} объекта {devObject.DevStudioName} отсутствует в типе {type.GlobalName}, поэтому не будет добавленsrc/legacy/GAProcessor/Generators/ControlObjectPaster.csТип объекта не содержит атрибута с указанным именем (type.HasAttribute == false), атрибут не добавляется.
Модуль Unimod2
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORКодировка '{appconfig.EncodingForDictionary}' не найдена. Используется кодировка по умолчанию UTF-8.src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csКодировка, заданная в настройках (EncodingForDictionary), отсутствует среди доступных кодировок; файл сохраняется в UTF-8 по умолчанию.
GAProcessorERRORНе найден файл structs.json по пути {GetStructPath()}, возможно стоит проверить общие настройки программыsrc/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csНе удалось загрузить типы объектов из structs.json (StructsObjTypes == null) — файл отсутствует по ожидаемому пути; вероятна проблема в общих настройках.
GAProcessorERRORНе найдено переменной для UNIMOD_DICTIONARY_PATHsrc/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csНе удалось получить путь к выходному файлу глобального словаря по плейсхолдеру [UNIMOD_DICTIONARY_PATH] (GetUnimod2Path вернул false); сохранение прерывается.
GAProcessorERRORНе найдено переменной для UNIMOD_DICTIONARY_PATHsrc/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csВ режиме сохранения одного файла не удалось получить путь по плейсхолдеру [UNIMOD_DICTIONARY_PATH] (GetUnimod2Path вернул false); сохранение прерывается.
GAProcessorERRORНе найдено переменной для UNIMOD_DICTIONARY_PATH2src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csНе удалось получить путь к второму выходному файлу словаря по плейсхолдеру [UNIMOD_DICTIONARY_PATH2] (GetUnimod2Path вернул false); сохранение прерывается.
GAProcessorERRORУ {parName} {array} не является числом, можно попробовать проверить объект {instanceName}src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csПри формировании узла-массива размер массива (array) не парсится в int (int.TryParse вернул false); используется arraySize=0.
GAProcessorERRORНа листе template/UnimodFB для алиаса '{alias}' не указан тип данных в колонке '{TreiFbAttrConst}'. OBJTYPENAME='{objectTypeName}'.src/legacy/GAProcessor/Unimod2/Services/Unimod/TemplatesNodeBuildStrategy.csУ шаблона с найденным alias пустое поле TreiFB (тип данных не задан), запись канала пропускается.
GAProcessorERRORНа листе template/UnimodFB для алиаса '{alias}' не указан тип данных в колонке 'TreiFB'. OBJTYPENAME='{objectTypeName}'.src/legacy/GAProcessor/Unimod2/Services/Unimod/UnimodAliasesTemplateValidator.csНе удалось определить базовый тип шаблона и поле TreiFB пустое (тип данных не задан) для данного alias.
GAProcessorWARNУ StNet MKO {mkoContext} на {sourceName} указано недопустимое значение '{fieldName}'='{rawValue}'. Допустимые значения: {allowedValues}. Значение будет очищено.src/legacy/GAProcessor/Unimod2/Builders/STNetMkoConfigurationBuilder.csПри нормализации поля StNet MKO (Epi/Priority/Timeout_Multiplier/Ping_Interval_EPI_Multiplier) считанное значение не входит в допустимый набор; оно сбрасывается в пустую строку.
GAProcessorWARNНе найден файл arrays.json по пути - {path}src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csПри загрузке модели массивов файл arrays.json не существует по указанному пути (File.Exists вернул false); модель массивов не заполняется.
GAProcessorWARNНе найден файл types.json {_typesPath}src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csПосле загрузки системных типов обработчик системных типов не создан (_systemTypesHandler == null) — файл types.json не найден или не прочитан по указанному пути.
GAProcessorWARNНе найдено objectType в structs.json или типа в types.json с именем {node.Library}, объект {node.InstanceName} structs.json находится в "{_structPath}" types.json находится в "{GetTypesPath()}"src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csТип node.Library не найден ни среди struct_defs в structs.json, ни среди системных типов в types.json (и это не простой словарный тип); узел пропускается.
GAProcessorWARNНе переданы objectTypes, второй файл создаваться не будет.src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csНе задана переменная UNIMOD_DICTIONARY (список objectTypes пуст), поэтому разделение словаря на два файла не выполняется — сохраняется только один файл.
GAProcessorWARNНекорректно считан objectType из structs.json {node.Library}, объект {node.InstanceName}src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csНайденный objectType из structs.json не проходит проверку валидности (objectType.IsValid() == false); узел пропускается.
GAProcessorWARNНужно проверить {node.Alias} {node.InstanceName} {node.Instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csПри обновлении узлов у узла не задана библиотека (node.Library == null); узел нельзя сопоставить с типом, он пропускается.
GAProcessorWARNПроизошла ошибка при обработке arrays.json по пути {path} Ошибка - {ex.Message}src/legacy/GAProcessor/Unimod2/Generators/Unimod2Manager.csВ блоке catch при чтении/десериализации arrays.json произошло исключение (некорректный JSON или ошибка доступа к файлу).
GAProcessorWARNНа листе template/UnimodFB алиас '{duplicateAlias.Alias}' указан {duplicateAlias.Count} раз. Будет использовано первое вхождение. OBJTYPENAME='{objectTypeName}'.src/legacy/GAProcessor/Unimod2/Services/Unimod/ObjectTypeTemplateValidator.csВ шаблонах объекта обнаружен дублирующийся alias (встречается более одного раза) на листе template/UnimodFB; используется только первое вхождение.
GAProcessorWARNВ unimodFB указан алиас '{aliasFromChannel}', но он отсутствует среди разрешённых алиасов (TechObject.UnimodAliases). File='{file}' ObjectType='{objectType}', TemplateName='{templateName}', Tag='{tag}', UnimodFB='{unimodFB}', ParName='{parName}', Разрешённые алиасы:'{string.Join(",", allowedAliases)}'. Каналы с этим алиасом будут пропущены.src/legacy/GAProcessor/Unimod2/Services/Unimod/UnimodAliasesNodeBuildStrategy.csВ колонке unimodFB канала указан alias, которого нет в списке разрешённых алиасов TechObject.UnimodAliases; каналы с таким алиасом пропускаются.
GAProcessorWARNВ TechObject.UnimodAliases указаны алиасы, отсутствующие на листе 'template' файла '{instance.FilePath}'. ObjectType='{instance.ObjectTypeName}', TemplateName='{instance.Template}', UnimodAliases='{string.Join(", ", unimodAliases)}' Отсутствующие алиасы:'{string.Join(", ", missingAliases)}'.src/legacy/GAProcessor/Unimod2/Services/Unimod/UnimodAliasesTemplateValidator.csЧасть алиасов из TechObject.UnimodAliases не найдена среди алиасов на листе template шаблона объекта (рассогласование списка алиасов и шаблона).
GAProcessorWARNДля alias '{alias}' значение Value='{value}' не соответствует базовому типу '{baseTypeFromTemplate}'. Будет использовано значение по умолчанию.src/legacy/GAProcessor/Unimod2/Services/Unimod/UnimodAliasesTemplateValidator.csЗначение Value канала не валидно для базового типа alias (IsInvalidValueForBaseType вернул true); подставляется значение по умолчанию для типа.
GAProcessorWARNДля alias '{kvp.Key}' Type='{channelType}' на листе шаблона не совпадает с TreiFB='{baseTypeFromTemplate}' на листе template/UnimodFB. Будет использован тип '{baseTypeFromTemplate}'.src/legacy/GAProcessor/Unimod2/Services/Unimod/UnimodAliasesTemplateValidator.csТип канала (Type) на листе шаблона не совпадает с базовым типом TreiFB из template/UnimodFB для того же alias; принудительно используется тип из TreiFB.
Модуль Unimod2. Построение MKO
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNВ configuration.json для MKO указан неподдерживаемый тип связи '{entryType}'. Запись будет прочитана как EthernetRes.src/legacy/GAProcessor/Unimod2/Builders/MkoConfigurationBuilder.csПри чтении существующей записи MKO из configuration.json тип связи (поле type) не сопоставлен ни с одним зарегистрированным builder; запись интерпретируется как EthernetRes.
Модуль бэкапа FBD
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORОшибка при выполнении бэкапа: {ex.Message}src/legacy/GAProcessor/Generators/ModuleFBD/Services/BackupService.csВ общем блоке catch перехвачено исключение при копировании содержимого/создании директории бэкапа FBD.
GAProcessorWARNНе удалось удалить старую директорию бэкапа {oldestBackup}: {ex.Message}src/legacy/GAProcessor/Generators/ModuleFBD/Services/BackupService.csПри ротации бэкапов (их больше 10) в блоке catch не удалось удалить самую старую директорию бэкапа.
Модуль генерации EventList
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERROREventList. Превышен лимит {eventListSize} строк. Алармов всего: {alarmRowsCount}. Основной файл: {_eventListPath}. Излишек: {overflowPath}⠀{_counterTarget}src/legacy/GAProcessor/Generators/EventListCreator.csКоличество строк алармов превысило лимит 10000; лишние строки вынесены в отдельный файл EventListOverLimit, об этом сообщается ошибкой.
GAProcessorERRORНе найдена файл {localVarPath} или он пустойsrc/legacy/GAProcessor/Generators/EventListCreator.csФайл локальных переменных по подставленному пути отсутствует или пустой при попытке прочитать его в GetLocalVars.
Модуль генерации FBD
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORChangeVariableTypeSet: Неуданные замены ({failed.Count}) для файла {metadata.PathToFbdJsonFile}, невозможно заменить ObjType (несогласованность входных/выходных каналов): {string.Join("\n", failed.Select(c => $"Переменная {c.Tag}\" не будет иметь ObjType = \"{c.NewObjTypeName}\""))}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csДля части переменных смена ObjType (ChangeVariableType) не прошла — TryReplace вернул false из-за несогласованности входных/выходных каналов.
GAProcessorERRORInsertFbdByTagModel: не найден шаблон FBD-программы для тех.объекта '{childModel.InstanceName}' ObjType = '{childModel.ObjectTypeName}'src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csДля дочернего тех.объекта из правила InsertFbdByTagModel рекурсивная генерация FBD-программы не вернула результат (childPrograms == null); замена помечается как неудачная.
GAProcessorERRORjson файла нет в каталоге с FBD - {_fbdUserOption.PathToLibraryUnimod}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csКаталог с библиотечными FBD (PathToLibraryUnimod) не существует, генерация FBD прерывается.
GAProcessorERRORЗамен FromObjType на ToObjType не произойдет для файла {inputJsonPath}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csЗамена типов объектов в FBD не выполнена — _objTypeReplacer.TryReplace вернул false (несогласованность или отсутствие типов).
GAProcessorERRORКаталог с FBD инвалидныйsrc/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csКаталог проекта Unimod (PathToProjectUnimod) не существует, генерация FBD прерывается.
GAProcessorERRORНет глобальных переменных "Libraries_FBD_Frame" и "Result_FBD_Frame". FBD для Frame-ов сгенерированы не будутsrc/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csНе удалось подставить значения глобальных переменных [Library_FBD_Frame] и/или [Result_FBD_Frame] из данных экземпляра; генерация FBD для Frame-ов прекращается.
GAProcessorERRORНеуспешное удаление нанайденых заменяющих тегов в InsertFbdByTagModelдля тех. объекта '{updatedInstanceModel.InstanceName}': {string.Join(", ", failedDeletions.Select(c => $"'{c.SrcTag}' -> '{c.DstTag}'"))}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csДля не найденных заменяющих тегов не удалось удалить блок со связью (TryToRemoveBlockWithLink вернул false) — блок с битой ссылкой остаётся в FBD.
GAProcessorERRORПроизошла коллизия: один и тот же TAG = '{fBDJson.Name}' записывается в файл FBD = '{metadata.ResultFbdFileName}' По данному TAG не будет создан FBD-блок{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Model/GroupFBD.csВ коллекции Inputs уже есть запись с таким именем TAG (fBDJson.Name) — коллизия имён; повторный блок не создаётся.
GAProcessorERRORВнутряняя ошибка библиотеки TreiLib: {lib} имеет невалидный типsrc/legacy/GAProcessor/Generators/ModuleFBD/Services/BaseObjTypeReplacer.csДля входного канала (InOut == 1) значение Type библиотечного элемента не парсится в int; тип канала некорректен.
GAProcessorERRORВнутряняя ошибка библиотеки TreiLib: {lib} имеет невалидный типsrc/legacy/GAProcessor/Generators/ModuleFBD/Services/BaseObjTypeReplacer.csДля выходного канала (InOut == 2) значение Type библиотечного элемента не парсится в int; тип канала некорректен.
GAProcessorERRORКанал {targetChannelKey} не найден. Проверьте локальный словарь {metadata.PathToLibraryLocalDictionary}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LinkChecker.csЦелевой канал (hasTargetChannel == false) отсутствует среди _channelItems; замену типа выполнить нельзя, проверка возвращает false.
GAProcessorERRORНесовпадение типов каналов: from: {sourceChannelKey}.Type = {_channelItems[sourceChannelKey]} to: {targetChannelKey}.Type = {_channelItems[targetChannelKey]}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LinkChecker.csТипы исходного и целевого каналов в Links различаются; замена ObjType приведёт к несовместимости каналов, проверка возвращает false.
GAProcessorERRORFromObjType "{replacement.Key}" не существует. Замена ObjType "{replacement.Key}" на "{replacement.Value}" не произойдет. См. библиотечный локальный словарь (поле FromObjType): {metadata.PathToLibraryLocalDictionary}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Services/ObjTypeReplacementValidator.csИсходный тип объекта (ключ замены) отсутствует в наборе известных типов _objTypeSet; замена удаляется из словаря.
GAProcessorERRORToObjType "{replacement.Value}" не существует. Замена ObjType "{replacement.Key}" на "{replacement.Value}" не произойдет. См. библиотечный локальный словарь (поле ToObjType): {metadata.PathToLibraryLocalDictionary}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Services/ObjTypeReplacementValidator.csЦелевой тип объекта (значение замены) отсутствует в наборе известных типов _objTypeSet; замена удаляется из словаря.
GAProcessorWARNInsertFbdByTagModel. Тех. объект '{updatedInstanceModel.InstanceName}'. Правила не выполнимы, т.к. заменяющие теги не найдены: {string.Join(", ", unfound.Select(insertFbdByTagModel => $"'{insertFbdByTagModel.DstTag}'"))}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csДля части правил InsertFbdByTagModel не найдены дочерние модели по DstTag (unfound), вставка невозможна; далее выполняется удаление соответствующих блоков.
GAProcessorWARNВ объекте {updatedInstanceModel.InstanceName} добавлена переменная [TechObject.FbdFileName] = {templateUnimod2x}. Но библиотечной PLC нет в директории: {_fbdUserOption.PathToLibraryUnimod}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csФайл prog.json библиотечной PLC по пути inputJsonPath не существует; FBD для данного шаблона не генерируется.
GAProcessorWARNГлобальная переменная {templateUnimod2x} содержит путь к файлу библиотченой FBD. По указанному пути ({inputJsonPath}) не нейден файлsrc/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csФайл prog.json библиотечной FBD по пути из переменной templateUnimod2x не найден; обработка Frame-ов прерывается.
GAProcessorWARNДля библиотечной FBD TemplateUnimod2x = {templateUnimod2x} нет соотвествующей результирующей FBD fbdFileName. Смотри ObjectType = {updatedInstanceModel.ObjectTypeName}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csКоличество входных шаблонов (inputs) превышает количество выходных имён (outputs); для данного входного шаблона нет парного результирующего FBD.
GAProcessorWARNНа момент выполнения обработки названия TechObject.FbdFileName переменная "{match.Value}" не определена. Объект {updatedInstanceModel.InstanceName}, {updatedInstanceModel.ObjectTypeName}. Соответсвующий FBD сгенерирован не будетsrc/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csВ имени FbdFileName есть подстановочная переменная в скобках, которая не подставилась из InstanceData; результирующий FBD не формируется, шаблон пропускается.
GAProcessorWARNНе удалось удалить директорию {dir}: {ex.Message}src/legacy/GAProcessor/Generators/ModuleFBD/FbdGenerator.csВ блоке catch при очистке результирующего каталога не удалось удалить директорию FBD-программы (например, файлы заняты).
GAProcessorWARNНепредвиденная ситуация. Исходный ObjType {sourceObjType} не найден в библиотченом проекте. Проверьте файл проекта, наличие ObjType в SVN, а также локальный словарь {metadata.PathToLibraryLocalDictionary}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LinkChecker.csИсходный ObjType отсутствует в маппинге типов библиотечного проекта при проверке совместимости каналов связи.
GAProcessorWARNНепредвиденная ситуация. Исходный канал {sourceObjType} не найден в библиотченом проекте. Проверьте файл проекта, наличие ObjType в SVN, а также локальный словарь {metadata.PathToLibraryLocalDictionary}{metadata.Info}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LinkChecker.csИсходный канал (targetChannelKey) отсутствует среди известных _channelItems библиотечного проекта (hasSourceChannel == false).
Модуль генерации POU
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORНе найден путь к jsm у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csУ include-модели не задан путь к jsm (FullPath пустой); данный include-элемент пропускается.
GAProcessorERRORНе найдено FB Unimod в OBJTYPE {instance.ObjectTypeName}, TAG {instance.InstanceName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csУ найденного objectTypeNode отсутствуют шаблоны (Templates == null или пустой); FB Unimod не определён.
GAProcessorERRORНе найдено instance {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csСреди objectTypeNodes не найден узел с InstanceName текущего экземпляра (objectTypeNode == null); данные не собираются.
GAProcessorERRORНе найдено template у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csОчередной шаблон в коллекции Templates равен null (template == null); сбор данных прерывается.
GAProcessorERRORНе найдено статусного фрейма у {device.Name}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csУ устройства отсутствует фрейм с именем 'status' (frame == null); данные устройства не собираются, возвращается пустой набор.
GAProcessorERRORДля MKO {mko.DataVarName} не удалось сгенерировать JSM/ST. Ошибка неизвестна, обратитесь к разработчикамsrc/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/MkoStGenerator.csНе создано ни одного ST-фрагмента, при этом ни одна из известных причин пропуска не накопилась (список reasons пуст) — неизвестная ошибка генерации.
GAProcessorERROR{message.Text}src/legacy/GAProcessor/Unimod2/Validation/MkoValidationLogger.csДиспетчер MKO-валидации: severity сообщения равен Error, выводится текст накопленного сообщения валидации MKO. Логгер передаётся вызывающим (MkoStGenerator).
GAProcessorWARNНичего не будет сохранено для входовsrc/legacy/GAProcessor/CodesysModbus/AssignmentStCodeBuilder.csПуть к файлу входов (inputPath) пуст — у первого входа отсутствует OutputFile, поэтому данные входов не записываются.
GAProcessorWARNНичего не будет сохранено для выходовsrc/legacy/GAProcessor/CodesysModbus/AssignmentStCodeBuilder.csПуть к файлу выходов (outputPath) пуст — у первого выхода отсутствует OutputFile, поэтому данные выходов не записываются.
GAProcessorWARNНе удалось найти objectTypeName с tag={tag} causeEffectTag={causeEffect?.CauseEffectTag}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/ConditionsOutputHandler.csУ объекта причинно-следственной связи не определён ObjectTypeName (пустой); формирование условий для данного causeEffect пропускается.
GAProcessorWARNНе удалось проинициализировать conditionStr для {tag}-{objectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/ConditionsOutputHandler.csНе удалось подставить переменные в путь Condition.jsm (TryGetUpdatedValue вернул false); генерация условия для объекта пропускается.
GAProcessorWARNНе удалось проинициализировать forceCondition для {tag}-{objectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/ConditionsOutputHandler.csНе удалось подставить переменные в путь ForceCondition.jsm (TryGetUpdatedValue вернул false); генерация force-условия для объекта пропускается.
GAProcessorWARNНе удалось проинициализировать startCondtion для {tag}-{instanceNodeModel.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/ConditionsOutputHandler.csНе удалось подставить переменные в путь StartCondition.jsm (TryGetUpdatedValue вернул false); генерация стартового условия для объекта пропускается.
GAProcessorWARNНе удалось найти destination.jsm для объекта {tag}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/DestinationsOutputHandler.csНе удалось подставить переменные в путь Destination.jsm (TryGetUpdatedValue вернул false); обработка destination для данного causeEffect пропускается.
GAProcessorWARNНе удалось обработать путь к StartDestination.jsm для объекта {tag}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/DestinationsOutputHandler.csНе удалось подставить переменные в путь StartDestination.jsm (TryGetUpdatedValue вернул false); генерация стартового destination пропускается.
GAProcessorWARNНе удалось обработать {path} или он пустой для {string.Join(";", infoToShow)}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectOutputs/OutputHandler.csСчитанные из jsm данные пусты (string.IsNullOrEmpty(data)) — файл не найден или не дал содержимого; фрагмент не добавляется в результат.
GAProcessorWARNНе заполнен causeEffectTagsrc/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectsDiagGenerator.csУ модели причинно-следственной связи пустой CauseEffectTag; запись считается невалидной и пропускается.
GAProcessorWARNНе заполнен conditionTagsrc/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectsDiagGenerator.csУ модели причинно-следственной связи пустой ConditionTag; запись считается невалидной и пропускается.
GAProcessorWARNНе найден объект с causeEffectTag={model.CauseEffectTag}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectsDiagGenerator.csСреди экземпляров нет объекта с InstanceName, равным CauseEffectTag; запись невалидна и пропускается.
GAProcessorWARNНе найден объект с conditionTag={model.ConditionTag}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/CauseEffectsDiagGenerator.csСреди экземпляров нет объекта с InstanceName, равным ConditionTag; запись невалидна и пропускается.
GAProcessorWARNLoopType не равен LPSM у {lpsm.ModbusName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csЗначение LoopType устройства не равно 'LPSM'; генерация исполнительных механизмов для этого элемента не выполняется.
GAProcessorWARNНе найдено DevsAssignType у device.Name={device.Name}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csВ PouData устройства не задан DevsAssignType (пустое значение); имя выходного файла POU определить нельзя, генерация прерывается (return).
GAProcessorWARNНе найдено template у {instance.InstanceName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csУ экземпляра отсутствует первый шаблон (Templates.FirstOrDefault() == null); элемент пропускается.
GAProcessorWARNНе найдено устройства с ModbusName={lpsm.ModbusName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csСреди устройств не найдено устройство с ModbusName, равным указанному в LPSM (device == null); элемент LPSM пропускается.
GAProcessorWARNНе найдено файла {path}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csФайл по сформированному пути include-модели не существует (File.Exists вернул false); генерация прерывается (return).
GAProcessorWARNНе удалось обработать путь path для {instance.InstanceName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csПосле подстановки переменных путь к include-модели пуст (string.IsNullOrEmpty(path)); генерация прерывается (return).
GAProcessorWARNНе указан LoopTypesrc/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csВ PouData устройства не задано значение LoopType (пустое); элемент LPSM пропускается.
GAProcessorWARNПроблема при обработке {path} для {device.Name}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csСчитанные из jsm данные пусты (string.IsNullOrEmpty(data)); генерация прерывается (return).
GAProcessorWARNУ устройства {device.Name} нет instancesrc/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/ExecutiveMechanismsGenerator.csУ устройства не задан связанный экземпляр (device.Instance == null); генерация прерывается (return).
GAProcessorWARNНе найден файл jsm {pathToJsm} у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csПосле подстановки переменных файл jsm не существует по пути pathToJsm (File.Exists вернул false); элемент пропускается.
GAProcessorWARNОшибка при обработке {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csСгенерированные jsm-данные для очередного элемента пусты (string.IsNullOrEmpty(data)); элемент пропускается.
GAProcessorWARNОшибка при обработке {pathToJsm} у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csСчитанные из jsm данные пусты после парсинга (string.IsNullOrEmpty(jsmData)); элемент пропускается.
GAProcessorWARNОшибка с pouName при обработке {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csИмя POU для очередного элемента пустое (string.IsNullOrEmpty(pouName)); файл не сохраняется, элемент пропускается.
GAProcessorWARNПустой includeModel у {template.Alias}, объекта {instance.InstanceName}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/IODataGenerator.csУ шаблона отсутствует IncludeModel (null или пустой список); сбор данных по этому экземпляру прерывается.
GAProcessorWARNДля MKO {mko.DataVarName} не создано ни одного ST-фрагмента: {string.Join(", ", reasons)}.src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/MkoStGenerator.csДля MKO не сгенерировано ни одного ST-фрагмента; перечисляются накопленные причины пропуска элементов (ошибки arrNum, отсутствие include-моделей, пустой путь/PouName, отсутствующий или пустой jsm).
GAProcessorWARNНе удалось удалить MKO ST raw-файл {filePath}: {ex.Message}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/MkoStGenerator.csВ блоке catch при очистке выходной директории не удалось удалить raw-файл MKO ST (File.Delete бросил исключение, напр. файл занят/нет прав).
GAProcessorWARNНе удалось удалить директорию MKO ST {dir}: {ex.Message}src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/MkoStGenerator.csВ блоке catch при очистке сгенерированных директорий не удалось удалить директорию MKO ST (Directory.Delete бросил исключение).
GAProcessorWARNУ MKO {mko.DataVarName} не заполнены {IgmJsmPathPrefixConst}*/{PouNamePrefixConst}*src/legacy/GAProcessor/Unimod2/Generators/StCodeGenerators/MkoStGenerator.csДля строки MKO не найдено ни одной include-модели (нет заполненных путей IGM.POU/PouName); строка пропускается.
GAProcessorWARN{message.Text}src/legacy/GAProcessor/Unimod2/Validation/MkoValidationLogger.csДиспетчер MKO-валидации: severity сообщения равен Warning, выводится текст предупреждения валидации MKO. Логгер передаётся вызывающим (MkoStGenerator).
Модуль генерации StringList
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORОшибка валидации stringList при записи тех.объекта {updatedInstanceModel.InstanceName} (ObjType = {updatedInstanceModel.ObjectTypeName}) в StringList. Он не попадет в итоговый StringListsrc/legacy/GAProcessor/Generators/WeintekStringList/InstanceRowMapper.csПроверка CheckStringList для тех.объекта не пройдена (невалидный или отсутствующий StringList), объект пропускается.
GAProcessorERRORНекорректный формат в файле подмен {path}. Должно быть 3 колонкиsrc/legacy/GAProcessor/Generators/WeintekStringList/ReplacementReader.csВ заголовке файла подмен число колонок не равно 3 при чтении первой строки.
GAProcessorERRORНекорректный формат в файле подмен {path}. Должно быть 3 колонки: "{Filter} {From} {To}"src/legacy/GAProcessor/Generators/WeintekStringList/ReplacementReader.csЗаголовок файла подмен не соответствует ожидаемым именам колонок Filter/From/To.
GAProcessorERRORНекорректный формат в файле подмен {path}. Должны быть заполнены поля From и Tosrc/legacy/GAProcessor/Generators/WeintekStringList/ReplacementReader.csПри обработке строки данных встречено значение To (колонка 2), но поле From не было заполнено; запись подмены невозможна, чтение прерывается.
GAProcessorERRORНекорректный формат в файле подмен {path}. Должны быть заполнены поля From и Tosrc/legacy/GAProcessor/Generators/WeintekStringList/ReplacementReader.csПосле обработки строки поле From осталось заполненным без парного To; строка подмены неполная.
GAProcessorERRORОшибка в чтении файла {path}src/legacy/GAProcessor/Generators/WeintekStringList/ReplacementReader.csПри парсинге заголовка файла подмен возникло исключение (например, ReadFields бросил ошибку или пустой файл); чтение прерывается с возвратом false.
GAProcessorERRORОшибка в чтении файла {path}src/legacy/GAProcessor/Generators/WeintekStringList/ReplacementReader.csПри чтении очередной строки данных файла подмен возникло исключение; чтение прерывается с возвратом false.
GAProcessorERRORтех объект {model?.InstanceName} (ObjType = {model?.ObjectTypeName}) имеет невалидный StringList. Данные с тех объекта не будут включены в итоговый StringListsrc/legacy/GAProcessor/Generators/WeintekStringList/StringListValidator.csМодель, её StringList, первый элемент или его данные равны null/пусты; объект признаётся невалидным и исключается из итогового StringList.
GAProcessorERRORStringList не прошел проверку. Chapter и/или Row сгенерировались не последовательно. См файлы: StringBase(глоабльный): {templatePath} StringBase(локальный): {weintekStrListChaptersFilePath} WeintekTypes: {weintekTypesPath}src/legacy/GAProcessor/Generators/WeintekStringList/WeintekStringListCreator.csПроверка последовательности номеров Chapter/Row в итоговом StringList выявила нарушение порядка (IsStringListValid), что указывает на некорректные исходные StringBase/WeintekTypes.
GAProcessorERRORWeintekStringListCreator: Не нашли файл шаблона {templatePath}src/legacy/GAProcessor/Generators/WeintekStringList/WeintekStringListCreator.csГлобальная переменная WEINTEK_STRINGLIST_CONST_PATH не задана или файл шаблона по этому пути не существует; генерация StringList прерывается.
GAProcessorWARNВ строке "| {string.Join(" | ", localRow)} |" происходит обращение к строкам из StringBase для поиска {data[ChapterName]}, но этой строки там нет. Необходимо дописать его в StringBase или закомментировать(удалить) данное поле в StringListsrc/legacy/GAProcessor/Generators/WeintekStringList/InstanceRowMapper.csВ StringBase не найдена строка раздела с описанием, равным data[ChapterName], на которую ссылается обрабатываемая строка; ссылка не разрешается.
GAProcessorWARNchapterName не найден для типа {weintekTypeItem.ObjTypeName}src/legacy/GAProcessor/Generators/WeintekStringList/WeintekStringListCreator.csУ элемента WeintekTypes имя раздела chapterName равно null либо подстановка переменных в нём не удалась; в строку записывается несформированное имя раздела.
Модуль генерации TagList
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERROR(логируется исключение)src/legacy/GAProcessor/Generators/TagListCreator.csВ блоке catch при обработке WeintekTypes перехвачено исключение (например, отсутствие ожидаемого ключа при чтении sheetData); логируется сам объект исключения.
GAProcessorERRORНе найден modbus адрес для {instance.InstanceName} - {instance.ObjectTypeName} - {parName}src/legacy/GAProcessor/Generators/TagListCreator.csВ MapModels найденного modbus-маппинга нет узла с именем parName; адрес для канала отсутствует, канал пропускается.
GAProcessorERRORНе найдено экземпляра объекта {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Generators/TagListCreator.csВ ModbusMap нет записи с тегом, равным имени экземпляра; modbus-адреса для каналов не найти, канал пропускается.
GAProcessorERRORОтсутствует переменная {WeintekTypes}src/legacy/GAProcessor/Generators/TagListCreator.csГлобальная переменная [WEINTEK_TYPES] не подставилась (TryGetUpdatedValue вернул false), путь к WeintekTypes неизвестен, метод прерывается.
GAProcessorERRORОтсутствует переменная {constName}src/legacy/GAProcessor/Generators/TagListCreator.csКонстанта-переменная не подставилась (TryGetUpdatedValue вернул false), путь к jsm-файлу неизвестен, возвращается null.
GAProcessorERRORОшибка в колонке mapping. Значение ячейки: "{mapping}" Файл: {path}src/legacy/GAProcessor/Generators/TagListCreator.csКалькулятор адресов не смог определить тип памяти по значению колонки mapping (вернул null), строка типового канала не формируется.
GAProcessorERRORПроизошла ошибка в PrepareData, вероятен пробел в строкеsrc/legacy/GAProcessor/Generators/TagListCreator.csДанные из jsm-файла (WeintekPath) не получены — PrepareDataFromJsmFile вернул null, итоговая строка не формируется.
GAProcessorERRORПроизошла ошибка в WriteTagListToFile, вероятен пробел в строкеsrc/legacy/GAProcessor/Generators/TagListCreator.csPrepareData вернул null (нет константных данных), запись TagList в файл невозможна, метод прерывается.
GAProcessorERRORУ {instance.InstanceName} отсутствует {UpdatedInstanceModel.ModbusTemplateName}src/legacy/GAProcessor/Generators/TagListCreator.csУ экземпляра объекта не задан ModbusTemplate, теги для него сформировать нельзя, возвращается null.
GAProcessorWARNTagList для Weintek не сгенерирован: список тегов {(tagList.Count == 0 ? "пуст" : "не содержит PlcName в первом теге")}. Дополнительные данные и локальные переменные TagList также будут пропущены.src/legacy/GAProcessor/Generators/TagListCreator.csУ первого тега списка отсутствует PlcName (или список тегов пуст), поэтому путь сохранения не определяется и файл не создаётся.
GAProcessorWARNНе найден ключ modbusTemplate. {sb.ToString()}src/legacy/GAProcessor/Generators/TagListCreator.csВ строке листа WeintekTypes отсутствует поле modbusTemplate; строка пропускается, в сообщение выводятся все её пары ключ-значение.
GAProcessorWARNНе найден файл {localVarPath} или он пустойsrc/legacy/GAProcessor/Generators/TagListCreator.csФайл локальных переменных по указанному пути отсутствует или содержит пустые данные; дописывание локальных данных в TagList не выполняется.
GAProcessorWARNНе указан descrDataSrcRus у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Generators/TagListCreator.csУ строки канала отсутствует описание descrDataSrcRus; канал пропускается.
GAProcessorWARNНе указан parName у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Generators/TagListCreator.csУ строки канала отсутствует parName; канал пропускается.
GAProcessorWARNНе указан тип маппирования у {instance.InstanceName} - {instance.ObjectTypeName}src/legacy/GAProcessor/Generators/TagListCreator.csУ строки канала экземпляра отсутствует значение mapping; канал пропускается.
GAProcessorWARNПропуск дополнения TagList: путь не задан — GenerateTagList не выполнился (см. предыдущее предупреждение).src/legacy/GAProcessor/Generators/TagListCreator.cs_plcSavedPath пуст, потому что предыдущий шаг GenerateTagList не создал файл; дополнение данных пропускается, чтобы избежать передачи null в SaveFile.
Модуль генерации Weintek Macros
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNУ типа {type.TypeName} объекта {instance.InstanceName} в {instance.ObjectTypeName} не найден канал {alarmLevelsModel.ChannelName}src/legacy/GAProcessor/Models/TypeOfSignDataModel.csСреди AlarmLevels экземпляра не найдена модель с ChannelName, совпадающим с обрабатываемым каналом уровня сигнализации; TypeOfSign для этого экземпляра пропускается.
Модуль генерации WeintekTypes
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNНе найдено такого типа {group.TypeName} в WeintekTypes ({typesOutputPath})src/legacy/GAProcessor/Generators/WeintekTypesCreator.csТип, рассчитанный по ModbusTemplate, отсутствует в словаре TypesDict менеджера типов, поэтому вес для него не сохраняется.
Модуль поиска файлов FileSearcher
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORОбнаружены файлы {scopeName} с одинаковым именем. Они будут пропущены. Пожалуйста, исправьте совпадения в следующих файлах: {список файлов}src/legacy/GAProcessor/FileSearcher.csПри фильтрации файлов найдены группы с одинаковым именем без расширения (дубликаты) — такие файлы пропускаются.
Модуль чтения библиотечного локального словаря proj.csv
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORheader не содержит колонки "Value" в csv: {path}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csВ заголовке csv отсутствует колонка "Value" (valueColumnId == -1).
GAProcessorERRORheader не содержит колонки "Value" в csv: {path}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csВ заголовке csv отсутствует колонка "Name" (nameColumnId == -1); текст сообщения по ошибке ссылается на "Value".
GAProcessorWARNБиблиотечный локальный словарь proj.csv {path} не существуетsrc/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csФайл локального словаря proj.csv по указанному пути не существует (File.Exists == false); возвращается null.
GAProcessorWARNФайл библиотечного локальный словарь proj.csv не содержит строк: {path}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csПосле чтения заголовка поток сразу закончился (EndOfStream) — строк данных нет; возвращается словарь только с заголовком.
GAProcessorWARNФайл библиотечный локальный словарь proj.csv пустой: {path}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csПоток файла сразу в конце (EndOfStream) — заголовок прочитать нельзя, файл пуст; возвращается пустой словарь.
GAProcessorWARNстрока "{string.Join(";", splitLine)}" имеет больше колонок, чем header этого csv: {path}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csВ строке данных колонок больше, чем в заголовке (columns.Length < splitLine.Length); структура строки не соответствует заголовку.
GAProcessorWARNстрока "{string.Join(";", splitLine)}" имеет меньше колонок, чем header этого csv: {path}src/legacy/GAProcessor/Generators/ModuleFBD/Services/LibraryLocalDictionaryProcessor.csВ строке данных колонок меньше, чем в заголовке (columns.Length > splitLine.Length); структура строки не соответствует заголовку.
Обработка AlphaAlarms
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORПри извлечении данных из AlphaAlarms('{alarmLevelName}'), произошла ошибка {e.GetType()} {e.GetFullMessage()}src/legacy/GAProcessor/Models/AlphaAlarmsHandler.csВ catch-блоке при поиске и десериализации данных AlarmLevel (arr:dsAtt) возникло исключение.
GAProcessorWARNAlphaAlarmsData пустsrc/legacy/GAProcessor/Models/AlphaAlarmsHandler.csAlphaAlarmsData равно null или содержит 0 строк при поиске по Severity; возвращается null.
GAProcessorWARNНе найден канал по имени {alarmLevel} в AlphaAlarms для {instanceName}, parName={parName}src/legacy/GAProcessor/Models/AlphaAlarmsHandler.csВ AlphaAlarmsData нет строки с AlarmLevel, совпадающим с уровнем из канала экземпляра; возвращается null.
GAProcessorWARNНе найдено ключа {arrayKey}, проверьте файл с каналами, который не objectType, там у атрибутов должно быть проставлено {arrayKey}src/legacy/GAProcessor/Models/AlphaAlarmsHandler.csУ найденной строки AlarmLevel в AlphaAlarms отсутствует ключ-массив arr:<arrayName> с атрибутами; возвращается null.
GAProcessorWARNНе найдено файла по пути {_alphaAlarmPath}, проверьте глобальную переменную {AlphaAlarmsVariable}src/legacy/GAProcessor/Models/AlphaAlarmsHandler.csПроверка File.Exists для пути файла AlphaAlarms (из глобальной переменной [ALPHA_ALARMS_PATH]) провалилась — файл не найден; возвращается null.
GAProcessorWARNНе удалось десериализовать данные при обработке AlphaAlarmssrc/legacy/GAProcessor/Models/AlphaAlarmsHandler.csДесериализация JSON атрибутов канала вернула null (GetAttributesFromJson не смог распарсить строку).
GAProcessorWARNНе удалось найти AlarmLevel = '{alarmLevelName}'src/legacy/GAProcessor/Models/AlphaAlarmsHandler.csВ AlphaAlarmsData нет строки с указанным именем AlarmLevel; возвращается false.
GAProcessorWARNНе удалось найти AlarmLevel = '{alarmLevelName}'src/legacy/GAProcessor/Models/AlphaAlarmsHandler.csНайденная строка AlarmLevel не содержит ключ arr:dsAtt с атрибутами; возвращается false.
GAProcessorWARNНе удалось считать файл alphaAlarmssrc/legacy/GAProcessor/Models/AlphaAlarmsHandler.csAlphaAlarmsData равно null — файл AlphaAlarms не был считан при инициализации; проверка данных возвращает false.
GAProcessorWARNПроверьте AlphaAlarms, ключ {arrayKey} не найденsrc/legacy/GAProcessor/Models/AlphaAlarmsHandler.csХотя бы одна строка AlphaAlarmsData не содержит ожидаемый ключ-массив arr:<arrayName>; данные считаются некорректными.
Обработка DataCategory
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORВ объекте {node.Name} задано некорректноное значение DataCategory: {key}src/legacy/GAProcessor/Models/DataCategoryHandler.csДля значения DataCategory из канала узла не удалось найти соответствующую DataCategoryInfo (TryGetDataCategoryInfo вернул false); возвращается пустая DataCategoryInfo.
GAProcessorERRORВ файле AlphaDataCategory отсутствует лист с именем {DefaultAlphaDataCategorySheetName}.src/legacy/GAProcessor/Models/DataCategoryHandler.csПосле неудачного чтения основного листа повторный парсинг резервного листа Default тоже вернул null — лист Default в файле отсутствует.
GAProcessorERRORПараметр AlphaDataCategory имеет некорректное значение {subsystemCategoriesSheetName} на листе PlcOption в файле модели {_parser.PlcOptionsModel.PlcName}src/legacy/GAProcessor/Models/DataCategoryHandler.csПарсинг листа с именем subsystemCategoriesSheetName вернул null — лист с таким именем не найден, делается попытка прочитать лист Default.
GAProcessorERRORПри извлечении данных из DataCategories('{dataCategoryKey}'), произошла ошибка {e.GetType()} {e.GetFullMessage()}src/legacy/GAProcessor/Models/DataCategoryHandler.csВ catch-блоке при разборе/десериализации JSON категории (arr:dcProp) возникло исключение.
GAProcessorERRORФайл {dataCategoriesPath} не существуетsrc/legacy/GAProcessor/Models/DataCategoryHandler.csПроверка File.Exists для пути к файлу DataCategories провалилась — файл по указанному пути отсутствует, инициализация прерывается.
GAProcessorWARNВ файле AlphaDataCategory нет категории '{dataCategoryKey}'src/legacy/GAProcessor/Models/DataCategoryHandler.csВ данных DataCategories не найдена строка с ключом dataCategory равным запрошенному, либо у неё отсутствует поле arr:dcProp; возвращается false.
GAProcessorWARNВ файле модели {_parser.PlcOptionsModel.PlcName} на листе {subsystemCategoriesSheetName} обнаружено несколько категорий с именем {dataCategoryInfo.Name} с различающимися параметрами При генерации будет использована первая категория из спискаsrc/legacy/GAProcessor/Models/DataCategoryHandler.csНайден дубликат категории по имени, но уже добавленная категория не равна текущей (различаются параметры); используется первая, остальные пропускаются.
Обработка unimod, configuration.json
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORОшибка в {jsonObject}, при десериализации:src/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationCUpdater.csВ блоке catch при десериализации JToken устройства в модель типа T возникло исключение; возвращается новый пустой экземпляр.
GAProcessorERRORОшибка при десериализации конфигурации: {ex.Message}src/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationCUpdater.csВ блоке catch при десериализации массива из configuration.json в тип T возникло исключение (некорректная структура/формат JSON).
GAProcessorERRORОшибка при сохранении конфигурации: {ex.Message}src/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationCUpdater.csВ блоке catch при записи обновлённого массива в configuration.json произошло исключение (ошибка сериализации или записи файла).
GAProcessorWARNМассив modbus не найден в файле конфигурации. {path}src/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationCUpdater.csПри чтении данных из configuration.json указанный массив (modbus) отсутствует в JSON; возвращается значение по умолчанию.
GAProcessorWARNМассив modbus не найден в файле конфигурации. {path}src/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationCUpdater.csПри сохранении данных в configuration.json указанный массив (modbus) отсутствует в JSON; сохранение не выполняется.
GAProcessorWARNНе найдено файла по пути {filePath}src/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationCUpdater.csФайл configuration.json не существует по сформированному пути (File.Exists вернул false); JArray не извлекается.
Обработчик InvalidDiag
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORНе удалось извлечь путь ({InvalidDiagParser.ProcessJsmKey}) к JSM из строки: '{line}' Файл:'{inputInvalidDiagPath}'src/legacy/GAProcessor/CodesysModbus/Services/InvalidDiagContentParser.csСтрока содержит маркер ProcessJsmKey, но парсер не смог извлечь из неё путь к JSM (TryExtract вернул false).
GAProcessorERRORПуть к jsm не найден '{jsmPath}' Файл:'{inputInvalidDiagPath}'src/legacy/GAProcessor/CodesysModbus/Services/InvalidDiagProcessor.csПроверка File.Exists для извлечённого из строки пути к JSM провалилась — файл JSM не существует; путь пропускается.
Общий модуль для обновления тех-объектов
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORНе найдена переменная WEINTEK_EventParamssrc/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/InstanceUpdater.csВ JscSettings отсутствует ключ WEINTEK_EventParams (путь к параметрам событий Weintek не получен).
GAProcessorWARNАтрибут {attributeName} не найден в массиве {arrayName} для уровня тревоги {alarmLevel}, объекта {instance.InstanceName}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/InstanceUpdater.csНе удалось обновить значение атрибута (TryGetUpdatedValue вернул false): атрибут отсутствует в массиве AlphaAlarms.
GAProcessorWARNНе удалось найти атрибуты для уровня тревоги {alarmLevel} и массива {arrayName}, объекта {instance.InstanceName}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/InstanceUpdater.csAlphaAlarms.GetAttributesForChannel вернул null: нет атрибутов для данного уровня тревоги и массива.
GAProcessorWARNОшибка при обработке HMI экземпляра '{instance.InstanceName}': {e.Message}src/legacy/GAProcessor/ParserInputData/InstanceModelUpdaters/InstanceUpdater.csВызов метода DevStudio API (GetDevStudioApiMethod) при определении пути DevStudio выбросил исключение.
Отладка парсинга техобъектов
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNParserDebug: ошибка вычисления значения ключа {kvp.Key}src/legacy/GAProcessor/Diagnostics/SheetRowDataInspector.csВ catch при вычислении значения ключа (ResolveWithInstructions) в GetComputedProperties возникло исключение; используется сырое значение.
GAProcessorWARNParserDebug: ошибка вычисления значения ключа {kvp.Key}src/legacy/GAProcessor/Diagnostics/SheetRowDataInspector.csВ catch при доисполнении inline-скрипта значения ключа (ResolveWithInstructions) в GetComputedComparison возникло исключение; используется сырое значение.
Парсинг PLC, ObjType и тех. объектов
МодульУровеньСообщениеОписание причины возникновения
GAProcessorFATALНайдена кириллица ({errorCount} шт.): {fatalErrors}src/legacy/GAProcessor/Validators/ConfigurationValidator.csВ именах экземпляров (InstanceName) обнаружены русские буквы — кириллица в тегах недопустима.
GAProcessorFATALНайдены дубликаты ({errorCount} шт.): {fatalErrors}src/legacy/GAProcessor/Validators/ConfigurationValidator.csВ списках инстансов найдены повторяющиеся InstanceName (группировка по имени дала группы из более чем одного элемента).
GAProcessorFATALРасхождение данных Modbus между ObjType с одинаковым modbusTemplate: {errors}src/legacy/GAProcessor/Validators/ConfigurationValidator.csУ объектов с одинаковым modbusTemplate обнаружены разные наборы/отпечатки Modbus-каналов (distinctGroups > 1), что означает несовместимую конфигурацию Modbus.
GAProcessorERROR(логируется исключение)src/legacy/GAProcessor/ParserHelper.csВнешний catch метода ParseTemplates: при разборе шаблонов из файла возникло исключение; в лог передаётся только объект исключения e.
GAProcessorERRORВ файле {filePath} отсутствует часть листов шаблонов, указанных в переменной {templateVar} Отсутствующие шаблоны: {missingComponentsString} Объекты не будут созданы.src/legacy/GAProcessor/ParserHelper.csЧисло найденных компонентов шаблона меньше указанных в templateVar и частичное отсутствие не допускается; объекты не создаются.
GAProcessorERRORВ файле модели {PlcOptionsModel.PlcName} на листе PlcOptions отсутствует информация о контроллереsrc/legacy/GAProcessor/ParserHelper.csСписок PlcOptions пуст (FirstOrDefault вернул null): на листе PlcOptions нет данных о контроллере.
GAProcessorERRORВо время инициализации HmiGlobalObjects произошла ошибка: {e.GetFullMessage()}src/legacy/GAProcessor/ParserHelper.csCatch при инициализации глобальных HMI-объектов: исключение при чтении omobj-файлов или их добавлении.
GAProcessorERRORНе обнаружен Modbus Diag {ModbusDiagObjectType} среди считанных типов объекта(ObjectType)src/legacy/GAProcessor/ParserHelper.csСреди файлов ObjectType не найден файл ModbusDiag (modbusFile пуст); возвращается пустой список шаблонов.
GAProcessorERRORОтсутствует шаблон {dataSheetName}! путь к файлу == {filePath}src/legacy/GAProcessor/ParserHelper.csПарсинг основного листа ObjectType вернул null (data is null): лист с данными в файле отсутствует.
GAProcessorERRORОшибка инициализации парсераsrc/legacy/GAProcessor/ParserHelper.csОбщий catch метода Init: исключение при инициализации PlcOptions, экземпляров, AlphaAlarms, категорий данных или HMI-объектов.
GAProcessorERRORОшибка при загрузке парсера, {ex.GetFullMessage()}src/legacy/GAProcessor/ParserHelper.csОбщий catch метода Load: исключение во время инициализации внешних модулей или загрузки данных парсером.
GAProcessorERRORОшибка при разборе PlcOptions: {e.Message}src/legacy/GAProcessor/ParserHelper.csCatch при создании PlcOptionsModel: исключение при парсинге значений (startIndex, адреса, JSM-файл и т.п.).
GAProcessorERRORНе удалось прочитать объекты по пути {valuePath} для {iObjKey} у {instance.InstanceName}, проверьте {instance.SheetName}src/legacy/GAProcessor/ParserInputData/Loaders/BaseInstanceNodeModelLoader.csПри создании workbook и парсинге вложенных IObj-экземпляров по пути возникло исключение (catch без фильтра).
GAProcessorERRORОшибка загрузки DsModbusDevices: {ex.GetFullMessage()}src/legacy/GAProcessor/ParserInputData/Loaders/DSModbusDevicesLoader.csОбщий catch метода Load: исключение при очистке/поиске/парсинге DsModbusDevices.
GAProcessorERRORОшибка при парсинге DsModbusDevices файла: {path}src/legacy/GAProcessor/ParserInputData/Loaders/DSModbusDevicesLoader.csПарсинг workbook (ParseInstancesFromWorkbook) выбросил исключение для конкретного файла.
GAProcessorERRORВ названии листа '{sheetName}' ПЛК {path} указан неподдерживаемый тип связи MKO. Поддерживаемые типы связи: {_supportedMkoConnectionTypes}.src/legacy/GAProcessor/ParserInputData/Loaders/MkoObjectsLoader.csИмя листа MKO не содержит распознаваемого типа связи (TryGetConnectionTypeFromSheetName вернул false); лист пропускается.
GAProcessorERRORОшибка загрузки MKO-объектов: {ex.GetFullMessage()}src/legacy/GAProcessor/ParserInputData/Loaders/MkoObjectsLoader.csОбщий catch метода Load: исключение при очистке/получении пути/парсинге MKO-объектов.
GAProcessorERRORОшибка при парсинге MKO файла: {path}src/legacy/GAProcessor/ParserInputData/Loaders/MkoObjectsLoader.csПарсинг workbook MKO (ParseInstancesFromWorkbook/обработка листов) выбросил исключение.
GAProcessorERRORНе найден лист PouVars в {filePath}src/legacy/GAProcessor/ParserInputData/Loaders/ModbusDevicesLoader.csПри создании workbook или парсинге листов VAR. возникло исключение; данные POU не получены.
GAProcessorERRORОшибка загрузки NetSwitch инстансов: {ex.GetFullMessage()}src/legacy/GAProcessor/ParserInputData/Loaders/NetSwitchesLoader.csОбщий catch метода Load: исключение при очистке/поиске/парсинге NetSwitches.
GAProcessorERRORОшибка при парсинге NetSwitch файла: {path}src/legacy/GAProcessor/ParserInputData/Loaders/NetSwitchesLoader.csПарсинг workbook (ParseInstancesFromWorkbook) выбросил исключение для конкретного файла NetSwitches.
GAProcessorERROR{dub.Key} дублируется {dub.Count()} раз(а)!!!!: {fullPath}src/legacy/GAProcessor/ParserInputData/Loaders/ObjectTypeFilesLoader.csСреди файлов ObjectType обнаружены дубликаты с одинаковым именем (без расширения); логируется список их полных путей.
GAProcessorERRORВ объекте {instance.InstanceName} на листе {instance.SheetName} задано некорректное значение поля localObject: {isLocal}.src/legacy/GAProcessor/ParserInputData/Loaders/ObjectTypesLoader.csПоле localObject имеет значение, отличное от пустого и от 'x' (недопустимое значение флага локального объекта).
GAProcessorERRORДля объекта {instance.InstanceName} на листе {instance.SheetName} задан поиск файла с OBJTYPENAME: {instance.ObjectType} в локальной папке ObjType. Файл не найден.src/legacy/GAProcessor/ParserInputData/Loaders/ObjectTypesLoader.csПоле localObject == 'x', но в локальных файлах ObjectType отсутствует файл для запрошенного типа объекта.
GAProcessorERRORНе найден файл для ObjectType: {instance.ObjectType}, тег {instance.InstanceName} на листе {instance.SheetName}.src/legacy/GAProcessor/ParserInputData/Loaders/ObjectTypesLoader.csПоле localObject пустое, но в глобальных файлах ObjectType отсутствует файл для запрошенного типа объекта.
GAProcessorWARNPlcOptions найден, но не содержит ключевых полей '{Constants.SheetRowDataConstants.PlcNameKey}' или 'opt.startIndex'. Пропускаем инициализацию.src/legacy/GAProcessor/ParserHelper.csПервая строка PlcOptions не содержит обязательных ключей PlcName или opt.startIndex; инициализация PlcOptionsModel пропускается.
GAProcessorWARNВ локальных переменных не задана {DataCategoriesPathVariable}src/legacy/GAProcessor/ParserHelper.csПеременная пути к категориям данных не разрешилась (GetUpdatedValue вернул саму переменную); чтение категорий прерывается.
GAProcessorWARNВ файле {filePath} отсутствует часть листов шаблонов, указанных в переменной {templateVar} Отсутствующие шаблоны: {missingComponentsString}src/legacy/GAProcessor/ParserHelper.csЧисло найденных компонентов шаблона меньше указанных в templateVar, но допускается частичное отсутствие (allowMissingComponents == true).
GAProcessorWARNВ файле модели {PlcOptionsModel.PlcName} на листе PlcOptions отсутствует параметр AlphaDataCategory, будет применено значение из листа Defaultsrc/legacy/GAProcessor/ParserHelper.csВ первой строке PlcOptions нет ключа AlphaDataCategory; категории данных инициализируются листом Default.
GAProcessorWARNЛист {templateSheetName} из {file} пустой. Строка из PLC вызвавшее предупреждение: '{string.Join(' ', data.SelectMany(n => n))}'src/legacy/GAProcessor/ParserHelper.csПарсинг листа шаблонов вернул 0 строк (sheetData.Count == 0): лист существует, но пуст.
GAProcessorWARNНа листе {dataSheetName} в файле {filePath} не задана переменная {templateVar} Объекты не будут созданы.src/legacy/GAProcessor/ParserHelper.csВ первой строке данных отсутствует переменная со списком компонентов шаблона (templateVar); foundItems делается пустым.
GAProcessorWARNОбнаружено дублирование листа {sheet.SheetName} в файле {workbook.FileName}src/legacy/GAProcessor/ParserHelper.csПри парсинге HMI (ParseHmi) модель с таким ViewName уже добавлена (TryAdd вернул false): дублирование листа HMI.
GAProcessorWARNОбнаружено дублирование листа {sheet.SheetName} в файле {workbook.FileName}src/legacy/GAProcessor/ParserHelper.csПри парсинге Stabur HMI (ParseStaburHmi) модель с таким именем уже добавлена (TryAdd вернул false): дублирование листа HMIS.
GAProcessorWARNПопытка добавления уже существующей модели {newModel.ModbusName}src/legacy/GAProcessor/ParserHelper.csМодель Modbus с такими же сетевыми настройками уже присутствует в списке (IsSameNetSettings), повторное добавление отклонено.
GAProcessorWARNШаблон {dataSheetName} пустой! Путь к objType: {filePath}src/legacy/GAProcessor/ParserHelper.csОсновной лист ObjectType распарсен, но содержит 0 строк (data.Count == 0).
GAProcessorWARNНе найдено ни одного файла DsModbusDevices для загрузки.src/legacy/GAProcessor/ParserInputData/Loaders/DSModbusDevicesLoader.csПоиск excel-файлов в каталоге MbPlcs вернул пустой список или null.
GAProcessorWARNФайл DsModbusDevices не найден: {path}src/legacy/GAProcessor/ParserInputData/Loaders/DSModbusDevicesLoader.csФайл по указанному пути не существует (File.Exists вернул false).
GAProcessorWARNPLC-файл для загрузки MKO-объектов не найден: {currentPlcPath}src/legacy/GAProcessor/ParserInputData/Loaders/MkoObjectsLoader.csФайл PLC по указанному пути не существует (File.Exists вернул false).
GAProcessorWARNНе задан текущий PLC-файл для загрузки MKO-объектов.src/legacy/GAProcessor/ParserInputData/Loaders/MkoObjectsLoader.csПуть к текущему PLC-файлу пуст или равен null (_parserHelper.Plc.FullName не задан).
GAProcessorWARNНе получилось обработать автофреймы для {framesDataFromScript} в устройстве {device.Name}src/legacy/GAProcessor/ParserInputData/Loaders/ModbusDevicesLoader.csДесериализация JSON автофреймов из скрипта (scriptFrames) выбросила исключение.
GAProcessorWARNОбработка Modbus Devs (Объект "{device.Tag}") Не удалось определить путь к кадрам. проверьте INC у {device.Name}src/legacy/GAProcessor/ParserInputData/Loaders/ModbusDevicesLoader.csПуть к файлу кадров устройства пуст или файл не существует (device.Path пустой либо File.Exists == false).
GAProcessorWARNНе найдено ни одного файла NetSwitches для загрузки.src/legacy/GAProcessor/ParserInputData/Loaders/NetSwitchesLoader.csПоиск excel-файлов в каталоге NetSwitches вернул пустой список или null.
GAProcessorWARNФайл NetSwitches не найден: {path}src/legacy/GAProcessor/ParserInputData/Loaders/NetSwitchesLoader.csФайл по указанному пути не существует (File.Exists вернул false).
GAProcessorWARNНе удалось получить weintekTypes, проверьте {_parserHelper.PlcOptionsModel.WeintekTypesPath}(имя листа в excel WeintekTypes) или [WEINTEK_TYPES]src/legacy/GAProcessor/ParserInputData/Loaders/ObjectTypesLoader.csПарсинг листа WeintekTypes вернул null: лист с указанным именем не найден или путь некорректен.
GAProcessorWARNНе удалось получить путь к WeintekTypessrc/legacy/GAProcessor/ParserInputData/Loaders/ObjectTypesLoader.csPlcOptionsModel равен null, путь WeintekTypesPath пуст или переменная [WEINTEK_TYPES] не разрешилась.
GAProcessorWARNПустое поле объекта {item.GroupInitializer}src/legacy/GAProcessor/Validators/ConfigurationValidator.csУ элемента списка InstanceName пустой или null — у объекта отсутствует обязательное имя экземпляра.
GAProcessorWARNСписок {instanceList.GetType()} не сформирован.src/legacy/GAProcessor/Validators/ConfigurationValidator.csПри проверке пустых инстансов один из переданных списков имеет Count == 0 — список инстансов не заполнен.
GAProcessorWARNСписок {instanceList.GetType()} не сформирован.src/legacy/GAProcessor/Validators/ConfigurationValidator.csПри проверке дубликатов один из списков инстансов имеет Count == 0 — список не сформирован, проверка пропускается.
Парсинг данных
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNВ Parser пришел workbook == nullsrc/legacy/GAProcessor/BaseParser.csВ метод ParseWithPrefix передан null вместо книги Excel; возвращается пустой SheetModelData.
GAProcessorWARNВ Parser пришел workbook == nullsrc/legacy/GAProcessor/BaseParser.csВ метод ParseWithPrefixGrouped передан null вместо книги Excel; возвращается пустой результат.
GAProcessorWARNНе найден лист с именем {sheetName} по пути {path}src/legacy/GAProcessor/BaseParser.csParseSheet вернул null: лист с указанным именем в книге отсутствует.
GAProcessorWARNПроизошла проблема при создании workbook с {path}src/legacy/GAProcessor/BaseParser.csCreateWorkbook вернул null: не удалось открыть/создать книгу Excel по указанному пути.
Парсинг строк PLC-подобных файлов
МодульУровеньСообщениеОписание причины возникновения
GAProcessorERRORНе удалось прочитать объекты по пути {valuePath} для {iObjKey} у {instance.InstanceName}, проверьте {instance.SheetName}src/legacy/GAProcessor/ParserInputData/InstanceParser/BaseInstanceParser.csПри разборе вложенных IObj-экземпляров по пути из ячейки возникло исключение (catch без фильтра).
Парсинг техобъектов
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNПри работе с iobj не удалось обновить {value}, InstanceName={InstanceName}, Имя листа = {SheetName}, родительский объект - {parentInstanceName}src/legacy/GAProcessor/Models/InstanceNodeModel.csДля строкового свойства-переменной не удалось получить обновлённое значение (TryGetUpdatedValue вернул false) из данных родительского объекта; свойство остаётся без обновления.
GAProcessorWARNПри работе с iobj не удалось обновить {value}, InstanceName={InstanceName}, Имя листа = {SheetName}, родительский объект - {parentInstanceName}src/legacy/GAProcessor/Models/InstanceNodeModel.csПри обновлении значений словаря Data переменная не была разрешена (TryGetUpdatedValue вернул false) по данным родительского объекта; запись словаря остаётся без обновления.
Сохранение конфигурационного файла Unimod2
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNУстройства не будут сохранены, видимо при их обработке произошла ошибкаsrc/legacy/GAProcessor/Unimod2/Generators/Unimod2ConfigurationSavor.csСписок устройств для сохранения равен null (devicesToSave is null) — вероятно, обработка устройств завершилась ошибкой; сохранение пропускается.
Формирование modbus устройств
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNНе найден столбец TAG, проверьте лист со шлейфамиsrc/legacy/GAProcessor/Unimod2/Models/ModbusDevsModel.csУ строки датчика отсутствует значение в столбце TAG (пустой sensorTag); обработка датчиков прерывается.
GAProcessorWARNНе найдена переменная {FrameModel.MaxRequestVariable}src/legacy/GAProcessor/Unimod2/Models/ModbusDevsModel.csНе удалось получить значение переменной максимального размера запроса (TryGetUpdatedValue вернул false); добавление фреймов прерывается.
GAProcessorWARNНекорректное значение переменной {FrameModel.MaxRequestVariable} - {maxRequestSizeStr}src/legacy/GAProcessor/Unimod2/Models/ModbusDevsModel.csЗначение переменной максимального размера запроса не парсится в int (int.TryParse вернул false); добавление фреймов прерывается.
GAProcessorWARNПри обработке датчиков не удалось найти instance с Tag={sensorTag}, смотреть-> LPSM./LPSK.src/legacy/GAProcessor/Unimod2/Models/ModbusDevsModel.csСреди экземпляров не найден instance с InstanceName, равным TAG датчика; данный датчик пропускается.
GAProcessorWARNУ устройства {device.ModbusName} одинаковые Ip и IpRessrc/legacy/GAProcessor/Unimod2/Models/ModbusDevsModel.csУ устройства основной и резервный IP совпадают (IsTheSameIpAndIpRes); резервный IP очищается.
Формирование входов/выходов
МодульУровеньСообщениеОписание причины возникновения
GAProcessorWARNВ канале плк не содержится ключа {ChannelMappingKey}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csВ канале ПЛК отсутствует ключ mapping; определить соответствие mapping невозможно, возвращается false.
GAProcessorWARNИмя jsm не заполнено для фрейма {frame.Name}, проверьте ReadJsm/WriteJsm для {mapping.Key}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csИмя JSM (ReadJsm/WriteJsm в зависимости от направления фрейма) пусто в данных mapping; JSM-файл найти нельзя, возвращается false.
GAProcessorWARNНе найдено файла по пути {jsmPath}, проверьте данные для {mapping.Key}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csПроверка File.Exists для собранного пути к JSM-файлу провалилась — файл не существует; возвращается false.
GAProcessorWARNНе удалось в объекте найти канал {map.ObjectTypeNodeName}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csСреди ObjectTypeInstance экземпляра нет канала с parName, совпадающим с map.ObjectTypeNodeName; plcChannel остаётся null, возвращается false.
GAProcessorWARNНе удалось найти объект с тегом карты = {map.InstanceName}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csСреди _instances нет экземпляра с InstanceName, равным имени из карты (map.InstanceName); канал ПЛК найти нельзя, возвращается false.
GAProcessorWARNНе удалось найти соответствие между плк каналом и данными из mapping файла по ключу {ChannelMappingKey}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csДля канала ПЛК не найдено соответствующее отображение в mapping-файле (TryFindMapping вернул false либо mapping == null); канал пропускается.
GAProcessorWARNПуть к jsm не заполнен, проверьте JsmPath для {mapping.Key}src/legacy/GAProcessor/CodesysModbus/Assignment/AssignInputOutputGenerator.csКаталог JSM (JsmPath) не заполнен в данных mapping; путь к файлу JSM построить нельзя, возвращается false.
HMI.Core.Extensions.TemplateFileHandler
МодульУровеньСообщениеОписание причины возникновения
HMIERRORНе найден применяемый базовый шаблон{e.Message}src/modules/HMI/HMI.Core/Extensions/TemplateFileHandler.csБазовый применяемый шаблон не найден: показывается критическое сообщение, пишется ошибка и пробрасывается исключение.
MnemonicsFileHandler
МодульУровеньСообщениеОписание причины возникновения
HMIERRORОшибка обработки {path}src/modules/HMI/HMI.WPF/Extensions/MnemonicsFileHandler.csИсключение в catch при обработке файла мнемосхемы по пути path; метод возвращает null.
Модуль дерево иконок
МодульУровеньСообщениеОписание причины возникновения
HMIERRORДублирующийся объект с именем: {y.Key} {string.Join(Environment.NewLine, y.Select(s => s.IosPath))}src/modules/HMI/HMI.WPF/UserTagTree/ViewModel/UserTagTreeViewModel.csПри группировке объектов с SystemTag по имени обнаружена группа с более чем одним элементом (y.Count() > 1): дублирующиеся имена объектов.
HMIERRORНе удалось сохранить файл: {ex.Message}src/modules/HMI/HMI.WPF/UserTagTree/ViewModel/UserTagTreeViewModel.csИсключение в catch при попытке сохранить файл дерева иконок.
HMIERRORНе удалось сохранить файл: {ex.Message}src/modules/HMI/HMI.WPF/UserTagTree/ViewModel/UserTagTreeViewModel.csИсключение в другом catch-блоке при сохранении файла дерева иконок.
HMIERRORОшибка десериализации: {ex.Message}src/modules/HMI/HMI.WPF/UserTagTree/ViewModel/UserTagTreeViewModel.csJsonException в catch при десериализации содержимого файла дерева иконок.
HMIERRORФайл не найден: {filePath}src/modules/HMI/HMI.WPF/UserTagTree/ViewModel/UserTagTreeViewModel.csВетка else: указанный файл по пути filePath не существует, загрузка дерева не выполнена.
Модуль дерево иконок автозаполнение
МодульУровеньСообщениеОписание причины возникновения
HMIWARNМнемосхема "{item.SelectedMnemonic?.Name}" сохраненаsrc/modules/HMI/HMI.WPF/UserTagTree/ViewModel/AutoFillViewModel.csВ SaveDefaultSelectedMnemonics для элемента с непустой SelectedMnemonic фиксируется сохранение мнемосхемы (информационное событие, записанное уровнем Warn).
HMIWARNНайден дубликат {mnemo.Name}src/modules/HMI/HMI.WPF/UserTagTree/ViewModel/AutoFillViewModel.csНайдена другая мнемосхема с тем же максимальным уровнем вложенности и другим Uuid: обнаружен дубликат на одном уровне.
HMIWARNНе удалось применитьsrc/modules/HMI/HMI.WPF/UserTagTree/ViewModel/AutoFillViewModel.csПосле вызова GetDeepestMnemonic выбранная мнемосхема равна null (item.SelectedMnemonic == null): применить элемент не удалось.
HMIWARNОбновлен список доступных мнемосхем: {result.Count} элементовsrc/modules/HMI/HMI.WPF/UserTagTree/ViewModel/AutoFillViewModel.csВ UpdateAvailableList после пересборки списка доступных мнемосхем фиксируется его обновление (информационное событие, записанное уровнем Warn).
DJ.Helper.NLogViewerHelper
МодульУровеньСообщениеОписание причины возникновения
NLogViewerERRORОшибка открытия отфильтрованного лога в Excel: {e.GetFullMessage()}src/legacy/NLogViewer/Helper/NLogViewerHelper.csИсключение в catch при попытке открыть отфильтрованные логи в Excel.
NLogViewerERRORПри открытии лога произошла ошибкаsrc/legacy/NLogViewer/Helper/NLogViewerHelper.csИсключение в catch при попытке открыть файл лога; в лог пишется само исключение e вместе с сообщением.
PLC.Models.WorkspaceModel
МодульУровеньСообщениеОписание причины возникновения
PLCFATAL(логируется исключение)src/legacy/PLC/Models/WorkspaceModel.csВ блоке finally при попытке открыть лог-файл (Process.Start) выброшено исключение; логируется как фатальное.
PLCERROR(логируется исключение)src/legacy/PLC/Models/WorkspaceModel.csОбщий catch (Exception) в методе Build: логируется само необработанное исключение, после чего оно пробрасывается дальше.
PLCERRORJSC не валидировалосьsrc/legacy/PLC/Models/WorkspaceModel.csНе удалось подставить переменные в шаблон пути результатов PLC (TryGetUpdatedValue вернул false); сборка прерывается.
PLCERRORНе сгенерировались дополнительные данные для Unimod2. Генерация FBD не произойдетsrc/legacy/PLC/Models/WorkspaceModel.csВ GenerateFbd структуры объектных типов Unimod2 (StructsObjTypes или struct_defs) равны null; генерация FBD пропускается.
PLCERRORНе существует проекта в unimod {path}src/legacy/PLC/Models/WorkspaceModel.csВ GenerateForUnimod2 каталог проекта Unimod по полученному пути не существует; генерация Unimod2 прерывается.
PLCERRORОтсутствует переменная {pathTemplate}src/legacy/PLC/Models/WorkspaceModel.csДля генерации Weintek не удалось разрешить переменную пути к types.csv (TryGetUpdatedValue вернул false); генерация прерывается.
PLCERRORОшибка поиска файла: {e.Message}src/legacy/PLC/Models/WorkspaceModel.csПоймано IOException вида FileNotFoundException/DirectoryNotFoundException в процессе сборки; нужный файл или каталог не найден.
PLCERRORОшибка. Файл используется другим процессом или доступ к нему запрещён: {e.Message}src/legacy/PLC/Models/WorkspaceModel.csПоймано IOException в процессе сборки; файл занят другим процессом или доступ к нему запрещён.
PLCERRORПроцесс сборки прерван: ошибка валидации исходных данных. Исправьте опечатки и следы копипасты, а затем попробуйте снова. Удачной сборки! 🚀src/legacy/PLC/Models/WorkspaceModel.csParser.ValidateInitializedConfiguration вернул true (есть ошибки валидации исходных данных); сборка прерывается.
PLCWARNГенерация Alpha не прошла проверку и будет выключенаsrc/legacy/PLC/Models/WorkspaceModel.csВ InitAxml конфиг равен null либо в нём не выбран SelectedSolution; генерация под платформу Alpha отключается.
Unimod
МодульУровеньСообщениеОписание причины возникновения
SharedGAPresentationERRORНе удалось скопировать содержимое файла prog.csv в буфер обмена: {ex.Message}src/legacy/SharedGAPresentation/ViewModels/ImportAndBackup/ImportBackupViewModelBase.csИсключение в catch при копировании содержимого файла prog.csv в буфер обмена.
SharedGAPresentationERRORОшибка команды {commandName} в {GetType().Name}.src/legacy/SharedGAPresentation/ViewModels/ImportAndBackup/ImportBackupViewModelBase.csВ обработчике ThrownExceptions реактивной команды: выполнение команды commandName завершилось исключением.
SharedGAPresentationERRORФайл локального словаря не найден в директории: {directoryPath}src/legacy/SharedGAPresentation/ViewModels/ImportAndBackup/ImportBackupViewModelBase.csПроверка File.Exists(csvPath) провалилась: файл локального словаря (prog.csv) отсутствует в директории; метод прерывается.
AutomiqAutomationWARNДиректория не найдена и будет создана: {PathToBackup}src/legacy/AutomiqAutomation/Modules/ProjectConfigurator/ViewModels/Unimod/UnimodConfigurationViewModel.csВ методе Import директория бэкапа (PathToBackup) отсутствует, поэтому она будет создана перед бэкапом конфигурации.
Модуль менеджера файловых менеджеров
МодульУровеньСообщениеОписание причины возникновения
SharedGAPresentationERRORОшибка при добавлении вкладки в Total Commander: {e.Message}src/legacy/SharedGAPresentation/ViewModels/FileManager/ExplorerManager.csИсключение в catch при попытке добавить новую вкладку в Total Commander.
SharedGAPresentationERRORОшибка проводника. Это точно файловый менеджер? {e.Message}src/legacy/SharedGAPresentation/ViewModels/FileManager/ExplorerManager.csОбщее исключение при попытке открыть выбранный файловый менеджер (возможно, выбран не файловый менеджер); откат к explorer.
SharedGAPresentationERRORОшибка проводника: {e.Message}src/legacy/SharedGAPresentation/ViewModels/FileManager/ExplorerManager.csInvalidOperationException при работе с проводником/файловым менеджером; выполняется откат к стандартному explorer и повторное открытие.
Отчёт сформирован автоматически из исходного кода. Уровни Warn / Error / Fatal.