Получение UUID через COM-соединение #440596


#0 by scalalaz
Такой вопрос. Нужно из одной базы 1С получитьUUID-ы некоторых документов в другой базе (через COM-соединение). Код приблизительно такой Но переменная UUID имеет тип COMОбъект. Знатоки подскажите как получить сам UUID? Что делаю не так?
#1 by ТелепатБот
#2 by Ненавижу 1С
UUID = СомСоединение.String(выборка.ссылка.уникальныйидентификатор);
#3 by scalalaz
Заработало. Спасибо.
#4 by DmitrO
UUID = XMLСтрока(выборка.ссылка);
#5 by DmitrO
поправка: UUID = СомСоединение.XMLСтрока(выборка.ссылка);
#6 by scalalaz
Вопрос в продолжение темы. Получил UUID документа в COM-базе. Нужно проверить есть ли документ с таким UUID в основной базе. Делаю так Не работает (в смысле как будто остсутствующих документов в основной базе нет, но это не так). Как правильно проверять наличие документа по UUID?
#7 by Ненавижу 1С
значит так и есть, отладчиком смотри
#8 by Bober
Документы.ПлатежноеПоручениеИсходящее.ПолучитьСсылку(УникальныйИдентификатор(UUID))
#9 by scalalaz
то есть проверку я делаю правильно?
#10 by DmitrO
нет не правильно, ты так не проверишь есть ли локумент в базе
#11 by scalalaz
а как проверить?
#12 by DmitrO
вот так это делается:
#13 by DmitrO
ну желательно оптимизировать конечно чтобы объект запроса {ЗапросВРоднойБазе} и объект типа тип {Тип("ДокументСсылка.ПлатежноеПоручениеИсходящее")} не создавались в каждой итерации цикла по выборке.
#14 by Serginio1
А что возвращает Ссылка.ПолучитьОбъект.ЭтоНовый ?
#15 by DmitrO
да, так можно проверить, тока это не оптимально, т.к будет попытка считывания данных всего объекта
#16 by Serginio1
Согласен, но что касается 1С необходимо проверять на тестах. В данном случае чисто теоретический вопрос (самому лениво проверять)
#17 by scalalaz
С проверкой наличия документа в запросе все работает как нужно. Спасибо.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С