Проект

Общее

Профиль

Соответствие объектов информационных баз » История » Версия 1

Всеволод Дорофеев, 28.04.2023 13:34

1 1 Всеволод Дорофеев
h1. Соответствие объектов информационных баз
2 1 Всеволод Дорофеев
3 1 Всеволод Дорофеев
h3. Поиск объекта через соответствие по идентификатору в РегистрСведений.ПубличныеИдентификаторыСинхронизируемыхОбъектов
4 1 Всеволод Дорофеев
5 1 Всеволод Дорофеев
<pre>
6 1 Всеволод Дорофеев
&НаСервереБезКонтекста
7 1 Всеволод Дорофеев
Функция НайтиСсылкуПоПубличномуИдентификатору(УИДОбъектаXDTO, УзелКорреспондента, ТипЗначенияОбъектаИБ)
8 1 Всеволод Дорофеев
	
9 1 Всеволод Дорофеев
	Если Не ЗначениеЗаполнено(УзелКорреспондента) Тогда
10 1 Всеволод Дорофеев
		Возврат Неопределено;
11 1 Всеволод Дорофеев
	КонецЕсли;
12 1 Всеволод Дорофеев
	
13 1 Всеволод Дорофеев
	Запрос = Новый Запрос(
14 1 Всеволод Дорофеев
	"ВЫБРАТЬ
15 1 Всеволод Дорофеев
	|	РПИ.Ссылка КАК Ссылка
16 1 Всеволод Дорофеев
	|ИЗ
17 1 Всеволод Дорофеев
	|	РегистрСведений.ПубличныеИдентификаторыСинхронизируемыхОбъектов КАК РПИ
18 1 Всеволод Дорофеев
	|ГДЕ
19 1 Всеволод Дорофеев
	|	РПИ.УзелИнформационнойБазы = &УзелИнформационнойБазы
20 1 Всеволод Дорофеев
	|	И РПИ.Идентификатор = &Идентификатор");
21 1 Всеволод Дорофеев
	Запрос.УстановитьПараметр("УзелИнформационнойБазы", УзелКорреспондента);
22 1 Всеволод Дорофеев
	Запрос.УстановитьПараметр("Идентификатор",          УИДОбъектаXDTO);
23 1 Всеволод Дорофеев
	
24 1 Всеволод Дорофеев
	НайденнаяСсылка    = Неопределено;
25 1 Всеволод Дорофеев
	
26 1 Всеволод Дорофеев
	Выборка = Запрос.Выполнить().Выбрать();
27 1 Всеволод Дорофеев
	Пока Выборка.Следующий() Цикл
28 1 Всеволод Дорофеев
		
29 1 Всеволод Дорофеев
		Если ТипЗнч(Выборка.Ссылка) <> ТипЗначенияОбъектаИБ Тогда
30 1 Всеволод Дорофеев
			Продолжить;
31 1 Всеволод Дорофеев
		КонецЕсли;
32 1 Всеволод Дорофеев
		
33 1 Всеволод Дорофеев
		НайденнаяСсылка = Выборка.Ссылка;
34 1 Всеволод Дорофеев
		Прервать;
35 1 Всеволод Дорофеев
		
36 1 Всеволод Дорофеев
	КонецЦикла;
37 1 Всеволод Дорофеев
	
38 1 Всеволод Дорофеев
	Возврат НайденнаяСсылка;
39 1 Всеволод Дорофеев
	
40 1 Всеволод Дорофеев
КонецФункции
41 1 Всеволод Дорофеев
42 1 Всеволод Дорофеев
43 1 Всеволод Дорофеев
44 1 Всеволод Дорофеев
&НаСервере
45 1 Всеволод Дорофеев
Функция ПолучитьНоменклатуруПоGUID(СтрокаGUID)
46 1 Всеволод Дорофеев
	
47 1 Всеволод Дорофеев
	Рез = Справочники.Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(СтрокаGUID));
48 1 Всеволод Дорофеев
		
49 1 Всеволод Дорофеев
	Если ПустаяСтрока(Рез.ВерсияДанных) Тогда
50 1 Всеволод Дорофеев
		Рез = НайтиСсылкуПоПубличномуИдентификатору(СтрокаGUID, Объект.УзелКорреспондента, Тип("СправочникСсылка.Номенклатура"));
51 1 Всеволод Дорофеев
	КонецЕсли;	
52 1 Всеволод Дорофеев
	
53 1 Всеволод Дорофеев
	Возврат Рез;
54 1 Всеволод Дорофеев
	
55 1 Всеволод Дорофеев
КонецФункции
56 1 Всеволод Дорофеев
57 1 Всеволод Дорофеев
</pre>