|
v7: Загрузка из xml файла | ☑ | ||
---|---|---|---|---|
0
KDS
29.05.13
✎
08:40
|
Подскажите пож. что я делаю не так? Пытаюсь написать обработку загрузки xml документа, в ТЗ. Цикл обходит только один круг и всё, дальше не идёт, т.е. УзелТЧ.КоличествоУзлов = 1
... <ТабличнаяЧасть> <Номенклатура> <Наименование> Гипс </Наименование> <Код> 000000487 </Код> <ЕдиницаИзмерения> шт </ЕдиницаИзмерения> <Родитель> <РодительКод> 000000007 </РодительКод> <РодительНаименование> Строительные материалы </РодительНаименование> </Родитель> </Номенклатура> <Количество> 3 </Количество> <Цена> 161.59 </Цена> <Сумма> 484.77 </Сумма> <НДС> 87.26 </НДС> <Всего> 572.03 </Всего> <Номенклатура> <Наименование> Гипсокартон 1,2мх2,5мх12,5мм </Наименование> <Код> 000000711 </Код> <ЕдиницаИзмерения> м2 </ЕдиницаИзмерения> <Родитель> <РодительКод> 000000007 </РодительКод> <РодительНаименование> Строительные материалы </РодительНаименование> </Родитель> </Номенклатура> <Количество> 944.6 </Количество> <Цена> 54.23 </Цена> <Сумма> 51228.18 </Сумма> <НДС> 9221.07 </НДС> <Всего> 60449.25 </Всего> ... Данные=Документ.ПолучитьПодчиненныйПоНомеру(2); Для Сч=1 По Данные.КоличествоПодчиненных() Цикл Элем=Данные.ПолучитьПодчиненныйПоНомеру(Сч); УзелТЧ=Элем.ВыбратьУзлы("ТабличнаяЧасть"); Для Сч3=0 По УзелТЧ.КоличествоУзлов-1 Цикл таб.НоваяСтрока(); Наименование = УзелТЧ.ПолучитьУзел(Сч3).ПолучитьПодчиненныйПоНомеру(1); таб.Наименование = Наименование.ПолучитьПодчиненныйПоНомеру(1).Значение; таб.ЕдиницаИзмерения = Наименование.ПолучитьПодчиненныйПоНомеру(3).Значение; Количество = УзелТЧ.ПолучитьУзел(Сч3).ПолучитьПодчиненныйПоНомеру(2); таб.Количество=Количество.ПолучитьПодчиненныйПоНомеру(1).Значение; Цена = УзелТЧ.ПолучитьУзел(Сч3).ПолучитьПодчиненныйПоНомеру(3); таб.Цена=Цена.ПолучитьПодчиненныйПоНомеру(1).Значение; Сумма = УзелТЧ.ПолучитьУзел(Сч3).ПолучитьПодчиненныйПоНомеру(4); таб.Сумма=Сумма.ПолучитьПодчиненныйПоНомеру(1).Значение; НДС = УзелТЧ.ПолучитьУзел(Сч3).ПолучитьПодчиненныйПоНомеру(5); таб.НДС=НДС.ПолучитьПодчиненныйПоНомеру(1).Значение; Всего = УзелТЧ.ПолучитьУзел(Сч3).ПолучитьПодчиненныйПоНомеру(6); таб.Всего=Всего.ПолучитьПодчиненныйПоНомеру(1).Значение; КонецЦикла; КонецЦикла; |
|||
1
пипец
29.05.13
✎
09:27
|
УзелТЧ=Элем.ВыбратьУзлы("ТабличнаяЧасть");
и ?? |
|||
2
KDS
29.05.13
✎
09:39
|
(1)что и?
|
|||
3
пипец
29.05.13
✎
09:57
|
||||
4
KDS
29.05.13
✎
10:11
|
(3) спасибо конечно, но как раз по этому примеру я и делал )))
|
|||
5
пипец
29.05.13
✎
10:25
|
гФайл = гXMLАнализатор.СоздатьПоследовательноСчитываемыйДокумент();
гФайл.СвязатьСФайлом(Файл); // Начинаем обход файла ТипТега = гФайл.Спуститься(); ИмяТега = гФайл.СвойстваТекущегоУзла.Имя; //Становимся на самый верхний уровень Если ИмяТега="ORDRSP" Тогда ТипТега = гФайл.Спуститься(); //Спускаемся на уровень ниже и в цикле обходим все объекты уровня Пока НЕ (ТипТега=3) Цикл ИмяТега = гФайл.СвойстваТекущегоУзла.Имя; // Номер документа(обязательное поле) Если ИмяТега="NUMBER" Тогда --- из типового файла EDI |
|||
6
KDS
29.05.13
✎
10:30
|
(5) спасибо, сейчас попробую
|
|||
7
пипец
29.05.13
✎
10:38
|
https://edi.su/docs/EXITE_INTEGRATION/
- кстати вот их стандартные обработки в свободном доступе - может чем поможет |
|||
8
пипец
29.05.13
✎
10:41
|
||||
9
mikecool
29.05.13
✎
10:44
|
иногда хмл файлы не совсем хмл бывают )
|
|||
10
пипец
29.05.13
✎
10:48
|
(9) таки да ;)))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |