gifts2017

Поиск объекта по уникальному идентификатору

Опубликовал Борис Моренко (BorisMor) в раздел Администрирование - Поиск данных

Позволяет найти объект по уникальному идентификатору, узнать идентификатор у объекта, узнать ссылки на объект, получить список реквизитов и их значений.

Возможности:

  • Поиск по идентификатору
  • Возможность указать, в каких типах объектов искать
  • Узнать из объекта его идентификатор
  • Возможность получить ссылки на идентификатор с с полным названием метаданных
  • Получение списка атрибутов объекта, значения атрибута и его тип

Обработка изначально писалась для поиска объектов перегруженных через "1С Конвертация".
В событие "ПередВыгрузкой" я вставлял следующий код:

 

	Если Источник <> Неопределено тогда
    Сообщить("" + Источник.УникальныйИдентификатор() + " - " + Источник)
КонецЕсли;

 

После выгрузки в принимающей конфигурации можно было быстро найти нужный объект по Уникальному идентификатору.

Скачать файлы

Наименование Файл Версия Размер
ПоискОбъектаПоУИД.epf 136
.epf 18,43Kb
02.03.12
136
.epf 18,43Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
0. Борис Моренко (BorisMor) 24.02.12 15:47
Позволяет найти объект по уникальному идентификатору, узнать идентификатор у объекта, узнать ссылки на объект, получить список реквизитов и их значений.

Перейти к публикации

1. Vladimir (Boroda) 24.02.12 15:47
Интересно, а вот такую операцию обработка сможет проделать: скажем, из документа, в котором имеется реквизит "Сотрудник", найти ИД этого сотрудника?
Или она сможет найти только ИД самого (т.е. активного) документа?
И ещё. Бывает (и после переноса данных, в том числе) что вместо наименования объекта (или наименования ссылки) видится лишь, например, "<Объект не найден> (115:839e000bcdcd537611e0285d27b6b7cb)". Как я понимаю, "839e000bcdcd537611e0285d27b6b7cb" - это ИД не найденного объекта. Можно ли по нему найти сам объект, где он торчит, откуда берётся?
2. Борис Моренко (BorisMor) 24.02.12 16:08
скажем, из документа, в котором имеется реквизит "Сотрудник", найти ИД этого сотрудника?

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

Можно ли по нему найти сам объект, где он торчит, откуда берётся?

Да вы правы: это и есть идентификатор
Обычно если вы такое видите это означает что:
  • у вас побилась база и 1С не может найти объект. Тогда надо: восстановить копию базы и сделать поиск по идентификатору в ней.
  • У вас ограничены права и вы не можете получить объект
4. Vladimir (Boroda) 24.02.12 21:19
Попробовал решить свою задачу - ничего не получилось. Возможно, от того, что туповат и не могу разобраться с обработкой, в которой отсутствует хотя бы элементарное описание.
В реквизит УИД ввёл "839e000bcdcd537611e0285d27b6b7cb" - выпала ошибка "Недопустимое значение параметра (параметр номер '1')"
Второй параметр "Объект" я не заполнял, т.к. непонятно, кого выбирать из справочника "Сотрудники".
Доступ к базе у меня есть, но ссылка битая, и я не могу понять, к какому из сотрудников она относится.
Данная обработка, как я догадываюсь теперь, эту проблему не решит?
Но всё равно непонятна ошибка, выпадающая при поиске по УИД.
5. Борис Моренко (BorisMor) 26.02.12 11:14
(4) Boroda,
В реквизит УИД ввёл "839e000bcdcd537611e0285d27b6b7cb" - выпала ошибка "Недопустимое значение параметра (параметр номер '1')"

Добавил поддержку коротких идентификаторов. До этого поддерживался только стандартный формат (из 36 символов)
6. Vladimir (Boroda) 04.03.12 23:45
Спасибо, попробую новый вариант...
7. Марина Чирина (chmv) 17.08.15 16:18
Скачала. Не работает под управляемыми приложениями