Обновление значений справочника ИдентификаторыОбъектовМетаданных и добавление новых ролей в УТ 11 или Бух 3.0

16.07.15

База данных - Обновление 1С

Решение проблем, которые возникают при создании в конфигурациях УТ11 и Бух3.0 новых ролей, отчетов и также других объектов, работа с которыми хоть как-то будет связана с: идентификатором метаданных, настройками пользователей и вариантами отчетов.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
ОбновитьМетаданныеИРоли
.epf 5,79Kb
31
31 Скачать (1 SM) Купить за 1 850 руб.

Я как программист очень часто сталкивался с моментами, когда нужно создать новый справочник, документ, отчет или обработку в структуре выше перечисленных конфигураций. В результате у нас может выскочить ошибка идентификатора объекта метаданных (когда сохраняются какие-то настройки).  Это связано с тем, что параллельно с системными метаданными разработчики также заполняют справочник ИдентификаторыОбъектовМетаданных, который потом используют для процесса сохранения различных настроек в системе. В более ранних версиях конфигураций в этом справочнике была кнопочка, которая позволяла обновить данные справочника, теперь ее убрали. Но функция-то осталась, соответственно ее можно использовать (обработка и код прилагаются ниже). Некоторые скажут, мол, "есть же инструкция в сообщении, что надо запустить конфигурацию с параметром обновления", но куда удобнее быстро запустить обработку, которая сделает именно то, что тебе надо, а не ждать выполнения глобального обновления после каждого нового созданного объекта.

В случае, когда вы сразу в конфигураторе делаете отчет (не внешний), к примеру, как часть своей подсистемы, и этот отчет имеет свои варианты, то, чтобы они появились в стандартном механизме вариантов отчетов, также нужно вызвать функцию обновления.

Самым интересным является работа по созданию новых ролей для этих конфигураций. В конфигураторе роль создается без проблем, но когда мы начинаем работать с группами пользователей уже в рабочей среде, применение этой роли опять-таки может выдать ошибку идентификатора метаданных. Но даже после обновления справочника, роль автоматически не применяется к выбранным пользователям, это можно сделать только из конфигуратора. Причиной такого поведения является то, что все роли, с которыми может работать система, при первом старте записываются в константу ПараметрыРаботыПользователей, и эти значения опять-таки нужно перезаполнить. Делается это тоже просто, так как в конфигураторе есть процедура, которая вызывается при первом старте, но никто нам не мешает вызвать ее вручную уже в рабочей базе. Реальной проблемой является только найти ее, я один раз все отдал бы, лиш бы мне кто ее показал. Но таки нашел ее сам, чем я сейчас и поделюсь.

Код, скорее всего, также будет работать в других типовых решениях на управляемых формах, так как было замечено, что этот механизм стал шаблонным. Но я лично не тестировал на других конфигурациях, поэтому обещать не буду. 

И на самом деле подобных процедур, использование которых часто является необходимостью при работе с типовыми конфигурациями, весьма много, так что можете делиться ими в комментариях. 

Код простой:

&НаКлиенте
Процедура ОбновитьПараметрыСистемы(Команда)
	ОбновитьПараметрыСистемыСервер();
КонецПроцедуры

&НаСервере
Процедура ОбновитьПараметрыСистемыСервер()
	//обновляет справочник идентефикаторов метаданных
	Справочники.ИдентификаторыОбъектовМетаданных.ОбновитьДанныеСправочника(Истина); 
	
	//обновляет варианты отчетов системы
	ВариантыОтчетов.Обновить(); 
	
	//Обновляет параметры пользователей системы (в том числе и новые роли конфигурации)
	Константы.ПараметрыРаботыПользователей.СоздатьМенеджерЗначения().ОбновитьОбщиеПараметры(); 
КонецПроцедуры

ИдентификаторыОбъектовМетаданных метаданных метаданные роли новые роли варианты отчетов

См. также

Зарплата Регламентированный учет и отчетность Кадровый учет Обновление 1С Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Обновления для конфигураций: КА 1.1; ЗУП 2.5; БУХ 2.0; КА 1.1 Комплексная автоматизация торговли алкогольной продукцией; КА 1.1 Комплексный учет сельскохозяйственного предприятия

27900 руб.

01.04.2020    147093    649    360    

235

