1с объект метаданных не найден по полному имени внешний отчет
Несмотря на то, что мне приходится много кодировать на java (да, к сожалению другого слова я подобрать не могу, объясню в отдельной статье «романтику» промышленного программирования), в регионах большие деньги можно заработать в программировании только на 1С, чем и занимаюсь, когда есть возможность. Несмотря на кажущуюся простоту, подводных камней в этой желтенькой программке просто уйма. Такое ощущение, что сама 1с делает так, чтобы денежный поток на доработке никогда не заканчивался. Например, нередки случаи, когда через несколько обновлений важные отчеты просто помечаются как снимаемые с поддержки и будут просто удалены. И тогда начинается интересный квест по возврату утраченного функционала, ничего уже не говоря о том, если приходится доработать свой отчет или обработку (да и иногда и объект метаданных). И вот, вы запилили свой отчет или обработку, уже нашли, куда его воткнуть в конфигурацию (на самом деле, в 1с все же предпочтительнее создавать внешние отчеты и обработки, на случай, если охота оставить обновления), обновили конфигурацию и… система вас «радует» оповещением « : Ошибка при выполнении функции ОбщегоНазначения.ИдентификаторОбъектаМетаданных()» и т. д. Кто сталкивался с подобным, тот поймет. На самом деле, я сам столкнулся с этим относительно недавно. Помню, как был в «дичайшем» восторге. К сожалению, информация по том, как это устранить настолько разрознена, что решил написать небольшое руководство. В тексте ошибки есть и небольшие рекомендации по ее устранению. 1С советует проделать довольно-таки спорные манипуляции:
- «Поднять» версию конфигурации. Например, у меня есть Розница 2.1.7.18. Я должен поменять ее на 2.1.7.19, обновить конфигурацию и будет все замечательно. Честно, спорный момент, так как проблема потом будет с обновлением и, что самое главное, лично у меня никогда в таких случаях данное «решение» проблемы не имело успеха.
- Запустить конфигурацию с параметром командой строки «/С ЗапуститьОбновлениеИнформационнойБазы»
Это на скриншоте у меня выглядит так: Честно говоря, данный способ я вообще не пробовал. Кому-то он помогает, я не стал этим пользоваться. Но знайте — это один из официальных способов решения данной ошибки. Я же использую третий способ, хоть он и сопряжен с некоторыми трудностями. Дело в том, что все идентификаторы объектов метаданных хранятся в одноименном справочнике. Найти его можно в разделе «Все функции». На самом деле, этот способ самый простой и безобидный. Просто находите в списке кнопку «Обновить справочник» и ждете завершения команды. Но вот в силу своей колоссальной везучести, на тех платформах, которые мне приходится дорабатывать, этой кнопки в списке этого справочника просто нет. Вам нужно просто обновить идентификатор, поэтому создайте внешнюю обработку, разместите на ней команду и запишите в нее код:
После запуска этой команды идентификатор обновится.
Сразу оговорюсь — этой кнопки в данном списке может как не быть, так и она там может находиться. Все зависит от конфигурации.
Из конфигурации сохраняю отчет ОСВ как внешний, а при загрузки отчета в БП (через Файл/Открыть), идет ошибка:
Ошибка при выполнении функции ОбщегоНазначения.ИдентификаторОбъектМетаданных()
Объект не найден по полному имени:
"ВнешнийОтчет.ОборотноСальдоваяВедомость"
Прочитала, что надо вставить в модуль объекта:
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = Новый Структура;
ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет");
ПараметрыРегистрации.Вставить("Назначение", "");
ПараметрыРегистрации.Вставить("Наименование", "ОСВ");
ПараметрыРегистрации.Вставить("Версия", "1.0.1");
ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
ПараметрыРегистрации.Вставить("Информация", "ОСВ");
ПараметрыРегистрации.Вставить("ВерсияБСП", "1.2.1.4");
ТаблицаКоманд = ПолучитьТаблицуКоманд();
ДобавитьКоманду(ТаблицаКоманд,
"ОСВ",
"ОСВ",
"ОткрытиеФормы",
Ложь,
"");
ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
Возврат ПараметрыРегистрации;
КонецФункции
Функция ПолучитьТаблицуКоманд()
Команды = Новый ТаблицаЗначений;
Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
Возврат Команды;
КонецФункции
Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление;
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры
Очередной раз я за маньячил БСП, сижу смотрю на весь этот беспредел в скриптах и не могу понять накой фиг нужен этот Справочник?
Кто ни будь, киньте в меня ссылкой на подробное описание этого справочника! ЗАЧЕМ ОН НУЖЕН?
Программное создание объектов метаданных
Всем привет! Возможно ли средствами 1С или каким-либо сторонним ПО создать новый объект(документ.
Ошибка Метаданных "не найден идентификатор в справочнике Идентификатор объекта метаданных"
В общем ситуация следующая, только начал разбираться с 1С, скачал с оф сайта учебную версию для.
Подскажите, пожалуйста, для JS полный справочник объектов, свойств, методов
Здравствуйте. Подскажите, пожалуйста, есть ли для JS полный справочник объектов, свойств, методов.
Где можно найти документацию, справочник, описание COM-объектов Excel, Word?
Подскажите где можно найти документацию, справочник, описание COM-объектов Excel, Word? Мой шеф.
Для хранения списка объектов метаданных
как я понял: юзается при сравнении конфигураций (а сравнение юзается при обновлении, обмене+обновлени, совместной разработке конф, итд)
Добавлено через 2 минуты
з.ы. конкретной инфы по справочнику не находил, везде косвенные отсылки к самому явлению "идентификаторы объектов метаданных"
Т.е. конфигуратора для этого НАМ мало.
Добавлено через 33 секунды
Давайте в Регистре Сведений хранить тексты функций?!
Добавлено через 25 минут
Нашел на ИТСе
Использование идентификаторов объектов метаданных
При необходимости хранить в базе данных ссылку на объект метаданных (например, ссылка на объект метаданных Справочник.Организации) рекомендуется вместо строкового реквизита с полным именем объекта метаданных использовать ссылку на соответствующий элемент справочника ИдентификаторыОбъектовМетаданных. Такая потребность возникает, например, в различных подсистемах БСП: для хранения настроек версионирования данных, списка выбранных ролей в профилях групп доступа и т.п.
Такой подход позволяет
● повысить производительность запросов, которые обращаются к реквизитам данного типа;
● снизить размер таблиц в базе данных, в которых используются реквизиты данного типа,
● выводить в пользовательском интерфейсе представление ссылки вместо строкового имени объекта метаданных,
● а также избавиться от разработки обработчиков обновления и первоначального заполнения ИБ для актуализации строковых реквизитов с полными именами объектов метаданных при изменениях метаданных конфигурации.
Программно, ссылку на объект метаданных можно получить с помощью функции ИдентификаторОбъектаМетаданных общего модуля ОбщегоНазначения.
Справочник ИдентификаторыОбъектовМетаданных заполняется автоматически при первом запуске (и каждом обновлении) конфигурации, согласно метаданным конфигурации, а также автоматически актуализируется при каждом обновлении версии конфигурации (учитываются переименованные, добавленные и удаленные объекты метаданных). Полный список объектов метаданных (справочники, документы, регистры, и т.п.), обновление идентификаторов которых выполняется автоматически, см. в комментарии к функции ИдентификаторОбъектаМетадан*ных общего модуля ОбщегоНазначения.
Исключение составляют подсистемы и роли, обновление идентификаторов которых требуется выполнять вручную. Необходимость обновления идентификаторов подсистем и ролей возникает при их переименовании (а для подсистем – также и в случае их перемещения из одной родительской подсистемы в другую). В противном случае, возможно рассогласование идентификаторов объектов метаданных с объектами метаданных конфигурации.
Для обновления идентификаторов необходимо воспользоваться процедурой ЗаполнитьТаблицуПереименованияОбъектовМетаданных общего модуля ОбщегоНазначенияПереопределяемый и увеличить номер версии конфигурации. Например, следующий фрагмент кода описывает, что в версии конфигурации 2.0.1.2 подсистема _ДемоПоставляемыеДанные была перенесена из подсистемы _ДемоРаботаВМоделиСервиса в _ДемоНастройкаИАдминистрирование:
Обновление идентификаторов выполняется последовательно по версиям конфигурации, а в пределах одной версии – в порядке следования строк со сведениями о переименованиях. Обновление идентификаторов для переименованных подсистем выполняется также и для всех их дочерних подсистем (если они есть).
Отдельным случаем, когда обновление идентификаторов происходит автоматически, является переименование объектов метаданных с целью изменения структуры данных с помощью создания новой копии объекта метаданных. Такая необходимость возникает, когда реструктуризация объекта метаданных невозможна. Например, при сокращении длины кода справочника Подразделения с 50 до 11, может потребоваться создать новый справочник, а старый переименовать в УдалитьПодразделения. В этом случае идентификатор справочника будет автоматически назначен новому справочнику с тем же именем.
Однако если при этом новый справочник будет назван иначе, например, СтруктурныеЕдиницы, то потребуется отразить переименование справочника Подразделения в справочник СтруктурныеЕдиницы, как это описано выше.
При активной разработке конфигурации данные справочника ИдентификаторыОбъектовМетаданных можно также обновлять вручную, без увеличения номера версии конфигурации, с помощью команды Обновить данные справочника в форме списка (открыв ее, например, из меню Все функции). Однако, это допустимо только в случае, когда не производилось переименование ролей и/или подсистем. В случае переименования ролей и/или подсистем, перед выполнением команды Обновить данные справочника нужно выполнить переименование полных имен соответствующих элементов справочника. Для этого нужно открыть форму элемента справочника ИдентификаторыОбъектовМетаданных, выполнить команду Включить возможность редактирования в меню Все действия и задать новое полное имя. В противном случае, этот элемент справочника будет помечен на удаление и создан новый, что приведет к рассогласованию идентификаторов объектов метаданных с объектами метаданных конфигурации.
При добавлении новых объектов в типовые конфигурации возможна ошибка при обращении к этому объекту в режиме 1C:Предприятие: "Объект не найден в Справочнике "ИдентификаторыОбъектовМетаданных".
Для объекта метаданных "Отчет.РИК_РасчетыСПартнерами" не найден идентификатор в справочнике "Идентификаторы объектов метаданных".
Для разработчика: возможно требуется обновить вспомогательные данные, которые влияют на работу программы. Для выполнения обновления можно:
- воспользоваться внешней обработкой "Инструменты разработчика: Обновление вспомогательных данных",
- либо запустить программу с параметром командной строки 1С:Предприятия 8 "/С ЗапуститьОбновлениеИнформационнойБазы",
- либо увеличить номер версии конфигурации, чтобы при очередном запуске выполнились процедуры обновления данных информационной базы.
Варианты решения:
1. В некоторых конфигурациях режиме предприятия
Все функции - Обработки - "Инструменты разработчика: Обновление вспомогательных данных", Если обработки нет, то пункт 2
Все функции - Справочники - "Идентификаторы объектов метаданных", нажать кнопку "Обновить данные справочника", Если кнопки обновить нет, то пункт 2
2. Из Конфигуратора запустить с параметром «/С ЗапуститьОбновлениеИнформационнойБазы», т.к. обработки может не оказаться под руками, а изменение версии производится с обновлением конфигурации и базы, что может оказаться не удобным:
Сервис/Параметры - Вкладка Запуск1С:Предприятия - В свойстве «Параметр запуска» добавляем «/С ЗапуститьОбновлениеИнформационнойБазы»
При запуске Предприятия появится окно обновления конфигурации. Потом не забудьте Убрать параметр запуска, чтобы больше не запускалось обновление!
3. Обновить конфигурацию или вручную увеличить номер версии конфигурации, чтобы при очередном запуске выполнились процедуры обновления данных информационной базы.
Похожие FAQ
При добавлении новых объектов в типовые конфигурации возможна ошибка при обращении к этому объекту в режиме 1C:Предприятие: "Объект не найден в Справочнике "ИдентификаторыОбъектовМетаданных".
Для объекта метаданных "Отчет.РИК_РасчетыСПартнерами" не найден идентификатор в справочнике "Идентификаторы объектов метаданных".
Для разработчика: возможно требуется обновить вспомогательные данные, которые влияют на работу программы. Для выполнения обновления можно:
- воспользоваться внешней обработкой "Инструменты разработчика: Обновление вспомогательных данных",
- либо запустить программу с параметром командной строки 1С:Предприятия 8 "/С ЗапуститьОбновлениеИнформационнойБазы",
- либо увеличить номер версии конфигурации, чтобы при очередном запуске выполнились процедуры обновления данных информационной базы.
Варианты решения:
1. В некоторых конфигурациях режиме предприятия
Все функции - Обработки - "Инструменты разработчика: Обновление вспомогательных данных", Если обработки нет, то пункт 2
Все функции - Справочники - "Идентификаторы объектов метаданных", нажать кнопку "Обновить данные справочника", Если кнопки обновить нет, то пункт 2
2. Из Конфигуратора запустить с параметром «/С ЗапуститьОбновлениеИнформационнойБазы», т.к. обработки может не оказаться под руками, а изменение версии производится с обновлением конфигурации и базы, что может оказаться не удобным:
Сервис/Параметры - Вкладка Запуск1С:Предприятия - В свойстве «Параметр запуска» добавляем «/С ЗапуститьОбновлениеИнформационнойБазы»
При запуске Предприятия появится окно обновления конфигурации. Потом не забудьте Убрать параметр запуска, чтобы больше не запускалось обновление!
3. Обновить конфигурацию или вручную увеличить номер версии конфигурации, чтобы при очередном запуске выполнились процедуры обновления данных информационной базы.
Похожие FAQ
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 44
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ 1C: Enterprise Development Tools 50
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем Cодержимое указанного ниже веб-сайта в этом приложении блокируется. Aboutsecurity_1cv8c.exe 1
Проблема: После обновления на 1С:Бухгалтерию предприятия 3-й версии, при нажатии на закладку командного интерфейса 1С:предприятие, выскакивает ошибка: Aboutsecurity_1cv8c.exe или Aboutsecurity_1cv8.exe «Содержимое указанного ниже веб-узла в э Google maps : вывод точек на карту и режим панорамы 7
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С возможностью просмотра панора Microsoft SQL Server Native Client Добавление значения в столбец "datetime" привело к переполнению 2
При формировании отчета на СКД получили ошибку: Microsoft SQL Server Native Client 11.0: Добавление значения в столбец "datetime" привело к переполнению Подробнее текст такой: . по причине: Ошибка компоновки данных по причине: Ошибка получени Посмотреть все результаты поиска похожих
Еще в этой же категории
Читайте также: