Как из плана обмена вытащить GUID внешнего объекта #589581


#0 by ЭЦ
ГОСПОДА ! Имеется план обмена. Нужно получить из него GUID объекта принадлежащего внешней базе с которой связан объект текущей базы. Подскажите пож. имеется ли такая возможность и как.
#1 by simol
Объекта чего? Базы или конфигурации?
#2 by Рэйв
Если что связанные объекты имеют одинаковые гуиды
#3 by ЭЦ
Нужен GUID объекта (например элемента справочника) из внешней базы
#4 by ЭЦ
А если нужный GUID уже занят ранее во внешней базе?
#5 by Рэйв
Он не может быть занят.
#6 by Рэйв
+Если гуид находится- значит это связаный объект
#7 by ЭЦ
У меня не УРИБ две разные базы ранее жили каждая сам по себе. теперь между ними надо устроить обмен. Какие там GUIDы заняты ранее  никто сказать не может
#8 by Рэйв
Уникальность гуидов -практически в пределах вселенной:-)
#9 by ЭЦ
Это сильно преувеличино. Реально механизм обеспечивает уникальность в пределах одной базы (или одной распределенной базы)
#10 by Рэйв
Вероятность совпадения имен  таблиц и префиксов + сам ID дока исчезающе мала
#11 by Рэйв
имен = номеров в базе
#12 by ЭЦ
Имена всех таблиц одинаковые т.к. одинаковые конфигурации. префиксов ранее ни в той ни в другой базе не было т.к. они  не были включены в планы обмена.
#13 by Рэйв
Не путай имя в конфигураторе и на скуле.  Они могут называться одинаково, но номера иметь разные в разных не связанных урбд базахбазах
#14 by Рэйв
*базах
#15 by ЭЦ
т.е. Вы утверждаете что во всех базах 1С существующих в мире все элементы справочников имеют уникальный GUID ? что же это за механизм такой? а если одна база скопирована с другой - тогда в ней у всех объектов одинаковые GUIDы.
#16 by rs_trade
а если одна база скопирована с другой - тогда в ней у всех объектов одинаковые GUIDы. все верно. потому что это одни и те же объекты.
#17 by rs_trade
Лучше напиши чего надо. Судя по вопросу у тебя нет понимания как работают планы обмена.
#18 by ЭЦ
(16-17) У меня две базы УПП (разные конфигурации) никак не связанные. Надо обмениваться между ними справочниками и документами по сложному алгоритму. Собираюсь ; - создать план обмена для использования стандартного механизма отслеживания изменений объектов, - собственно обмен реализовать своей обработкой по COM соединению (отказываюсь от стандартного XML обмена). Предполагаю, что синхронизация объектов в различных базах должна осуществляться по GUID. В этой связи возникает вопрос как получить GUID внешнего объекта (соответствующего текущему) в текущей базе.
#19 by rs_trade
GUID внешнего объекта (соответствующего текущему) в текущей базе. Никак. Базы же никак не связаны. У всех объектов разные гуиды.
#20 by rs_trade
Надо проводить первоначальную синхронизацию объектов по коду например. Ручками или автоматом, зависит от того что там в базе у вас. И по гуидам не получиться, если в обеих базах уже ведется учет. Ты не можешь менять гуиды у существующих объектов.
#21 by ЭЦ
Да, но после первого обмена в обеих базах должны появится одни и те же объекты Вопрос как при следующем обмене понять толи надо создавать новый объект, толи переписывать созданный ранее и какой.
#22 by rs_trade
Справочники.Номенклатура.ПолучитьСсылку(ГУИД). Если нету объекта, значит надо создавать.
#23 by rs_trade
как создать объект с нужным гуидом ищи по форуму. или смотри код обработок обмена КД.
#24 by ЭЦ
Это я должен делать в контексте базы приемника и GUID тоже должен быть из базы приемника, а храниться он должен в базе источнике. Вопрос как его получить в приемнике? Господин Рейв утверждает что все GUIDы в приемнике никогда не совпадают с источником если только они там не были специально созданы с тем же GUID. Это конечно было бы очень хорошо, но я не могу себе представить механизма обеспечивающего такую уникальность в миллионах существующих базах 1С.
#25 by rs_trade
Правильно утверждает. На то они и гуиды.
#26 by rs_trade
UUID представляет собой 16-байтный (128-битный) номер. В шестнадцатеричной системе счисления UUID выглядит как: Общее количество уникальных ключей UUID составляет 2128 = 25616 или около 3.4 ? 1038. Это означает, что генерируя 1 триллион ключей каждую наносекунду, перебрать все возможные значения удастся лишь за 10 миллиардов лет.
#27 by AaNnDdRrEeYy
храни гуид внешней базы в регистре базы приемника. измерение гуид внешней базы ресурс гуид базы источника. запросом сопоставиш при загрузке
#28 by AaNnDdRrEeYy
опечатка храни гуид внешней базы в регистре базы приемника. измерение гуид внешней базы, ресурс гуид базы ПРИЕМНИКА. запросом сопоставиш при загрузке
#29 by ЭЦ
Я первоначально так и собирался поступать. Смущает только, что при стандартном обмене это все уже както решается без доп регистра. Я первоначально думал, что внешний ГУИД хранится гдето в плане обмена и его от туда можно как то выцепить. Но здесь Все уверены что и хранить его нигде не нужно т.к. он автоматически является уникальным в каждой базе в силу большго количества возможных вариантов . Никаких упоминаний про внешний ГУИД также пока нигде найти не удалось
#30 by Рэйв
Что за чайники пошли...Им говоришь, они еще и не верят. А просто поверить в то, что тебе говорят старшие, более опытные товарищи -никак?:-)
#31 by ЭЦ
просто верят в церкви
#32 by rs_trade
и не найдешь. не существует никаких внешних гуидов. в плане обмена храняться гуиды измененных в базе объектов. при обмене, если в приемнике объекта с таким гуидом не существет, он создается. если существует, то перезаписывается. все.
#33 by Рэйв
а тебе тоже никто не обязан доказательства на 32 страницах приводить. Хочешь верь, не хочешь - дело твое.
#34 by ЭЦ
Уважаемый rs_trade Вы можете дать ссылу откуда Вы взяли эти сведения. Если это так то все резко упрощается
#35 by Рэйв
Это аксиома. Она не требует доказательств.
#36 by rs_trade
Из документации. Можешь почитать "Профессиональная разработка в системе 1С Предприятие 8" главу посвященную УРБД
#37 by 25-11
ГУИД - он и в Африке ГУИД! Глобальный Уникальный... На этом много чего построено.
#38 by Рэйв
Да там нет ничего про формирование гуидов:-)...Подразумевается, что читающий не дурак и сам давно это знает.
#39 by Рэйв
И вообще -вода мокрая, небо голубое, любой гуид уникален. Вто и все.
#40 by Рэйв
*вот
#41 by 25-11
а вообще-то в математике ежели ты хочешь что-то опровергнуть достаточно привести пример. Выложи два одинаковых ГУИДа  в студию! И можешь идти за премией. По математике нобелевской не дают, но какие-то иные существуют
#42 by ЭЦ
ОК полезу почитаю. (37,39,41) В том то и дело что ГУИД не уникален ! Я могу откопировать базу и получить две базы со всеми одинаковыми ГУИДАМИ. !!! после этого в одной из баз могу поменять все реквизиты справочника - с моей точке зрения это уже другой объект, но ГУИД то у него тотже - появляется коллизия. для их преотвращения нужно както отслеживать процессы копирования баз и редактирования объектов. А это гемор. А вот если в базе премнике хранился ГУИД объекта из базы источника то никаких коллизий никогда не будет. *ВОТ*
#43 by rs_trade
твоя точка зрения не верна. если ты перекрасишь автомобиль, он станет другим автомобилем? или это все таки останется тот же самый автомобиль, но другого цвета?
#44 by ЭЦ
Это я хочу решать сам. Когдато для меня это будет другой автомобиль а когдато тотже. А при Вашем подходе это всегда тотже - что неправильно.
#45 by Живой Ископаемый
2 Получил вторую базу копированием - склонировал объекты на момент копирования сознательно...
#46 by ЭЦ
представте себе что после угона от автомобиля остался только рег. знак. Я его вешаю на новый автомобиль. С точки зрения ГАИ это тотже автомобиль А с моей -другой.
#47 by Живой Ископаемый
"С точки зрения ГАИ это тотже автомобиль " - только до тех пор пока не потребуют техапспорт и не сверят вин-коды... вообще кривая аналогия...
#48 by Рэйв
Слушай, твоя упертость начинает уже граничить с идиотизмом. Ты не идиот?
#49 by ЭЦ
ничего я не клонировал просто откопировал файловую базу в другой каталог и все
#50 by Живой Ископаемый
2 тем самым склонировал...
#51 by 25-11
придется примириться с общемировой (или в твоем примере гаишной) логикой идентификации... Если ты копируешь базу (или перевешиваешь номер), весь мир полагает, что ты работаешь с одни и тем же объектом.
#52 by ЭЦ
ну тоесть я должен пользователям строго сказать. Господа Все объекты которые для Вас являются логически новыми Нужно обязательно создавать заново и никогда не получать путем переименовывания старых. А иначе при обмене возможны большие неприятности. !!! ну тогда пусть будет склонировал и что (я просто копировал не пустую базу, например со справочниками контрагентов)?
#53 by Рэйв
Короче..я этого больного ЭЦ заношу в личный черный список. Чего и всем советую.Сдается мне троллит он общественность..Нельзя быть таким тупым в природе. Прикидывается.
#54 by AaNnDdRrEeYy
Объясняю для тех кто не верит Если распределенная база сделана через "создать первоначальны образ распределеной базы" то в этой базе будут те же гуиды что и в основной, в этом случае можно использовать стандартный механизм обмена. если же базы разные то по стандартному механизму даже начать загрузку не получиться будет ошибка "неизвестный источник данных" или что то типо. так что остается использовать планы обмена только для регистрации изменений ни о каких загрузка выгрузка речь идти вообще не может.
#55 by rs_trade
Господа Все объекты которые для Вас являются логически новыми Нужно обязательно создавать заново и никогда не получать путем переименовывания старых. о_О а вы этого не знали??? Продаем мы знчит в течении года колбасу. Потом кто то решил что теперь это будут яйца. Переименовываем. И чудеса, теперь колбасой мы никода не торговали. Во всех накладных одни яйца.
#56 by Живой Ископаемый
2 и все, объекты на момент копирования будут иметь одинаковый уид
#57 by ЭЦ
тут никто не говорит про распределенную базу - с УРИБ все понятно там уникальность ГУИД отслеживается. У меня две РАЗНЫЕ базы и уникальностью ГУИДов в них никто никогда не занимался (при этом не исключено что когдато одна из них была создана путем копирования другой точно это никто не знает) Ну так я и грю что ГУИДы в разных базах не обязаны ВСЕГДА быть уникальны.
#58 by Рэйв
Народ,не отвечайте.Пусть пасется сам по себе.
#59 by Живой Ископаемый
2 окей, и что теперь нужно?
#60 by rs_trade
да уже и не знаешь что отвечать то.
#61 by Рэйв
я ж говорю -троль:-)..
#62 by ЭЦ
Да я собственно хотел понять хранится ли в плане обмена базы источника ГУИД базы приемника и если да то как его извлечь. Все тут уверены, что не хранится. Ссылок на первоисточники никто не дает (кроме 36) якобы это "аксиома". Ну попробую еще порыть. Не хочется городить собственный регистр содержащий внешние ГУИДЫ если всетаки они там и так хранятся.
#63 by rs_trade
удачи в поисках
#64 by AaNnDdRrEeYy
план обмена это таблица в ней всего три колонки, узел, номер и ссылка, удачи в поисках.
#65 by Живой Ископаемый
2 нет, не хранится... собственно нет такого понятия - гуид базы... в плане обмена есть узлы.. у узлов есть, как у объектов иб есть уиды... но например при обмене между база по одному плану обмена сопоставление идет не по уиду узла, а по коду... благодаря чему становится возможным альтернативный способ создания начального образа - когда мы копируем базу и меняем коды узлов в одной из них
#66 by Михаил Козлов
Насколько я себе представляю, в типовых соответствие объектов обмена хранится в соответствующем РС для каждого узла.
#67 by Живой Ископаемый
2 смотря про какие планы обмена речь.. про РИБ или не РИБ.
#68 by Рэйв
Причем чтт интересно, господа. Мои обвинения в троллизме игнорирует. Ой..Да лвдно,что я вас тут спасаю. Хотите быть идиотами- ради бога.
#70 by Рэйв
Не учи отца:-)
#71 by Рэйв
+И кстати научись хоть правильно ник писать, двоечник
#72 by Рэйв
Мне то пофигу.а некоторые товарищи могут и обидеться.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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