Программно получить данные первой версии объекта
☑
0
synapce
11.07.22
✎
09:19
Всем привет!
Народ, подскажите, как получить первую версию документа по версионированию? (программно).
Грубо говоря, необходимо присвоить данные версии в переменную и оттуда выдернуть реквизит.
Заранее спасибо всем!
1с Документооборот 8 КОРП 2.1
1
DimVad
11.07.22
✎
09:25
По поводу ДО точно не скажу, но вообще может быть что-о типа :
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ВерсииОбъектов.Объект,
| ВерсииОбъектов.НомерВерсии,
| ВерсииОбъектов.ВерсияОбъекта
|ИЗ
| РегистрСведений.ВерсииОбъектов КАК ВерсииОбъектов
|ГДЕ
| ВерсииОбъектов.Объект = &Объект
| И ВерсииОбъектов.НомерВерсии = &НомерВерсии";
Запрос.УстановитьПараметр("Объект", СсылкаНаОбъект);
Запрос.УстановитьПараметр("НомерВерсии", Число(ТД.НомерВерсии));
Рез = Запрос.Выполнить();
Если Рез.Пустой() Тогда
Возврат;
КонецЕсли;
Выборка = Рез.Выбрать();
Выборка.Следующий();
ХранилищеОбъекта = Выборка.ВерсияОбъекта;
ДвоичныеДанные = ХранилищеОбъекта.Получить();
ИмяВременногоФайла = ПолучитьИмяВременногоФайла();
ДвоичныеДанные.Записать(ИмяВременногоФайла);
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ИмяВременногоФайла);
Объектик=ПрочитатьXML(ЧтениеXML);
ЧтениеXML.Закрыть();
2
СеменовСемен
11.07.22
✎
09:28
Прочитать xml может не сработать, если были изменения мд
3
DimVad
11.07.22
✎
09:29
(2) Это да.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.