Помогите разобраться с xpath с выражением count(realmCode)=1 в xml тексте не отрабатывает хотя тег есть возращает ложь
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(7)
Вместо синтетического префикса "default", естественно, можно придумать что-нибудь своё.
Вот
Ну, как и предполагалось. Xpath в 1С по комплексу причин не работает в случае, если в документе одновременно задано пространство имен по умолчанию и другие пространства. Можно попробовать переопределить пространство и учесть это в своих запросах:
Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл("F:\Текстовый документ.xml");
Чтение.ПерейтиКСодержимому();
Построитель = Новый ПостроительDOM;
Документ = Построитель.Прочитать(Чтение);
Корень = Документ.ЭлементДокумента;
Значение = Корень.ПолучитьАтрибут("http://www.w3.org/2000/xmlns/", "xmlns");
Корень.УдалитьАтрибут("http://www.w3.org/2000/xmlns/", "xmlns");
Корень.УстановитьАтрибут("http://www.w3.org/2000/xmlns/", "xmlns:default", Значение);
Разыменователь = Документ.СоздатьРазыменовательПИ();
СтрокаЗапроса = "count(default:realmCode)=1";
Результат = Документ.ВычислитьВыражениеXPath(СтрокаЗапроса, Документ, Разыменователь, ТипРезультатаDOMXPath.Булево);
Сообщить(Результат.БулевоЗначение);
СтрокаЗапроса = "count(default:realmCode)=11";
Результат = Документ.ВычислитьВыражениеXPath(СтрокаЗапроса, Документ, Разыменователь, ТипРезультатаDOMXPath.Булево);
Сообщить(Результат.БулевоЗначение);
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот