Имя: Пароль:
1C
1С v8
Проверить является ли строка ссылкой
0 1CVERYGOOD
 
18.10.13
08:25
Есть строка. В ней ссылка на объект. Как проверить что в этой строке действительно ссылка и если это ссылка то получить по ней объект ?
1 Fragster
 
модератор
18.10.13
08:26
в строке скорее всего ГУИД, который в общем случае не определяет ссылку.
2 MSII
 
18.10.13
08:26
Чо?
3 Fragster
 
модератор
18.10.13
08:27
(2) судя по последним топикам автора - он учится загружать XMLки
4 Толич
 
18.10.13
08:30
Может быть ссылка на объект в управляемых формах?
5 1CVERYGOOD
 
18.10.13
08:33
Реквизиты в XML файле хранятся в виде ссылок. Как мне по ним найти объекты и сравнить их? Пока что такой код:

    Путь = "D:\123.xml";
    xmlDoc = Новый COMОбъект("MSXML2.DOMDocument");
    xmlDoc.load(Путь);
    nodeRoot = xmlDoc.documentElement;
    
    ЭлементыXml=nodeRoot.selectSingleNode("//Главный");;
    Для Каждого Эл из ЭлементыXml.childNodes Цикл
        Для Каждого Док из Эл.childNodes Цикл
            ДокДата = Док.selectSingleNode("Date").nodeTypedValue;
            ДокНомер =     Док.selectSingleNode("Number").nodeTypedValue;
            ДокНовойБазы = Документы.РеализацияТоваровУслуг.НайтиПоНомеру(ДокНомер,XMLЗначение(Тип("Дата"), ДокДата));
            Если ДокНовойБазы <> Неопределено И ДокНовойБазы <> Документы.РеализацияТоваровУслуг.ПустаяСсылка() Тогда
                Для Каждого рекв из ДокНовойБазы.Метаданные().Реквизиты Цикл                    
                    Если XMLЗначение(Тип("Ссылка"),Док.selectSingleNode( рекв.имя).nodeTypedValue) <> ДокНовойБазы[рекв.имя] Тогда
                        Сообщить("!!!Отличие: " + Строка (Док) + "    " +Строка (ДокНовойБазы) + "    " + Строка (рекв));
                    КонецЕсли;    
                КонецЦикла;               
            КонецЕсли;;    
        КонецЦикла;    
    КонецЦикла;
Основная теорема систематики: Новые системы плодят новые проблемы.