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