|   |   | 
| 
 | Определить тип объекта имея только его уникальный идентификатор | ☑ | ||
|---|---|---|---|---|
| 0
    
        SeiOkami 14.08.13✎ 13:27 | 
        Здравия всем!
 Можно ли такое сделать без цикла по всем справочникам, документам и т.д. ? | |||
| 1
    
        Naumov 14.08.13✎ 13:28 | 
        нет     | |||
| 2
    
        Maxus43 14.08.13✎ 13:28 | 
        и с циклом не факт что получится, т.е. не гарантированно     | |||
| 3
    
        SeiOkami 14.08.13✎ 13:31 | 
        Вот в такие моменты я тоже "Ненавижу 1С" =(     | |||
| 4
    
        Maxus43 14.08.13✎ 13:32 | 
        (3) для однозначной идентификации объектов БД не надо использовать ГУИД, он не для этого. Ссылку юзай     | |||
| 5
    
        Ненавижу 1С гуру 14.08.13✎ 13:32 | 
        (3) это от непонимания, что такое UUID
 он то может жить и вне 1С | |||
| 6
    
        SeiOkami 14.08.13✎ 13:34 | 
        (4), в смысле "Ссылку юзай" ?     | |||
| 7
    
        Maxus43 14.08.13✎ 13:34 | 
        (6) всмысле "Ссылка" сожержит информацию о типе + гуид. сам гуид такой информации не содержит     | |||
| 8
    
        Defender aka LINN 14.08.13✎ 13:38 | 
        (6) Потому что ссылка - это ИД объекта + ИД типа объекта     | |||
| 9
    
        Maxus43 14.08.13✎ 13:41 | 
        16:b9cd001e372d291911dd349402ffa611 - ссылка
 02ffa611-3494-11dd-b9cd-001e372d2919 - её гуид | |||
| 10
    
        SeiOkami 14.08.13✎ 13:43 | 
        (9).
 А как ссылку строкой выразить, чтобы в коде получать объект? Попробовал ЗначениеВСтрокуВнутр. Работает, но у меня ссылка такая: {"#",539b4eb5-fc45-485d-94e5-5b7e1ddc8195,138:91b9e6f3a2b3485e43270648e1137e44} Есть ещё вариант? с ссылкой как у тебя (чтобы не такая ужасающая =) ) | |||
| 11
    
        Рэйв 14.08.13✎ 13:44 | 
        (0)ты же УИД откуда то получаешь. Скорее всего из ссылки. А по ней определить тип проще простого     | |||
| 12
    
        Defender aka LINN 14.08.13✎ 13:45 | 
        (10) Чтобы получить объект, надо выгружать объект.     | |||
| 13
    
        Maxus43 14.08.13✎ 13:46 | 
        138:91b9e6f3a2b3485e43270648e1137e44 - вот оно и есть ссылка из (10), вырежи     | |||
| 14
    
        Maxus43 14.08.13✎ 13:47 | 
        задачу лучше объясни, а то какое-то отвлечённое всё... где ты кроме 1с хочешь использовать это вот? ибо если это внутри 1с - смысл вобще теряется     | |||
| 15
    
        Fragster модератор 14.08.13✎ 13:50 | 
        Запись = Новый ЗаписьXML;
 Запись.УстановитьСтроку(); ЗаписатьXML(Запись, Справочники.Валюты.Рубль); Ст = Запись.Закрыть(); красота: <CatalogRef.Валюты>e970306c-b594-4026-9a90-d737a42141ab</CatalogRef.Валюты> | |||
| 16
    
        Fragster модератор 14.08.13✎ 13:50 | 
        а по сабжу - можно хоть каждого вида создать объекты с одинаковым уникальным идентификатором, и ничего за это не будет...     | |||
| 17
    
        SeiOkami 14.08.13✎ 13:52 | 
        (12), не верно выразился. Имею ввиду получить ссылку на объект в базе по строковому "идентификатору" этой ссылки
 (13), вырезал, но как теперь из этой строки получить ссылку обратно? | |||
| 18
    
        Maxus43 14.08.13✎ 14:00 | 
        (17) чтобы по строковому - тебе надо строку формировать типа как в (15)     | |||
| 19
    
        Maxus43 14.08.13✎ 14:02 | 
        суть задачи не раскрыл... зачем по строковому получать? вот в 10 тебе как раз и строковая, её обратно и преобразуй, без вырезания кусков, целиком     | |||
| 20
    
        Maxus43 14.08.13✎ 14:03 | 
        *вот в (10)     | |||
| 21
    
        SeiOkami 14.08.13✎ 14:18 | 
        Ок, жаль что не вариант по УИ получить тип.
 Всем спасибо =) | |||
| 22
    
        МихаилМ 14.08.13✎ 14:28 | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |