Как получить уникальный идентификатор GUID в 1С: различия между версиями

Материал из WiKi - IQ Company
Перейти к навигации Перейти к поиску
Новая страница: «== Что такое GUID в 1С? == GUID – это объект матричной таблицы в системе базы данных из шестнадцатеричных символов, заключенных в круглые скобки и прописанных через дефис. Он формируется с учетом времени и места, указывающего на расположение этого объекта (сп...»
 
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
== Что такое GUID в 1С? ==
== Что такое GUID в 1С? ==
GUID – это объект матричной таблицы в системе базы данных из шестнадцатеричных символов, заключенных в круглые скобки и прописанных через дефис. Он формируется с учетом времени и места, указывающего на расположение этого объекта (справочника, документа). Первая половина этого кода является расчетом времени, вторая – местом, где хранится объект. GUID в 1С создается в момент создания объекта. Подобно массивам объект хранится в определенной таблице, на определенном столбце с определенной строкой. При определенном попадании в эти 100 наносекунд могут формироваться абсолютно идентичные объекты. Это настолько мало вероятно, как проверить на уникальность все значения за 10 млрд лет.
'''GUID''' – это объект матричной таблицы в системе базы данных из шестнадцатеричных символов, заключенных в круглые скобки и прописанных через дефис. Он формируется с учетом времени и места, указывающего на расположение этого объекта (справочника, документа). Первая половина этого кода является расчетом времени, вторая – местом, где хранится объект. GUID в 1С создается в момент создания объекта. Подобно массивам объект хранится в определенной таблице, на определенном столбце с определенной строкой. При определенном попадании в эти 100 наносекунд могут формироваться абсолютно идентичные объекты. Это настолько мало вероятно, как проверить на уникальность все значения за 10 млрд лет.


В Базе данных для каждого объекта предназначен свой глобальный уникальный идентификатор - GUID (Globally Unique Identifier). Он представляет из себя ссылку из 32 символов, разделенных дефисами, которая состоит из 16 октетов. В первой части содержится время генерации уникального идентификатора, во второй – счетчик и MAC-адрес. Отсчет времени для генерации кода Guid идет с 15 октября 1582 года с интервалом на 100 наносекунд.
В Базе данных для каждого объекта предназначен свой '''глобальный уникальный идентификатор - GUID (Globally Unique Identifier)'''. Он представляет из себя ссылку из 32 символов, разделенных дефисами, которая состоит из 16 октетов. В первой части содержится время генерации уникального идентификатора, во второй – счетчик и MAC-адрес. Отсчет времени для генерации кода Guid идет с 15 октября 1582 года с интервалом на 100 наносекунд.


Вот так выглядит GUID БД 1С: 3de72ee8-f8b2-11e4-92f1-0050568b35ac
Вот так выглядит GUID БД 1С: 3de72ee8-f8b2-11e4-92f1-0050568b35ac
Строка 10: Строка 10:


Это зеркальное отражение уникального идентификатора в 1С 8.3.
Это зеркальное отражение уникального идентификатора в 1С 8.3.
[[Файл:Screenshot 2026 05 26-5.png|без|мини|908x908пкс]]
[[Файл:Ссылка на расходную накладную.png|без|мини|908x908пкс]]
[[Файл:Ссылка.jpg|без|мини|673x673пкс]]
Совпадений разных объектов одной базы крайне малы, т.к. общее количество сгенерированных ключей составляет (2128 или 3,402 * 10в38).
Этот 128-битный код информации определяется ссылкой на тип метаданных, содержащий информацию об объекте. Генерация Guid происходит не только в пространстве, но и во времени псевдослучайным набором чисел. Непрерывно сформированные GUIDы используются в качестве первичных ключей в базе данных.
== Чем отличается GUID от UUID? ==
'''UUID''' – универсально-уникальный идентификатор по данным всемирной организации стандартизации версии RFC4122. Этот термин используется в спецификациях протокола Windows как синоним GUID в 1С. Он должен быть полностью технически совместим с RFC4122. Из рекомендаций Международного стандарта "Все стандарты UUID, соответствующие этой Рекомендации, должны иметь биты варианта с битом 7 октета 7, установленным в 1 и бит 6 октета 7, установленным в 0".
== Как получить уникальный идентификатор зная UUID в 1С ==
Итак, как же получить GUID зная UUID в 1С?
В конструкторе запроса необходимо создать запрос:
'''''СправочникСсылка=Справочники.ИмяСправочника.НайтиПоНаименованию(«Наименование»);'''''
'''''GUID=СправочникСсылка.УникальныйИдентификатор()'''''
Для установления соответствия объектов разных БД используется GUID.
Необходимо указать узел обмена и тип объекта (склад, договор, контрагент и т.д.). В «источнике» базы данных нужно указать объект, с которым будет устанавливаться соответствие с объектом из «приемника» БД.

Текущая версия от 14:33, 26 мая 2026

Что такое GUID в 1С?

GUID – это объект матричной таблицы в системе базы данных из шестнадцатеричных символов, заключенных в круглые скобки и прописанных через дефис. Он формируется с учетом времени и места, указывающего на расположение этого объекта (справочника, документа). Первая половина этого кода является расчетом времени, вторая – местом, где хранится объект. GUID в 1С создается в момент создания объекта. Подобно массивам объект хранится в определенной таблице, на определенном столбце с определенной строкой. При определенном попадании в эти 100 наносекунд могут формироваться абсолютно идентичные объекты. Это настолько мало вероятно, как проверить на уникальность все значения за 10 млрд лет.

В Базе данных для каждого объекта предназначен свой глобальный уникальный идентификатор - GUID (Globally Unique Identifier). Он представляет из себя ссылку из 32 символов, разделенных дефисами, которая состоит из 16 октетов. В первой части содержится время генерации уникального идентификатора, во второй – счетчик и MAC-адрес. Отсчет времени для генерации кода Guid идет с 15 октября 1582 года с интервалом на 100 наносекунд.

Вот так выглядит GUID БД 1С: 3de72ee8-f8b2-11e4-92f1-0050568b35ac

Его UUID можно получить по ссылке. e1cib/data/Документ.ПриходныйОрдерНаТовары?ref=92f10050568b35ac11e4f8b23de72ee8

Это зеркальное отражение уникального идентификатора в 1С 8.3.

Совпадений разных объектов одной базы крайне малы, т.к. общее количество сгенерированных ключей составляет (2128 или 3,402 * 10в38).

Этот 128-битный код информации определяется ссылкой на тип метаданных, содержащий информацию об объекте. Генерация Guid происходит не только в пространстве, но и во времени псевдослучайным набором чисел. Непрерывно сформированные GUIDы используются в качестве первичных ключей в базе данных.

Чем отличается GUID от UUID?

UUID – универсально-уникальный идентификатор по данным всемирной организации стандартизации версии RFC4122. Этот термин используется в спецификациях протокола Windows как синоним GUID в 1С. Он должен быть полностью технически совместим с RFC4122. Из рекомендаций Международного стандарта "Все стандарты UUID, соответствующие этой Рекомендации, должны иметь биты варианта с битом 7 октета 7, установленным в 1 и бит 6 октета 7, установленным в 0".

Как получить уникальный идентификатор зная UUID в 1С

Итак, как же получить GUID зная UUID в 1С? В конструкторе запроса необходимо создать запрос:

СправочникСсылка=Справочники.ИмяСправочника.НайтиПоНаименованию(«Наименование»); GUID=СправочникСсылка.УникальныйИдентификатор()

Для установления соответствия объектов разных БД используется GUID.

Необходимо указать узел обмена и тип объекта (склад, договор, контрагент и т.д.). В «источнике» базы данных нужно указать объект, с которым будет устанавливаться соответствие с объектом из «приемника» БД.