Имя: Пароль:
1C
Админ
Задвоение guid в базе 1С
, ,
0 МеталлКор
 
06.06.14
16:16
1 Wobland
 
06.06.14
16:17
не интересно. следующий
2 МеталлКор
 
06.06.14
16:17
Собственно вопрос, как такое возможно?
3 МеталлКор
 
06.06.14
16:18
(1) проверил строку, все совпадает. Если проверять условие по равенству гуидов - результат Истина
4 Fragster
 
гуру
06.06.14
16:18
(2) а кто тебе обещал уникальность в пределах всей базы?
5 Fragster
 
гуру
06.06.14
16:18
в каждый элемент метаданных в ссылку можно написать один и тот же ГУИД
6 МеталлКор
 
06.06.14
16:19
(4) УникальныйИдентификатор (UUID)
Конструкторы:

Из строки
По умолчанию

Описание:

Предназначен для создания и хранения глобального УНИКАЛЬНОГО идентификатора GUID.
7 МеталлКор
 
06.06.14
16:20
(5) каким образом это можно сделать?
8 Fragster
 
гуру
06.06.14
16:20
(2)

Для каждого МетаСправочник Из Метаданные.Справочники Цикл
  
Объект = Справочники[Метасправочник.Имя].СоздатьЭлемент();
Объект.УстановитьСсылкуНового(Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000001"));
Объект.Записать();
КонецЦикла;
9 Fragster
 
гуру
06.06.14
16:21
ну, только подчиненные еще выкинуть надо
10 Fragster
 
гуру
06.06.14
16:22
(6) и как из этого следует уникальность идентификаторов у ссылок в БД?
11 МеталлКор
 
06.06.14
16:22
(9) Весьма странно. то есть, на уровне БД нет никаких инструментов, позволяющих вести строгую уникальность в рамках одной базы?
12 Fragster
 
гуру
06.06.14
16:23
Вернее как-то так


УИ = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000001");

Для каждого МетаСправочник Из Метаданные.Справочники Цикл

  Менеджер = Справочники[Метасправочник.Имя];
Объект = Менеджер .СоздатьЭлемент();
Объект.УстановитьСсылкуНового(Менеджер.ПолучитьСсылку(УИ));
Объект.Записать();
КонецЦикла;
13 Fragster
 
гуру
06.06.14
16:23
(11) а зачем?
14 ДенисЧ
 
06.06.14
16:23
(11) А назачем это нужно?
15 МеталлКор
 
06.06.14
16:25
(10) я делаю вывод, что на уровне БД формирование гуидов выполняется, но никак не контролируется, судя по тому, что пользователь может сам устанаваливать гуиды, одни и те же и т.д.
Пока не задался вопросом конкретно на практике -  не вдумаывался в эти вещи. всем спасибо за обсуждение.
16 Fragster
 
гуру
06.06.14
16:27
(15) контролируется в пределах метаданных
17 ivanov-i-i
 
06.06.14
16:29
Если это УТ 10.3, то элемент справочника "Контактные лица" Юрченко Петр Тимофеевич является элементом справочника "Контактные лица контрагентов" - никакого задвоения GUID.
18 МеталлКор
 
06.06.14
16:30
(16) имеется ввиду в пределах конкретного типа одного справочника?
(17) Это разные справочники. просто один подчиненен другому. конфигурация УПП.
19 Fragster
 
гуру
06.06.14
16:33
(18).1 ну, типа того. не только справочников, но и всех ссылочных типов
20 ptiz
 
06.06.14
16:35
Это не результат какого-нибудь переноса/обмена?
21 f_vadim
 
06.06.14
16:36
(0) а как обнаружил?
22 ivanov-i-i
 
06.06.14
16:36
(18) Ну и что, что УПП, структура там по этой части одинакова. Зайди в справочник "Контактные лица контрагентов" и нажми на кнопку http://yadi.sk/d/ZsBbz321SVRVP
23 Fragster
 
гуру
06.06.14
16:38
(20) ясен фиг результат
24 МеталлКор
 
06.06.14
16:40
(20)  сказать сложно. как такое могло получиться.может и обмен. Делаю отладку самописого обмен данным 1с с базой PS SQL, в ходе отладки и наткнулся. можно сказать случайно.
25 х86
 
06.06.14
16:41
(23)+
при обменах такое часто бывает
26 МеталлКор
 
06.06.14
16:41
(17) Вопрос заключался в том, что у двух разных справочников в рамках ОДНОй бд появилось два гуида.
27 ivanov-i-i
 
06.06.14
16:42
+(22) И у тебя откроется справочник "Контактные лица" в котором ты и выберешь Контактное лицо из списка уже созданных и это будет не новый элемент.
28 МеталлКор
 
06.06.14
16:42
(27) (26)
29 ivanov-i-i
 
06.06.14
16:47
30 acsent
 
06.06.14
16:48
(6) Если новый создаешь, то он ГЛОБАЛЬНО уникальный. А в базе может что угодно храниться
31 Fragster
 
гуру
06.06.14
16:49
(30) да фиг там
32 wPa
 
06.06.14
16:49
(0) они в пределах типа метаданных контролируются. но вообще странно, что одинаковые - там зашито время в миллисекундах от 1640г при записи объекта. не могут быть одинаковые без искусственного создания через ПолучитьСсылку УстановитьСсылкуНового
33 Fragster
 
гуру
06.06.14
16:51
(32) там не зашито время в миллисекундах от 1670г
34 Fragster
 
гуру
06.06.14
16:51
могут быть одинаковые в разных МД при записи и без получитьссылкунового
35 МеталлКор
 
06.06.14
16:51
(29) И что ты мне пытаешься показать)))?Поверь, я знаком с структурой УПП, УТ.
два справочника, у одного реквизит с ссылкой на другой. Что ты хочешь этим сказать? что у них должен быть одинаковый ГУИД?
36 Fragster
 
