Добрый день!
В некоторых случаях полезно узнать, кто, когда и как изменил какой-либо объект в БД. Для этого существует замечательная штука из БСП Версионирование объектов.
Но не всегда она спасает.
Пример.
Есть справочник "Дисконтные карты", в котором помимо ПД указывается штрихкод самой карты.
По бизнес-процессу, заложенному в компании, при блокировке карты ШК затирается на абракадабру (чтоб ей не смогли больше пользоваться), и всё, следы предыдущего юзера штрихкода утеряны.
А если нужно найти, кому ранее принадлежала карта? Если их штук 50, то можно методом "пальцем в небо" проваливаться в каждую версию и смотреть...А если их >96000?
Поэтому "пришлось" поизучать подсистему ВО поглубже, так сказать.
И в ней есть максимально замечательная функция ВерсионированиеОбъектов.РазборВерсии, которая отсылает нас далее к СведенияОВерсииОбъекта(Знач Ссылка, Знач НомерВерсии).
На выходе получаем уже обработанный XML-результат в привычном формате объекта, а основные реквизиты в ТЗ "Реквизиты" (отладкой можно поймать)..
Для обхода используется банальный запрос к РС ВерсииОбъектов (естественно, с отбором на вид объекта и наличие данных в версии). Далее в цикле проверяется каждая версия на предмет сходства ШК версии с ШК, который имеем.
Таким образом, в моем случае, можно получить (хоть и не быстро) предыдущего владельца карты.
Но более чем уверен, что этот метод можно распространить на самые разнообразные вопросы о "предыдущих" значениях реквизитов объектов.
Тестировалось на Управление предприятием общепита, редакция 3.0 (3.0.5.211).
Версия БСП 3.1.8.476.