Обновление 1С Программист Платформа 1С v8.3 Бесплатно (free)

В статье рассматривается использование WinMerge для сравнения, объединения и обновления конфигураций 1С. Отдельно рассматривается методика трехстороннего сравнения при обновлении конфигурации

21.10.2024    2659    mixaeel    18    

17

Обновление 1С Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Те кто объединял конфигурации находящиеся на поддержке, обновлял подсистемы БСП прекрасно помнят упражнение «10000 тысяч кликов мышкой» или, непонятное словесное заклинание, после которого конфигурация снимается с поддержки целиком.

1 стартмани

26.09.2024    501    3    milkers    2    

7

Обновление 1С Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 Россия Бесплатно (free)

Вышел новый релиз для УТ11 5.19.63. На копии базы было выполнено обновление и вылезли проблемы с номенклатурой, подлежащей маркировке. В публикации описаны проблемы, обнаруженные в копии базы конкретной организации.

24.09.2024    860    gull22    2    

8

Обновление 1С Программист Платформа 1С v8.3 Бесплатно (free)

Как исправить медленное сравнение конфигурации с файлом cf, сохраненным из хранилища.

17.09.2024    4367    vatkir    15    

10

Обновление 1С Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Упрощенное обновление конфигураций 1С (предпочтительно самописных) с помощью батника и Яндекс Диска (по публичной ссылке)

1 стартмани

22.08.2024    556    0    user1694357    0    

4

Обновление 1С Системный администратор Россия Абонемент ($m)

На ИТС есть статья, в которой поверхностно описан процесс автоматического обновления тонких клиентов. В качестве примера, что логично, представлены методы конфигурации 1С. Но, в отличие от того же управления списками баз, для обновления не требуется хранить информацию, потому я решил переписать код на php, чтобы можно было отвязаться от 1С. Не работает для файловых баз, подключенных как File="ПутьКПапкеБазы"; (а жаль), для опубликованных файловых - работает.

1 стартмани

20.08.2024    681    MikeSh    10    

2
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. klinval 343 16.07.15 09:46 Сейчас в теме
Некоторые скажут, мол, "есть же инструкция в сообщении, что надо запустить конфигурацию с параметром обновления", но куда удобнее быстро запустить обработку

А чем вас не устраивает вариант с внешней стандартной обработкой "ИнструментыРазработчикаОбновлениеВспомогательныхДанных" (про которую у вас кстати и написано в скриншоте)?
2. Поручик 4692 16.07.15 10:19 Сейчас в теме
(1) Пацанчик сделал открытие и решил вывалить в интернет, что уже давно изжёвано до дыр, а эти коды вылазят в гугле в числе первых.
3. hitchkock 11 16.07.15 15:43 Сейчас в теме
(2) Это далеко не открытие, просто за последнее время лично ко мне стали часто обращаться с этой темой. Особенно люди которые не имеют доступа к https://users.v8.1c.ru. Были такие которые пытались найти стандартную обработку просто на форумах и в итоге они по той или иной причине вываливали ошибки при выполнении. Так почему бы просто не поделится с незнающими конкретной темой, а не перешаривать пачки строк на форумах?
4. SunSun1979 21.07.15 10:18 Сейчас в теме
(2) Поручик, Все понятно, но грубо то так зачем? Мне вот пригодилось, не то что бы это нельзя было найти отдельно, но лишний раз напомнило мне что надо сделать, Так что профит есть.
5. Spacer 363 28.01.16 15:52 Сейчас в теме
(1) klinval, Оно то конечно удобнее, если есть возможность выгнать из базы всех пользователей.
Главный недостаток стандартной обработки - это то что она требует монопольный режим.
6. klinval 343 28.01.16 16:50 Сейчас в теме
(5) Spacer, Ну так этот код тоже требует монопольного доступа!
В ИТСовской обработке при установке настройки "Идентификаторы объектов метаданных" тоже выполняется код:
Справочники.ИдентификаторыОбъектовМетаданных.ОбновитьДанныеСправочника(Истина);

Который в свою очередь лезит в модуль менеджера справочника ИдентификаторыОбъектовМетаданных, где и происходит:
УстановитьМонопольныйРежим(Истина);
7. tatoshka0403 117 27.09.18 10:13 Сейчас в теме
Оставьте свое сообщение