гуру
06.06.14
16:52
а еще попоболь случается, когда оно безо всяких "установитьссылкунового" в разных узлах РИБ создается с одним ГУИДом
37 ivanovnm
 
06.06.14
16:53
Уникальный идентификатор уникален в пределах одной таблицы. Уникальный идентификатор не типизирован. Если его типизировать, он будет уникальным в пределах всей базы.
38 wPa
 
06.06.14
16:53
(33) дай гуид скажу время создания
39 Fragster
 
гуру
06.06.14
16:54
0a621c20-b5c8-45ca-9293-6c7aa0008fbb
40 acsent
 
06.06.14
16:56
(31) Покажи способ воспроизведения создания 2х одинаковых гуидов
41 Fragster
 
гуру
06.06.14
16:58
(40) случилось (36)
42 Fragster
 
гуру
06.06.14
16:58
достаточно 1000 человек, 100 узлов и несколько лет работы
43 H A D G E H O G s
 
06.06.14
16:59
(38) Максимум дату
44 H A D G E H O G s
 
06.06.14
17:00
У автора была замечательная обработка переноса, написанная кривопопым программером, че возбудились?
45 wPa
 
06.06.14
17:01
(39) 17.09.2007 10:58:45
46 acsent
 
06.06.14
17:01
(44) почему кривопопым?
При переносе нормально что гуиды источника сохраняются
47 Fragster
 
гуру
06.06.14
17:01
(45) не угадал. 06.06.2014 16:20
48 Aleksey
 
06.06.14
17:01
При КД такое может быть, когда источник один а получатели разные
49 wPa
 
06.06.14
17:02
(47) Уникальный идетификатор или реальный ГУИД ссылки?
50 ivanov-i-i
 
06.06.14
17:03
(35) Хорошо, прокомментируй это http://yadi.sk/d/dF7asV5XSVZxr
Видео лучше сначала скачать, а то качество не айс.
51 Fragster
 
гуру
06.06.14
17:03
(49) уникальный идентификатор
52 Aleksey
 
06.06.14
17:04
(38)
fd176313-3303-2363-0303-330323338060
53 H A D G E H O G s
 
06.06.14
17:04
(46) Для одинаковых по физ. смыслу элементов справочника
КонтактныеЛица
КонтактныеЛицаКонтрагентов

программер, при их программном создании, дятел забыл пересоздать УИД
54 Fragster
 
гуру
06.06.14
17:04
(53) там один другому подчинен, забей
55 Aleksey
 
06.06.14
17:05
(53) Сам ты дятел. А как потом отслеживать и менять?
56 Fragster
 
гуру
06.06.14
17:05
(54)+ а в источнике, наверняка, один справочник
57 H A D G E H O G s
 
06.06.14
17:05
(56) КД ?
58 wPa
 
06.06.14
17:06
(51)(52)  он не ссылочный 1С - 13 символ не 1 (единица)
59 Aleksey
 
06.06.14
17:07
(58) не понял?
Справочники.Номенклатура.НайтиПокоду("Рп-00014281").УникальныйИдентификатор()    
fd176313-3303-2363-0303-330323338060
60 wPa
 
06.06.14
17:12
(59) не платформой создан
61 МеталлКор
 
06.06.14
17:12
(29) ну и что комментировать? создал КЛ, подвязал его к КЛК.
Первый КЛ переименовал, перепривязал. при чем тут гуид?
62 Aleksey
 
06.06.14
17:13
(60) Мои гуды, как хочу так и создаю
63 H A D G E H O G s
 
06.06.14
17:15
(56) Ну единственный вариант.
64 ivanov-i-i
 
06.06.14
17:16
(61) Ты не понимаешь, что у тебя в КЛК не новый элемент, а элемент справочника КЛ. Это один и тот-же элемент, почему у него должен быть разный ГУИД?
65 х86
 
06.06.14
17:16
было дело я два УИНа ксором скрещивал,
ничего вроде до сих пор поделка работает
66 wPa
 
06.06.14
17:17
(62) однозначно. но время создания получается из сиквельной хранимки только при создании платформой

3-й коммент
http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=603471

wiki:Григорианский_календарь
67 ivanov-i-i
 
06.06.14
17:26
+(64) Я не прав(((.
68 Fragster
 
гуру
06.06.14
17:33
(58)

Выборка = мРезультатЗапроса.Выбрать();
Сч = 0;
Пока Выборка.Следующий() Цикл
    Стр = XMLСтрока(Выборка.Ссылка);
    Если Сред(Стр, 13, 1) = "1" Тогда
        Сч = Сч + 1;
    КонецЕсли;
КонецЦикла;
Сообщить("" + Сч + " / " + Выборка.Количество());

926 / 16 606
69 Fragster
 
гуру
06.06.14
17:33
(68)+ примерно одна шестнадцатая, т.е. равномерное распределение
70 Fragster
 
гуру
06.06.14
17:34
а вот     Если Сред(Стр, 15, 1) = "1" Тогда дает 100% попадания... интересно...
71 alexei366
 
06.06.14
17:53
Чо за демогогия.
Там походу ПриЗаписи одного из представленных объектов создается и другой и прописана установка новой ссылки из гуида предыдущего, ну по крайне мере мне так кажеться.

А задвоение гуида в рамках одной таблицы (типа сгенерился гуид прогой который уже есть), эт блин мало вероятно.
Есть такая тема Электронный документо-оборот с ФТС, кидаются xml-ками, гдето наверно по тысяч не знаю 20 в день, каждое сообщение помечатся случайно сгенеренным гуидом, и пока я не встречал таких случаев чтоб за 3-4 года гдето повторился (а в некоторых сообщениях ещё и несколько доков с гуидами, доки тоже по уникальности смотряться).
72 Bober
 
06.06.14
18:55
(71) +1
73 Fragster
 
гуру
06.06.14
19:36