Итак, обработка позволяет по ID определить, какому объекту базы данных он принадлежит. Поддерживаются все ссылочные типы базы данных.
Реализовано три режима: поиск ссылки, создание объекта БД и получение ссылки для объекта БД.
Поиск ссылки
Идентификатор, вводимый в поле "Известный GUID" может иметь различные виды:
1. Объект не найден (25:888ba76e-9ccf-aed3-4a2f-1d8152ba0f17)
Обычно такие ссылки, они же "битые" появляются в результате обмена данными, когда ссылка на объект выгрузилась, а сам объект - нет.
2. 25:888ba76e-9ccf-aed3-4a2f-1d8152ba0f17
Частный случай пункта 1.
3. 888ba76e-9ccf-aed3-4a2f-1d8152ba0f17
Обычная ссылка, полученная применением функции Строка() к объекту типа "УникальныйИдентификатор()". Может где-нибудь храниться, например в регистре "Соответствие объектов информационных баз".
4. 888ba76e9ccfaed34a2f1d8152ba0f17
Тоже, что и в пункте 3, без дефисов.
Можно вводить (копипастить) в любом формате. Следует отметить, что если в ID присутствует номер таблицы из структуры хранения БД, то объект определяется из этой таблицы. Например, здесь это номер "25" - число перед ":" в идентификаторе.
Далее - нажимаем кнопку "Найти ссылку" и в поле "Результат" появится ссылка на объект БД (если он найдется, если нет, то "битая"). Если объект не найден, то его можно создать - на второй закладке.
Итак, поиск осуществляется:
- если есть номер таблицы, то сразу в этой таблице;
- если номера нет, то по порядку во всех ссылочных типах БД.
Создание объекта
Все тоже самое, только кнопка другая - "Создать объект". Система пытается создать объект и установить для него введенный ID. Если удалось, то пользователю предлагается заполнить форму этого объекта и записать его в БД.
Опять же, если в идентификаторе есть номер таблицы, то создаем объект сразу в этой таблице. Если нет, то выбираем тип создаваемого объекта руками.
Получение ссылки
По выбранной ссылке на объект БД система получает ее уникальный идентификатор в 3-х вариантах (для удобства).
Также определяется название таблицы хранения объекта, которому принадлежит выбранная ссылка.
Области использования обработки
Сколько раз я видел у клиентов криво настроенный обмен, в результате которого появлялась куча битых ссылок. При анализе таких обменов (особенно XML) важно понимать, что за объект скрывается за битой ссылкой в базе-источнике. Особенно когда реквизит приемника составного типа или вообще любая ссылка. Эта обработка быстро ответит на данный вопрос. Без нее нудно тратилось время на выяснение сего момента, зачастую набивая код в "табло", т.к. нужно было быстро понять, в чем дело, а обработку писать не хотелось.
Также, например, в регистре "Соответствие объектов информационных баз" хранится это самое соответствие. Объект в текущей базе ясен, а вот что там за ID лежит - вопрос. Хотя, конечно, тут тип можно определить быстро.
Еще бывали моменты, когда есть список ID-шников и попробуй определи, что это за объекты.
Полезно использовать мою обработку вместе с обработками поиска битых ссылок.
Обработка написана под 8.2, но можно использовать и для 8.1 с предварительной конвертацией. Формы - обычные.
Планируемые доработки
1. Получение ID для любой ссылки. Реализовано.
2. Возможность передавать список ID-шников для поиска ссылок в базе-источнике.
3. Получение ID ссылки на объект в другой базе через COM-соединение и наоборот.