Не могу прочитать данные из XML

1. Николай Иванов (PhoenixAOD) 24 27.12.16 09:48 Сейчас в теме
Доброго времени суток всем читающим! Друзья, помогите разобраться в такой ситуации. Пишу обработку которая грузит Z отчет из Set Retail 10, так как там выгрузка Zтки идет только сводно, решил сделать загрузку по чекам, все вроде идет нормально, но вот возникла одна проблемка:
Если ЗагрузитьВнешнююКомпоненту("v7plus.dll")<>1 Тогда
		Предупреждение("Внешняя компонента не найдена");
		Возврат;
	КонецЕсли;
	Анализатор=СоздатьОбъект("AddIn.XMLParser");
	Если тзФайлы.КоличествоСтрок() > 0 Тогда
		//Для гИнд = 1 по тзФайлы.КоличествоСтрок() Цикл
		//	СтрокПуть = тзФайлы.ТекущаяСтрока(гИнд);
			Файл=Анализатор.СоздатьДокумент();
			Файл.Загрузить(тзФайлы.Путь);
			ШапкаЧеков=Файл.ВыбратьУзел("purchases");
			кол=ШапкаЧеков.КоличествоПодчиненных();
			Для инд=1 по кол Цикл 
				тзПродажи.НоваяСтрока();
				ШапкаЧека=ШапкаЧеков.ПолучитьПодчиненныйПоНомеру(инд);
				
			        КоличествоЧеков=ШапкаЧека.КоличествоПодчиненных();
				
				ДатаПродажи = СтрЗаменить(лев(ШапкаЧека.ПолучитьАтрибут("operDay"), 10), "-","");
				Год = Лев(ДатаПродажи, 4);
				Месяц = Лев(Прав(ДатаПродажи, 4), 2);
				День = Прав(ДатаПродажи, 2);
				СтрокДата = День +"."+ Месяц + "."+Год;
				тзПродажи.ДатаДок= Дата(ДатаПродажи); 
				тзПродажи.НомерМагазина =  ШапкаЧека.ПолучитьАтрибут("shop");
				тзПродажи.НомерКассы =  ШапкаЧека.ПолучитьАтрибут("shop"); 
				
				Для инд1 = 1 по КоличествоЧеков Цикл
					ТелоЧека =  ШапкаЧека.ПолучитьПодчиненныйПоНомеру(инд1);
					КолСтрок = ТелоЧека.КоличествоПодчиненных(); 
								
					Для СтрокЧек = 1 по КолСтрок Цикл
						СтрокаЧека = ТелоЧека.ПолучитьПодчиненныйПоНомеру(СтрокЧек); 
						тзПродажи.КодТовара = ТелоЧека.ПолучитьАтрибут("goodsCode");
						тзПродажи.Цена = ТелоЧека.ПолучитьАтрибут("costWithDiscount");
						тзПродажи.Количество = ТелоЧека.ПолучитьАтрибут("count");
						тзПродажи.Сумма = ТелоЧека.ПолучитьАтрибут("amount");
						тзПродажи.СтавкаНДС = ТелоЧека.ПолучитьАтрибут("nds");
						тзПродажи.СуммНДС = ТелоЧека.ПолучитьАтрибут("ndsSum");
						тзПродажи.ШК = ТелоЧека.ПолучитьАтрибут("barCode");
					    тзПродажи.ВидОплаты = СтрокаЧека.ПолучитьАтрибут("description");
					КонецЦикла;
				КонецЦикла;
			КонецЦикла;
		//	тзФайлы.УдалитьСтроку(СтрокПуть);
		//КонецЦикла; 
	КонецЕсли;
...Показать Скрыть

в цикле
Для СтрокЧек = 1 по КолСтрок Цикл
заполняется только строка
 тзПродажи.ВидОплаты = СтрокаЧека.ПолучитьАтрибут("description");
все остальные пустые. для ВидОплаты СтрокЧек = 2, тут все правильно, но вот почему по СтрокЧек =1 пусто? Отладчик молчит, выдает пустые значения. Куда копать?
Ответы
2. Дмитрий Дрейцер (MadDAD) 117 27.12.16 09:55 Сейчас в теме
(1) А в самом файле прочие данные есть?
3. Николай Иванов (PhoenixAOD) 24 27.12.16 10:05 Сейчас в теме
да есть, сам файл приложил
Прикрепленные файлы:
purchases-26-12-2016_10-34-24.xml
4. Николай Иванов (PhoenixAOD) 24 27.12.16 10:15 Сейчас в теме
Блииин, сам затупил))
 тзПродажи.ШК = ТелоЧека.ПолучитьАтрибут("barCode");
                        тзПродажи.ВидОплаты = СтрокаЧека.ПолучитьАтрибут("description");
вот где ошибка была ТелоЧека, а нужно было СтрокаЧека
Оставьте свое сообщение