Имя: Пароль:
1C
1С v8
уникальный идентификатор строки
,
0 Sveta784
 
22.05.20
00:35
Добрый день.
Мне нужно строке присваивать уникальный идентификатор.
Пока у меня есть только реквизит табличной части, куда мне его нужно записывать.
Есть какие-нибудь варианты реализации?
1 lodger
 
22.05.20
00:39
(0) есть.
шаг 1) всем строкам ТЧ которые уже есть в базе сгенерировать и записать УИ.
шаг 2) создать метод генерации УИ при добавлении строк. жедательно интерактивно.
шаг 3) добавить велосипедов и костылей по вкусу.
2 Chameleon1980
 
22.05.20
05:09
(0) п2 из 1 методом Новый уникальныйИдентификатор
3 mistеr
 
22.05.20
08:45
(0) Заведи справочник.
4 Cyberhawk
 
22.05.20
09:50
Уникальный в пределах чего?
5 fisher
 
22.05.20
10:18
(0) "нужно строке присваивать уникальный идентификатор"
Тут нужно очень хорошо подумать. Лучше расскажи, зачем это надо.
Потому что если неправильно выберешь между (3) и (2), то будет больно.
6 lodger
 
22.05.20
10:25
(5) в перспективе, УИНы можно в пару нехитрых финтов перековать в справочник.
7 fisher
 
22.05.20
10:28
(6) Плюс добавить немножко усилий и переписать все, что вокруг этого уже понастроено к этому моменту.
8 Fish
 
22.05.20
10:31
(4) 1С, емнип, гарантирует уникальность УИДа в пределах базы.
9 fisher
 
22.05.20
10:40
(8) Принудительно зафигачить одинаковые гуиды в рамках одной базы - никакой проблемы. Если в базе только гуиды, которые в ней штатно генерились, то да - алгоритм генерации предполагает отсутствие дублей. Но вообще в (4) спрашивали не об этом. А с намеком на возможность более оптимальной реализации.
10 yzimin
 
22.05.20
10:49
Хороший пример есть в УТ11\КА2\ERP для документа Задание на перевозку
11 fisher
 
22.05.20
10:53
Вообще, алгоритм генерации гуидов предполагает их уникальность даже не в пределах базы, а в пределах планеты :)
Теоретически коллизии возможны, но крайне маловероятны.
12 mistеr
 
22.05.20
11:04
(11) "Предполагает", но не "гарантирует" (8)
А вот справочник гарантирует.