1с длина уникального идентификатора

К сожалению, 1С не создало тип GUID для хранения в базе данных 32-разрядных шестнадцатеричных чисел GUID (Уникальный идентификатор).

Тип число в 1С не годится для представления типа GUID, т.к. позволяет хранить только 32 разряда числа, а требуется 40 десятичных разрядов.

32-разрядное представление уникального идентификатора(GUID).

Для представления ГУИД в шестнадцатеричной системе счисления с помощью символов 0-F требуется 32 символа. Можно банально хранить GUID как строку фиксированной длины из 32 символов.

Хранение, как ссылки на некий справочник

Можно в тех местах, где нужен GUID, хранить ссылку на любой справочник. Известно, что ссылка в 1С является GUID, необходимо только правильно сгенерировать ссылку. К сожалению метод слишком завязан на «железную» реализацию платформы и никто не гарантирует его работоспособности, если 1С перейдет на другой механизм хранения ссылок.
К тому же метод влечет за собой возникновение множества ложных ошибок при тестировании и исправлении базы данных – в базе получается много ссылок на несуществующие объекты.

26-разрядное представление уникального идентификатора(GUID).

Для представления ГУИД в 37-ричной системе счисления с помощью символов 0-Z и символа «_» требуется 26 символов.

Как видно, разница небольшая, всего 6 символов.
Поэтому имеет смысл использовать данную систему только тогда, когда очень хочется сэкономить.

В то же время, представление в ГУИД в 16-ричной системе более наглядно.
Почему используются только большие буквы? В 1С поиск по строке осуществляется без учета регистра, кроме того, если мы используем ГУИД как часть имени файла, то многие операционные системы не делают различия между регистром названий файлов.

Можно набросать простенький код для перевода числа из 16-ричной системы счисления в 37-ричную. ;-)

Вот примеры пересчета ГУИД:

0000000000000000000000000000000000FF=000000000000000000000000X6 2
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF=X0QU10QU10QU10QU10QU10QU16
3C486F82BCD0470B9C9954D58ED31998=0QKGEPJPVC524PZVADM0WHIOU1
98F44976C99146DA8FF2741A87A0278E=0ATQCT3AWY7WJMYVMANQ5V24_1
9DCD1326700F41DDB2A23992CA7B2F29=0ZQ3OL6GF7SO6X8AAYT1W2OHG5
4697F0D583A642138D7A839F12EB2597=0AG3VDSAEOJ339JFT_JGXQ7IV1
04BAF75F931741018FF24D3096DA8A19=0YLOPXUF3NX0JD2F__KKUL5TS4
806DD6A75E1245F481130ED9198AADE0=0FW5ND_Y79BAQA7ZC4UG1XD631
CA711D88A91C425E9B5EDEC95F0C7D28=0JOAC599FO4YF9502JCU3L8D5S
A0D0FF564CF04363A15E64494A962070=001DS6VYGX4OGBLQ9EQ1IBRKH5
A6FC517826514CE78CE9F4E5329617FD=01TGBOAWQA73E2BR76_U2IDQT9
97A6140DDB574FDB9C819162D8E64291=0WGX7_81M2JDIJAVMMX7AGCT41
EA209D6C21B14AA5BD0FF374027039E6=0_48OD18EUNJ6D6VO2DAKFXXK2
0DA4DD733D594BFAB78D2BC54866D02A=0ERQDEQUX2QT6O2A4G_EBPVMS4
2FDC07EFA6CC4A08A1409005C6AC7005=061EW1976412LEMVGDGA6NI8HD
034E85F5915048E6ACE4CCE078994FC5=0IAXQJZA2718017R6166QBAV88
D681A4EBEE164C10918D4C95D6DFD2EE=0GO8STJ995OFLRP5HRFM3X73W9
F406AFF60BF1410F8DAA90C9FD3B9F9D=0WL4S4L44GG5SM6E30M3GQFSVV
E5B6DA8F14894BD99872B83E7C23A132=06SP1P_DTO2NL36XPFS9LQIB91
C817D69E58B145B48ABA5B9AB7B1FE9C=0GKAO8MI2B5Z_VUWSXX44W3SQA
046DBDAA1B6049148411EDC6EAB79406=0MUPX55ZJ9E5JPQF3CCJ4H8NX3
3E8AD2CE3EF34CD0A71F8438251A96C5=0I13TW0KFTDY94IOX_JUO8H592

В любой конфигурации 1С 8 у каждого объекта(документа, элемента справочника, элемента плана видов характеристик и т.п.) есть уникальный идентификатор(УИН). При помощи него можно переносить объекты между базами РИБ не боясь задвоения данных, быстро находить элемент справочника или документ и т.п.

Как получить уникальный идентификатор из ссылки? При помощи свойства ссылки УникальныйИдентификатор(). Пример 1:

Уникальный идентификатор в 1С 8 имеет тип УникальныйИдентификатор, но его можно преобразовать и в строковое значение(получится строка вот такого вида: 9712e912-d0b9-11e1-b37b-0050568458ce).

Как получить ссылку имея уникальный идентификатор? При помощи метода ПолучитьСсылку( ) менеджера справочника, документа и т.п.

Пример 4 (Здесь УИН — значение типа УникальныйИдентификатор):

Пример 5(Здесь СтрокаУИН — переменная со строковым значением уникального идентификатора):

В примере 5 уникальный идентификатор получается из строкового значения при помощи конструктора Новый УникальныйИдентификатор( )

Код позволяет получить информацию о дате и времени создания объекта ИБ (документ, элемент справочника) по уникальному идентификатору (GUID)

Позволяет узнать, когда был создан документ или элемент справочника. Для получения информации используется уникальный идентификатор объекта в ИБ.

Понравилась статья? Поделиться с друзьями:
Vkontakte.INFO
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: