Можно ли изменить уникальный идентификатор у уже существующего элемента? #674440


#0 by Dunstan
Есть элемент справочника Организации можно ему сделать новый УИН как для  нового?
#1 by cw014
Только у нового можно УИД поставить. Или запросами прямыми. По сути конечно и в файловой можно, но нужно знать как
#2 by Dunstan
а поменять УИД между старым и Новым?
#3 by MSOliver
Средствами 1с нельзя
#4 by Maxus43
нельзя поменять у существующего уже. зачем?
#5 by cw014
Что бы значил твой вопрос?
#6 by Шапокляк
Создать новый с заданным уидом и подменить им старый во всех ссылках на него.
#7 by Maxus43
Вот тебе замена ссылки у существующего
#8 by Lenny
Сделай новую организацию и ссылки перебрось
#9 by cw014
Задачу объясни конкретнее, зачем тебе это надо?
#10 by Maxus43
Нет задачи, даже в теории чтобы надо было поменять у существующего ГУИД
#11 by cw014
Иногда это нужно, например для обмена данными, или прямых запросов, в которых завязано на УИДе
#12 by MSOliver
Это будет уже другой элемент, такое проканает только с не ссылочными данными
#13 by Dunstan
Много баз сливают в одну. Базы делались из одной "рыбы". Т.е. был объект "Наша организация" со своим УИД. Брали Нашу Организацию и делали из нее ООО "Ромашка". Теперь эти лютики и ромашки надо слить в одну базу. И при заливке через ВыгрузкуЗагрузкуДанныхХМЛ Ромашка затирает Лютик и наоборот. Поэтому было бы хорошо в Ромашке поменять УИД заранее чтоб ничего не затереть. Делаю как поиск и замена значений, но очень уж долго работает...
#14 by Maxus43
Прямые запросы - нарушение соглашения. Для обменов - делается по сути , т.е. стандартная поиск и замена ссылок, Или регистр соответсвия объектов ИБ юзается... короче задача решается не таким путём как хочет автор
#15 by dmpl
Как насчет ситуации, когда при обмене у разных объектов совпали идентификаторы?
#16 by cw014
Лучше не УИДы меняй, а поменяй названия и прочую инфу между собой. А УИДы оставь как есть А мне все равно на соглашение, ибо база данных является моей собственностью
#17 by MSOliver
ну почему, сливаем данные из двух таблиц в одну - возможно Уиды совпадут
#18 by Живой Ископаемый
2 такого не бывает.
#19 by Maxus43
>>А мне все равно на соглашение нуну...
#20 by Живой Ископаемый
2 из каких двух таблиц?
#21 by Dunstan
Загрузка выгрузка идет по УИДАм
#22 by Maxus43
бывает, за 4 года 1 раз словил :) Но решение не , а опять же Поиск и замена значений. Сиречь создание нового элемента и перекидывание на него ссылок во всей базе
#23 by MSOliver
теоретически возможно даже если база не потомок
#25 by MSOliver
из любых ссылочных
#26 by Maxus43
> за 4 года 1 раз словил
#27 by Dunstan
Ну так что, граждане, есть выход из тунеля?
#28 by Живой Ископаемый
2 не бывает, разве только сделать так специально. А раз специально сделали - значит думали когда делали. 2 и кто же завел в двух разные объектынх таблицах записи с пересекающимися уидами и зачем он это сделал?
#29 by Живой Ископаемый
2 тебе уже сказали, что нет.
#30 by Maxus43
бывает. В разных ИБ - свой независимый генератор гуидов, пересечение их возможно в теории, но вероятность стремится к нулю
#31 by Живой Ископаемый
2 настолько быстро сремится к нулю, что то о чем ты описал без специальных действий ты мог словить самое ранее через миллиард лет, а не за четыре года.
#32 by maxar
настрой загрузку/выгрузку организаций не по УИДАм ,а  по ИНН , в чем проблема то...
#33 by Maxus43
когда нибудь случается в первый раз, у меня так документ по обменам бегал, в 2-х разных узлах создались одинаковые гуиды
#34 by mdocs
Какое-то глупое ограничение платформы тянущееся много лет, может в 9.0 все-таки разрешат.
#35 by Maxus43
последствия представляешь? вот автор заменит гуид - и пол базы в битых ссылках. Красота, да
#36 by dmpl
Любая вероятность 50% - либо случится, либо нет. (с)
#37 by Maxus43
+ вообще - одинаковые гуиды можно найти в больших РИБ базах, но очень редко попадается что они в одном виде документа-справочника
#38 by Живой Ископаемый
2 что разрешат? Что если поменять уид в записи, то во всех других записях уид тоже автоматом поменятся, и это будет происходить мгновенно?
#39 by Maxus43
есть, но не такой как в . Если сливаешь по обменам - вобще проблем нет же, см
#40 by Torquader
Уид - это "фактически" номер объекта в его таблицы. Во всех местах, где идёт ссылка на объект, указывается этот номер. Что будет, если у какой-то записи мы поменяем "номер" - это уже будет другая запись, а от старой останутся неразрешимые ссылки, так как она будет ссылаться на номер, которого нет. То есть, даже если вам каким-то чудом удастся подменить GUID в таблице объекта, всё равно придётся запускать обработку поиска и замены значений, чтобы поменять все ссылки.
#41 by mdocs
Про мгновенно никто не говорит. Но метод такой необходим. Одним общепринятым извращением станет меньше.
#42 by Живой Ископаемый
2 этот метод реализуем изменением уида в ведущей таблице средствами SQL и во всех ведомых. Или через поиск и замену значений. Если кто-то не знает этого или не умеет этого - то это уже его проблемы а не 1С.
#43 by МЮЛЛЕР
> Можно ли изменить уникальный идентификатор у уже существующего элемента База 10 ГБ размером. Как ты себе это представляешь?
#44 by mdocs
Средства скл давно стали стандартными в файловом варианте?
#45 by mdocs
бзик-бзик-бзик в 1000 раз быстрее чем перенести 10Гб документов на новую организацию
#46 by Живой Ископаемый
2 Не стали вообще. НО и создать другой элемент справочника и запустить поиск и замену значений в файловом варианте - тоже не очень долго. Если вдруг это долго, то значит либо базе давно стоит быть в клиент-серверном варианте, либо опять же, не делать вообще
#47 by mdocs
из-за отсутсивя элементарного метода приходится выбирать какой изврат менее гиморен в данном случае. типично одинэсный подход)
#48 by МЮЛЛЕР
думаю, напрямую в таблице SQL можно поменять
#49 by Живой Ископаемый
2 бзик-бзик-бзик и есть перенести документы на новую организацию, и ТС говорит что это медленно у него.
#50 by Живой Ископаемый
2 да нет, типично одинэсный подход говорить что метод которого не должно быть вообще, нужен
#51 by МЮЛЛЕР
> бзик-бзик-бзик в 1000 раз быстрее не получится так на физическом уровне.  GUID - это ссылка. Это то же самое, что ты во всех таблицах документов новую ссылку пропишешь.
#52 by mdocs
изменение ссылки во всех таблицах сравниваешь с полным перепроведением документов по новой организации? совесть есть?
#53 by Живой Ископаемый
2 кто сказал о полном перепроведении? ты давно заглядывал в поиск и замену значений?
#54 by МЮЛЛЕР
напиши правила обмена или возьми с БСП
#55 by МЮЛЛЕР
+ там есть возможность проассоцииоровать один элемент с другим
#56 by МЮЛЛЕР
регистр соответствий
#57 by mdocs
Возможно, возможно и сопоставимо по времени, но  все равно куча ненужных телодвижений, часть стандартных алгоритмов проверки документов все равно отрабатывает. Прямая замена все равно работала бы гораздо корректнее и не зря ты советуешь скуль юзать.
#58 by Живой Ископаемый
2 зачем она отрабатывает? потому что криворукие программисты не поставили проверку на ОбменДанными.Загрузка?
#59 by Serg_1960
, посмотри в своей конфигурации наличие регистра сведений  СоответствиеОбъектовДляОбмена. И если он есть - изучи зачем он нужен и как его использует конфигурация.
#60 by dmpl
Заменить 1 поле быстрее, чем переписывать весь объект.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С