Имя: Пароль:
1C
1C 7.7
v7: Имя атрибута файла xml содержит "#text", это для алкко-декларации выгрузка
0 GreyK
 
08.08.16
18:56
Вылетает ошибка. Как обойти?
Текст функции:
//_____________________________________________________________________________
Процедура ДобавитьЗначениеПодчиненногоУзла(XML_DOM,Узел,ИмяПодчиненногоУзла,Значение)
    ПодчУзел = XML_DOM.СоздатьУзел(1, ИмяПодчиненногоУзла);
    Если ПустоеЗначение(Значение) = 0 Тогда
        //ПодчУзел.УстановитьАтрибут("#text",СокрЛП(Значение));
    КонецЕсли;
    Узел.ДобавитьПодчиненный(ПодчУзел);
КонецПроцедуры //ДобавитьЗначениеПодчиненногоУзла()
1 Mauser
 
08.08.16
19:02
Не бывает такого атрибута "#text". Бывает значение узла.
2 GreyK
 
08.08.16
19:12
(1) Возможно я неправильно выразился, но как УстановитьАтрибут() с таким именем?
3 GreyK
 
08.08.16
19:13
+ (2) Ну или значение узла.
4 Mauser
 
08.08.16
19:26
(3) В DOM это createTextNode, в 1С надо СП  читать
5 GreyK
 
09.08.16
07:55
(4) Спасибо за подсказку.
Получилось вот так:
//_____________________________________________________________________________
Процедура ДобавитьЗначениеПодчиненногоУзла(XML_DOM,Узел,ИмяПодчиненногоУзла,Значение)
    ПодчУзел = XML_DOM.СоздатьУзел(1, ИмяПодчиненногоУзла);
    Если ПустоеЗначение(Значение) = 0 Тогда
        TextNode = XML_DOM.createTextNode(СокрЛП(Значение));
        ПодчУзел.ДобавитьПодчиненный(TextNode);
    КонецЕсли;
    Узел.ДобавитьПодчиненный(ПодчУзел);
КонецПроцедуры //ДобавитьЗначениеПодчиненногоУзла()
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший