====== УИД или уникальный идентификатор ======
===== Описание =====
УИД это определенное значение, однозначно идентифицирующее объект ссылочного типа данных, другими словами, это и есть ссылка уникальная в рамках одной конкретно взятой таблицы, например у справочника номенклатура. УИД есть у любого объекта имеющего ссылочный тип данных, из синтаксис помощника следует, что УИД имеет следующий вид: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", где Х - символы обозначающие шестнадцатеричное число. Прочитать какой текущий уникальный идентификатор существует у ссылки можно с помощью метода ''УникальныйИдентификатор()'' например:
КонтрагентПетров = Справочники.Контрагенты.НайтиПоНаименованию(«Петров Иван Сергеевич»);
УИД = КонтрагентПетров. УникальныйИдентификатор();
===== Использование своего УИД при создании объекта =====
Изменить УИД у существующего объекта, штатными средствами встроенного языка нельзя. Зато можно при создании нового объекта указать свой УИД. Для этого нужно сделать несколько действий:
- Сгенерировать значение типа УИД, используя нужную нам строку(или не используя, как вам будет удобно)
СтрокаGUID = "a763cfbb-f94f-4c67-8e13-0e96a3a7f353";
НовыйGUID = Новый УникальныйИдентификатор(СтрокаGUID);
//или просто
НовыйGUID = Новый УникальныйИдентификатор;
- Получить ссылку из уже существующего УИД, нужного нам типа: СсылкаСНовымКлиентом = Справочники.Клиенты.ПолучитьСсылку(НовыйGUID);
- Установить эту ссылку новому объекту
НовыйКлиент = Справочник.Клиенты.СоздатьЭлемент();
НовыйКлиент.УстановитьСсылкуНововго(СсылкаСНовымКлиентом);
**Подсказка**. Если мы создаем УИД из конкретно взятой строки, то мы можем получить УИД существующего объекта и следовательно в шаге два получить не новую ссылку, а вполне себе существующую. В таком случае при записи объекта полученного в шаге три, система сообщит о том, что не может записать объект с неуникальной ссылкой. Зато получение ссылки по строковому идентификтору, очень удобно использовать при синхронизации между разнородными системами(не 1С) или между разными базами.
----
===== Ссылки =====
[[http://ru.wikipedia.org/wiki/GUID|Описание GUID на википедии http://ru.wikipedia.org/wiki/GUID]]