Имя: Пароль:
1C
1C 7.7
v7: выгрузка из текста в XML
0 Gugolovski
 
26.02.18
10:38
Столкнулся с такой же проблемой как описано в теме: выгрузка XML из 7.7 через v7plus.dll. Создание узла с двоеточием.
, не удается подчиненный элемент узла создать с двоеточием.  

В вышеуказанной теме Злопчинский рекомендует записать все текстом.

Например, если взять простой пример
//****************************
ПолноеИмяФайла = Каталог + "\1.xml";
Текст = СоздатьОбъект("Текст");
Текст.ДобавитьСтроку("<?xml version=""1.0"" encoding=""UTF-8""?>");
Текст.ДобавитьСтроку("<ns:Documents  
|xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"";
|Version=""1.0"">");
Текст.ДобавитьСтроку("</ns:Documents>");
Текст.Записать(ПолноеИмяФайла);
//****************************

Примерно так делается или несуразный код? Громоздко как-то выходит..
1 бомболюк
 
26.02.18
10:57
может просто использовать не v7plus а msxml2.domdocument? Или там такая же проблема есть?
2 Pit0n_08
 
26.02.18
11:00
//*******************************************
Процедура Атрибут(хмлЭлемент, ИмяАтрибута, ЗначениеАтрибута)

хмлАтрибут = ХМЛФайлДанных.СоздатьУзел("attribute", ИмяАтрибута);
хмлАтрибут.Значение = ЗначениеАтрибута;
хмлЭлемент.ДобавитьПодчиненный(хмлАтрибут);    
    
КонецПроцедуры
//*******************************************
где-то по тексту

XMLАнализатор    = СоздатьОбъект("AddIn.XMLParser");
ХМЛФайлДанных    = XMLАнализатор.СоздатьДокумент();  
    
хмлКорень = ХМЛФайлДанных.СоздатьПодчиненныйЭлемент("Файл");
Атрибуn(хмлКорень, "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance";);

так подойдет?
3 Pit0n_08
 
26.02.18
11:00
(+2)
Атрибут(хмлКорень, "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance";;);
4 big
 
26.02.18
13:01
v7plus нельзя использовать. При чтении она пользуется только (!!!) msxml версии 3. При отсутствии её в системе по-умолчанию, будет ошибка при чтении