После установки пакета не добавляет раздел в Рабочее место
После установки пакета не добавляет раздел в Рабочее место.
Установил пакет на 15.2, попытался добавить раздел в рабочее место - раздел не добавился, но выбило эту ошибку:
Начал настраивать отладку серверного кода, несколько раз скомпилировал все и ошибка пропала сама собой.
Потом это пакет поставил на 15.3 и ошибка повторилась, полная компиляция не помогла. Кто сталкивался с таким? Если вручную добавить запись в SysModuleInWorkplace - раздел появляется на месте и работает, в чем может быть проблема?
Нравится
Добрый день. Вы добавляете раздел в рабочее место через данные?
Чубко Илья,
Я написал insert запрос в SQL. Оно успешно добавляется. Я спрашиваю у людей, почему вручную добавление работает нормально, а через рабочее место выбивает ошибку!?
Радчук Виталий Владимирович,
попробуйте и добавление раздела выполнить через привязку данных к пакету, предварительно привязав сопутствующие данные:
SysWorkplace - Рабочее место пользователя
SysModuleInWorkplace - Раздел в рабочем месте
Вадим Косарев,
При таком варианте раздел появляется в рабочих местах после установки пакта, но через рабочее место - не хочет...
Судя по стеку, в функции sectionRepository.Get(sectionId) при получении информации по разделу возвращает пустое значение, когда при помощи .First(s => s.Id.Equals(sectionId)) к нему обращаются, происходит ошибка.
Значит, что-то не так с Вашим разделом, его регистрацией.
Если система развёрнута локально, можно в SQL-профайлере посмотреть, какой запрос с с получением списка разделов идёт в базу непосредственно перед ошибкой и возвращает среди результатов ни одного с GUID этого раздела. Сам запрос такой:
protected Select GetSectionsSelect() { Select sectionSchemaSelect = GetClientUnitSchemaNameSelect("sm", "SectionSchemaUId"); Select sectionModuleSchemaSelect = GetClientUnitSchemaNameSelect("sm", "SectionModuleSchemaUId"); var select = new Select(UserConnection) .Column("sm", "Id") .Column("sm", "Caption") .Column("sm", "Type") .Column("sm", "Code") .Column("sm", "Attribute") .Column("sm", "SysModuleEntityId") .Column("smv", "VisaSchemaUId") .Column(sectionSchemaSelect).As("SectionSchema") .Column(sectionModuleSchemaSelect).As("SectionModuleSchema") .Column("sme", "SysEntitySchemaUId").As("EntityUId") .Column("sme", "TypeColumnUId").As("TypeColumnUId") .From("SysModule").As("sm") .InnerJoin("SysModuleEntity").As("sme") .On("sme", "Id").IsEqual("sm", "SysModuleEntityId") .LeftOuterJoin("SysModuleVisa").As("smv") .On("sm", "SysModuleVisaId").IsEqual("smv", "Id") as Select; return select; }