Имя: Пароль:
1C
1C 7.7
v7: xml v7+ Выгрузка в файл.
0 mishaPH
 
12.10.11
08:03
Кто делал выгрузку в файл через сабж.

Помогите разобратся с конструкциями подчиненных элементов и узлов. Что-то внятной инструкции и примеров не могу найти.

Вот такой код:

Анализатор = СоздатьОбъект("AddIn.XMLParser");
Корень=Анализатор.СоздатьДокумент();
Документ = Корень.СоздатьПодчиненныйЭлемент("Document-OrderResponse");
Шапка = Документ.СоздатьПодчиненныйЭлемент("OrderResponse-Header");
Шапка.УстановитьАтрибут("OrderResponseNumber",Док.НомерЗПокупателя);

В итоге получается ХМЛ вида

<?xml version="1.0" encoding="windows-1251" ?>
- <Document-OrderResponse>
- <OrderResponse-Header>
 <OrderResponseNumber OrderResponseNumber="4525657735" />
 <OrderResponseDate OrderResponseDate="2011-10-08" />
 </OrderResponse-Header>
 </Document-OrderResponse>


а надо что-то типа этого

- <OrderResponse-Header>
 <OrderResponseNumber>24694</OrderResponseNumber>
 <OrderResponseDate>2011-07-13</OrderResponseDate>


что я делаю не так.
1 Рэйв
 
12.10.11
08:07
Все правильно. Тег сразу закрывается
/>  
Ты же атрибут устанавливаешь, а надо текст
2 Рэйв
 
12.10.11
08:07
а атрибуты в открываемом тэге пишутся
3 ЧеловекДуши
 
12.10.11
08:08
Лучше используй вот это
http://x-romix.narod.ru/OpenXML.rar
4 povar
 
12.10.11
08:10
Документ.СоздатьПодчиненныйЭлемент("OrderResponse-Header").Значение = 24694
5 mishaPH
 
12.10.11
08:11
(3) итак у меня зоопарк из компонент.
(4) счас попробую
6 povar
 
12.10.11
08:12
(5) вернее в твоем случае
Документ.СоздатьПодчиненныйЭлемент("OrderResponseNumber").Значение = 24694
7 andrewks
 
12.10.11
08:13
(0)вообще-то, при приведённом коде должен был получится не такой хмл, как ты привёл
8 mishaPH
 
12.10.11
08:16
(6) да мерси догадался. Все работает. Благодарю.
9 mishaPH
 
12.10.11
08:16
(7) получается он.
10 andrewks
 
12.10.11
08:31
(9) посмею возразить
11 mishaPH
 
12.10.11
08:42
(10) сколько угодно

 <OrderResponseDate OrderResponseDate="2011-10-08" />

вот этого нет да. просто кусок коду.
12 andrewks
 
12.10.11
08:44
(11) чего ты мне лапшу вешаешь? или у тебя v7+ другой системы

должно получиться, и получается вот это:

<?xml version="1.0" encoding="windows-1251"?>
<Document-OrderResponse><OrderResponse-Header OrderResponseNumber="4525657735"/></Document-OrderResponse>
13 mishaPH
 
12.10.11
08:46
(12) в принципе ты прав.

куски кода немного разные. вчера экспериментировал. но сути не меняет. нужна была конструкция что привел
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший