Имя: Пароль:
1C
1С v8
Не читается атрибут из XML
0 napagokc
 
19.12.13
10:49
Может кто сталкивался с подобным и сразу скажет, что произошло...
Есть стандартные xml-файлы, в которых передается инфа с реквизитами товаров. Всё работало, а тут в очередном файле не читаются некотороые реквизиты. Открыл файл в блокноте, проверил - такой реквизит есть, в написании реквизита ошибки нет. Тем не менее, реквизит просто игнорируется. Что может быть? Отмечу, что некоторые реквизиты читаются нормально, а некоторые не читаются. Принципиальной разницы между этими реквизитами я не вижу. Не могу понять, что не так. Буду признателен любым, даже самым бредовым идеям! Помогите, плз! Одна голова хорошо, а 2576 - лучше! =)
1 mehfk
 
19.12.13
11:03
Покажи XML
2 napagokc
 
19.12.13
11:34
как-то так выглядит файл (лишнее убрал)
http://www.fotolink.su/pic_b/4c67765c9256ca27c33d892539925af6.jpg
Читается: Код, Наименование, Количество, ЕдИзм, СтавкаНДС, ЦенаБН.
Остальные реквизиты игнорируются (Неопределено).

Кусок кода:
Код    = Чтение.ПолучитьАтрибут("Код");
Код = СокрЛП(Код);
Наименование = Чтение.ПолучитьАтрибут("Наименование");
Количество = Чтение.ПолучитьАтрибут("Количество");
ЕдИзм = СокрЛП(Чтение.ПолучитьАтрибут("ЕдИзм"));
СтавкаНДС = Чтение.ПолучитьАтрибут("СтавкаНДС");
ЦенаБН = Чтение.ПолучитьАтрибут("ЦенаБН");

//всё, что ниже - не читается (Неопределено)

СуммаБН = Чтение.ПолучитьАтрибут("СуммаБН");
Сумма = Чтение.ПолучитьАтрибут("Сумма");
НДС    = Чтение.ПолучитьАтрибут("НДС");
СуммаВал = Чтение.ПолучитьАтрибут("СуммаВал");
НДСВал = Чтение.ПолучитьАтрибут("НДСВал");
СуммаВалБН = Чтение.ПолучитьАтрибут("СуммаВалБН");
ЦенаВалБН = Чтение.ПолучитьАтрибут("ЦенаВалБН");
3 mehfk
 
19.12.13
11:37
Может всё-таки покажешь XML ?
4 Serginio1
 
19.12.13
11:43
Прочитай в Тз v8: Веб-сервис и передача-прием XML

и посмотри что выдает
5 napagokc
 
19.12.13
11:47
пасибо, народ! Я знал, что вы не подведете!
Похоже, косяк в коде. кто-то "пряморукий" тут что-то подправил и даже не оставил комментариев, что внес правки (мы обычно комментируем, с указанием даты и автора исправлений). В результате код пошел не по той ветке и реквизит даже действительно не читался (не было вызова ПолучитьАтрибут()). Код большой и я не сразу углядел... Сорри за беспокойство
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.