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