БСП 3.1 Не обновляются идентификаторы метаданных новых подсистем из расширения конфигурации
Конфигурация ЗУП 3.1.
Версия БСП 3.1.10.248
В конфигурацию было добавлено (скорее всего недавно; не я делал) нетиповое расширение конфигурации!
После этого перестал работать вход в раздел отчётов (подсистема "Зарплата"; сразу уточню - в подключённом расширении отчётов нет).
Выдаётся такая ошибка
Тут самое важное это "Для объекта метаданных "Подсистема.Кадры.Подсистема.МедО_Медосмотры"
не существует идентификатор в регистре сведений "Идентификаторы объектов версий расширений"."
Подсистема "Подсистема.Кадры" заимствована из типовой конфигурации ЗУП 3.1
Собственно - так оно и есть - в регистре сведений "Идентификаторы объектов версий расширений" нет данного идентификатора подсистемы (хотя для других метаданных расширения - идентификаторы есть - что уже странно!), и в справочниках "Идентификаторы объектов метаданных" и "Идентификаторы объектов расширений" тоже нет.
ВАЖНАЯ! Поправка: В справочнике "" нашёл элемент "? Подсистема.МедО_Медосмотры", помеченный на удаление (и И нашёл запись в регистре сведений Идентификаторы объектов версий расширений" с данным элементом, и ссылка на расширение, тоже помеченной на удаление - видно только в форме списка).
Но снять пометку вручную не даёт! А полные права есть!
Ну что я делаю - естественно, следую данному совету и запускаю внешнюю обработку
E:\1C\V83\tmplts\1C\SSL\3_1_2_264\ExtFiles\Инструменты разработчика\ОбновлениеВспомогательныхДанных.epf
И обновляю "Базовая функциональность" (или в расшир. режиме: "Идентификаторы объектов метаданных", "Идентификаторы объектов расширений", "Кэш программных интерфейсов").
И.... ничего не меняется (после второго запуска - говорит, что обновлять нечего!)
А ошибка остаётся и идентификатор подсистемы не появляется!
Ну... ладно - пробую второй вариант - запуск с ключом "/С ЗапуститьОбновлениеИнформационнойБазы" (странно - почему-то явно запустить не удалось - запустил из конфигуратора через настройку "Параметр запуска: ЗапуститьОбновлениеИнформационнойБазы"). Процесс прошёл... а ситуация так и не решилась!
В чем дело - не пойму! Пытался поковырять механизм обновления идентификаторов - вообще не нашёл место, где там подсистемы расширений (если я правильно понимаю - это разделяемые данные) обрабатываются!
Вручную напрямую добавить запись в регистр сведений система так же не даёт - нужно через обходной путь делать! Вот и вопрос - куда копать?
Версия БСП 3.1.10.248
В конфигурацию было добавлено (скорее всего недавно; не я делал) нетиповое расширение конфигурации!
После этого перестал работать вход в раздел отчётов (подсистема "Зарплата"; сразу уточню - в подключённом расширении отчётов нет).
Выдаётся такая ошибка
...не существует идентификатор в регистре сведений "Идентификаторы объектов версий расширений |
---|
Ошибка при выполнении функции ОбщегоНазначения.ИдентификаторыОбъектовМетаданных.
Для объекта метаданных "Подсистема.Кадры.Подсистема.МедО_Медосмотры" не существует идентификатор в регистре сведений "Идентификаторы объектов версий расширений". Для разработчика: возможно требуется обновить вспомогательные данные, которые влияют на работу приложения. Для выполнения обновления можно: - воспользоваться внешней обработкой "Инструменты разработчика: Обновление вспомогательных данных", - либо запустить приложение с параметром командной строки 1С:Предприятия 8 "/С ЗапуститьОбновлениеИнформационнойБазы", - либо увеличить номер версии приложения, чтобы при очередном запуске выполнились процедуры обновления данных информационной базы. {Справочник.ИдентификаторыОбъектовМетаданных.МодульМенеджера(3388)}:ВызватьИсключение ТекстОшибки; {Справочник.ИдентификаторыОбъектовМетаданных.МодульМенеджера(3145)}:Идентификаторы = ИдентификаторыОбъектовМетаданныхБезПопыткиПовтора( {Справочник.ИдентификаторыОбъектовМетаданных.МодульМенеджера(816)}:Идентификаторы = ИдентификаторыОбъектовМетаданныхСПопыткойПовтора(ПолныеИменаБезКэша, {ОбщийМодуль.ОбщегоНазначения.Модуль(4366)}:Возврат Справочники.ИдентификаторыОбъектовМетаданных.ИдентификаторыОбъектовМетаданных( {ОбщийМодуль.ВариантыОтчетовПовтИсп.Модуль(163)}:СсылкиПодсистем = ОбщегоНазначения.ИдентификаторыОбъектовМетаданных(ПолныеИменаПодсистем); {ОбщаяФорма.ПанельОтчетов.Форма(849)}:ВсеПодсистемы = ВариантыОтчетовПовтИсп.ПодсистемыТекущегоПользователя().Дерево; {ОбщаяФорма.ПанельОтчетов.Форма(85)}:ОпределитьПодсистемыИЗаголовок(Параметры); {ОбщийМодуль.ВариантыОтчетовКлиент.Модуль(129)}:ОткрытьФорму("ОбщаяФорма.ПанельОтчетов", ФормаПараметры, , ПутьКПодсистеме, ФормаОкно, ФормаСсылка); {ОбщаяКоманда.ПанельОтчетовЗарплата.МодульКоманды(6)}:ВариантыОтчетовКлиент.ПоказатьПанельОтчетов("Зарплата", ПараметрыВыполненияКоманды); [ОшибкаВоВремяВыполненияВстроенногоЯзыка, ИсключениеВызванноеИзВстроенногоЯзыка] |
Тут самое важное это "Для объекта метаданных "Подсистема.Кадры.Подсистема.МедО_Медосмотры"
не существует идентификатор в регистре сведений "Идентификаторы объектов версий расширений"."
Подсистема "Подсистема.Кадры" заимствована из типовой конфигурации ЗУП 3.1
Собственно - так оно и есть - в регистре сведений "Идентификаторы объектов версий расширений" нет данного идентификатора подсистемы (хотя для других метаданных расширения - идентификаторы есть - что уже странно!), и в справочниках "Идентификаторы объектов метаданных" и "Идентификаторы объектов расширений" тоже нет.
ВАЖНАЯ! Поправка: В справочнике "" нашёл элемент "? Подсистема.МедО_Медосмотры", помеченный на удаление (и И нашёл запись в регистре сведений Идентификаторы объектов версий расширений" с данным элементом, и ссылка на расширение, тоже помеченной на удаление - видно только в форме списка).
Но снять пометку вручную не даёт! А полные права есть!
Ну что я делаю - естественно, следую данному совету и запускаю внешнюю обработку
E:\1C\V83\tmplts\1C\SSL\3_1_2_264\ExtFiles\Инструменты разработчика\ОбновлениеВспомогательныхДанных.epf
И обновляю "Базовая функциональность" (или в расшир. режиме: "Идентификаторы объектов метаданных", "Идентификаторы объектов расширений", "Кэш программных интерфейсов").
И.... ничего не меняется (после второго запуска - говорит, что обновлять нечего!)
А ошибка остаётся и идентификатор подсистемы не появляется!
Ну... ладно - пробую второй вариант - запуск с ключом "/С ЗапуститьОбновлениеИнформационнойБазы" (странно - почему-то явно запустить не удалось - запустил из конфигуратора через настройку "Параметр запуска: ЗапуститьОбновлениеИнформационнойБазы"). Процесс прошёл... а ситуация так и не решилась!
В чем дело - не пойму! Пытался поковырять механизм обновления идентификаторов - вообще не нашёл место, где там подсистемы расширений (если я правильно понимаю - это разделяемые данные) обрабатываются!
Вручную напрямую добавить запись в регистр сведений система так же не даёт - нужно через обходной путь делать! Вот и вопрос - куда копать?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
как решил у себя в ЗУП
дано: в расширении 2 документа, 1 справочник, 1 отчет, одна подчиненная подсистема в подсистеме КАДРЫ
проблема: при попытке запустить отчет появлялась ошибка "не существует идентификатор в регистре сведений "Идентификаторы объектов версий расширений"."
решение: отчет исключен из подчиненной подсистеме и добавлен в подсистему КАДРЫ. после этого все работает нормально
ЗЫ. почему так? могу только предполагать что отчеты из подчиненных подсистем все равно показываются в разделе Отчеты основной подсистемы и поэтому некорректно отрабатывает ситуация когда отчет в подчиненной подсистеме в расширении
дано: в расширении 2 документа, 1 справочник, 1 отчет, одна подчиненная подсистема в подсистеме КАДРЫ
проблема: при попытке запустить отчет появлялась ошибка "не существует идентификатор в регистре сведений "Идентификаторы объектов версий расширений"."
решение: отчет исключен из подчиненной подсистеме и добавлен в подсистему КАДРЫ. после этого все работает нормально
ЗЫ. почему так? могу только предполагать что отчеты из подчиненных подсистем все равно показываются в разделе Отчеты основной подсистемы и поэтому некорректно отрабатывает ситуация когда отчет в подчиненной подсистеме в расширении
(4)
Не думаю, так как там, в БСП, алгоритм обновления идентификаторов (запускаемый соответствующей обработкой) достаточно навороченный - и обрабатывает расширения, в т.ч. там есть алгоритм их "отключения" для каких-то процессов обработки (не разбирался) - так что там есть возможность определить что в расширении, что нет, отдельная обработка метаданных расширений. Но, это теоретически. Реально - я не стал это всё копать - там не просто это отлаживать, там фоновые процессы - а у меня не работает их отладка, почему-то
могу только предполагать что отчёты из подчинённых подсистем все равно показываются в разделе Отчёты основной подсистемы и поэтому некорректно отрабатывает ситуация когда отчёт в подчинённой подсистеме в расширении
Не думаю, так как там, в БСП, алгоритм обновления идентификаторов (запускаемый соответствующей обработкой) достаточно навороченный - и обрабатывает расширения, в т.ч. там есть алгоритм их "отключения" для каких-то процессов обработки (не разбирался) - так что там есть возможность определить что в расширении, что нет, отдельная обработка метаданных расширений. Но, это теоретически. Реально - я не стал это всё копать - там не просто это отлаживать, там фоновые процессы - а у меня не работает их отладка, почему-то
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот