Уникальный идентификатор & Соответствие объектов для обмена #722473


#0 by kn
Приветствую, форумчане. В РС <Соответсвие объектов для обмена> есть запись с таким значением поля <Ссылка в другой информационной базе> {"#",44a01d39-c2b6-4751-85e6-06fdc2f23043,70:a571001cf0d5dd3911e219a6be707a92} как по этому строковому значению можно определить сам объект в базе источнике?
#1 by PR
Найди по гуиду. При создании объекта и подстановке гуида объект уже либо будет существовать либо новый. Если не новый, значит оно.
#2 by johnny17
ТипЗнч(Объект)... Не пробовал, мож прокатит...
#3 by PR
Что такое НовыйИдентификатор?
#4 by Галахад
ИзСтрокиВнутр
#5 by johnny17
Бр, сорри, = Новый УникальныйИдентификатор(Строка)
#6 by kn
где МойУникальныйИдентификатор = "a571001cf0d5dd3911e219a6be707a92", что не так, подскажите?
#7 by johnny17
Попробуй , должно помочь...
#8 by PR
И что это даст?
#9 by PR
СсылкаНоменклатура.ЭтоНовый
#10 by johnny17
Даст ссылку на объект, а уж по типу разобраться можно...
#11 by Skylark
МойУникальныйИдентификатор = "44a01d39-c2b6-4751-85e6-06fdc2f23043"
#12 by PR
Да ладно! А может просто тупо даст уникальный идентификатор?
#13 by johnny17
Точная ф-ция ЗначениеИзСтрокиВнутр Описание: Преобразует значение из строкового системного представления во внутреннее. обратная ЗначениеВСтрокуВнутр...
#14 by kn
Код в выдает ошибку {Форма.Форма.Форма}: Ошибка при вызове конструктора (УникальныйИдентификатор)     НовыйGUID = Новый УникальныйИдентификатор(МойУникальныйИдентификатор); по причине: Недопустимое значение параметра (параметр номер '1'),
#15 by PR
Блин, я про новый вообще-то, а не про ЗначениеВСтрокуВнутр
#16 by kn
вот так ошибку не выдает(объекта нет выдает), но если посмотреть в этот регистр, то там все записи для спр Номенклатуры начинаются с 44a01d39-c2b6-4751-85e6-06fdc2f23043, поэтому подумалось что это сам справочник, а вот вторая часть разная у записей. Хотя судя по описанию конструктора УникальныйИдентификатор, строка должна быть вида . Поясните пжл-та, почему так
#17 by kn
Результат работы такой - сообщилось СсылкаНоменклатура = <Объект не найден> (110:85e606fdc2f230434751c2b644a01d39)
#18 by Skylark
Посмотри внимательнее, возможно в они отличаются в одном символе Это вот одинаковые строки или разные? 44a01d39-c2b6-4751-85e6-06fdc2f23043 44a01d39-c2b6-4751-85e6-06fda2f23043
#19 by Skylark
Значит нет такого элемента номенклатуры.
#20 by Skylark
Лучше всего поищи в конфигурации код, которым формируются записи в этом регистре - как получается строка вида {"#",44a01d39-c2b6-4751-85e6-06fdc2f23043,70:a571001cf0d5dd3911e219a6be707a92} Где-то рядом наверняка есть обратный код, для получения ссылки из этой строки.
#21 by kn
не вижу различий да видимо нет спасибо за совет Не могу понять влияют ли запись этого регистра на синхронизацию и можно ли его почистить, если синхронизация планируется по коду
#22 by Skylark
>не вижу различий а вот так: 44a01d39-c2b6-4751-85e6-06fd__c__2f23043 44a01d39-c2b6-4751-85e6-06fd__a__2f23043
#23 by Skylark
Не могу точно сказать, как оно сейчас, я с подобным обменом занимался давно, но по-моему синхронизация хоть по коду, хоть по наименованию, хоть по чему - а как только объект нашли, то суют его в регистр и дальше всё по регистру. Вот если объекта в регистре нет, то ищут его по полям синхронизации, а как найдут опять же помещают в регистр. Видимо поиск объекта это существенно медленнее, чем получение объекта по идентификатору. Поэтому объекты сначала пытаются получить по регистру и идентификатору, и только если их там нет, то ищут по полям и как находят то помещают в регистр про запас.
#24 by 1C_v8
Если УИД взят из регистра сведений Соответствие объектов ИБ, то его точно нет в данной базе. Ссылку необходимо искать в корреспонденте.
#25 by kn
теперь вижу, спасибо. В Источнике и искалось.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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