|
Чтение из XML | ☑ | ||
---|---|---|---|---|
0
ВежливаяТварь
24.01.13
✎
18:35
|
Добрый день есть некий xml файл
Вот он - <Root> - <CatalogObject.Контрагенты> <Ref>f59345f4-6604-11e2-99ee-080039002fc6</Ref> <IsFolder>false</IsFolder> <DeletionMark>false</DeletionMark> <Parent>00000000-0000-0000-0000-000000000000</Parent> <Code>000000001</Code> <Description>Иванов</Description> </CatalogObject.Контрагенты> - <CatalogObject.Склады> <Ref>f59345fa-6604-11e2-99ee-080039002fc6</Ref> <DeletionMark>false</DeletionMark> <Code>000000001</Code> <Description>Основной</Description> </CatalogObject.Склады> - <CatalogObject.Номенклатура> <Ref>f59345f9-6604-11e2-99ee-080039002fc6</Ref> <IsFolder>false</IsFolder> <DeletionMark>false</DeletionMark> <Parent>00000000-0000-0000-0000-000000000000</Parent> <Code>000000003</Code> <Description>Блокнот</Description> </CatalogObject.Номенклатура> - <DocumentObject.ПриходнаяНакладная> <Ref>f59345fb-6604-11e2-99ee-080039002fc6</Ref> <DeletionMark>false</DeletionMark> <Date>2013-01-24T11:09:01</Date> <Number>000000001</Number> <Posted>true</Posted> <Контрагент>f59345f4-6604-11e2-99ee-080039002fc6</Контрагент> <Склад>f59345fa-6604-11e2-99ee-080039002fc6</Склад> - <Товары> - <Row> <Номенклатура>f59345f9-6604-11e2-99ee-080039002fc6</Номенклатура> <Количество>2</Количество> <Цена>2</Цена> <Сумма>4</Сумма> </Row> </Товары> </DocumentObject.ПриходнаяНакладная> - <CatalogObject.БанковскиеСчета> <Ref>bffe24ea-6606-11e2-99ee-080039002fc6</Ref> <DeletionMark>false</DeletionMark> <Code>000000001</Code> <Description>Основной банковский счет</Description> </CatalogObject.БанковскиеСчета> - <DocumentObject.ПлатежноеПоручение> <Ref>05b76db9-6607-11e2-99ee-080039002fc6</Ref> <DeletionMark>false</DeletionMark> <Date>2013-01-24T11:18:33</Date> <Number>000000001</Number> <Posted>true</Posted> <Счет>bffe24ea-6606-11e2-99ee-080039002fc6</Счет> <ДокументРасчетов>f59345fb-6604-11e2-99ee-080039002fc6</ДокументРасчетов> </DocumentObject.ПлатежноеПоручение> </Root> И есть код который его считывает так вот считывает он его почему то через элемент. Код: ЧтениеXML=Новый ЧтениеXML(); ЧтениеXML.ОткрытьФайл(ПутьКФайлу); Пока ЧтениеXML.Прочитать() Цикл Если ВозможностьЧтенияXML(ЧтениеXML) Тогда ЗагружаемыйОбъект=ПрочитатьXML(ЧтениеXML); ТипЗначения=ТипЗнч(ЗагружаемыйОбъект); ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗначения); Если Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда Имя=Метаданные.НайтиПоТипу(ТипЗначения).Имя; СсылкаНаСправочник=Справочники[Имя].НайтиПоНаименованию(ЗагружаемыйОбъект.Наименование,Истина); Если НЕ ЗначениеЗаполнено(СсылкаНаСправочник) Тогда ЗагружаемыйОбъект.Записать(); КонецЕсли; Иначе ЗагружаемыйОбъект.Записать(); КонецЕсли; КонецЕсли; КонецЦикла; ЧтениеXML.Закрыть(); Где я допустил ошибку? |
|||
1
Wobland
24.01.13
✎
18:37
|
сравни с моим, не хочу думать ;)
Процедура ЗагрузитьОбъектыНажатие(Элемент) Чтение = Новый ЧтениеXML; Чтение.ОткрытьФайл(ИмяфайлаЗагрузки); Чтение.Прочитать(); Чтение.Прочитать(); мСчетчик = 0; Пока Истина Цикл Попытка мОбъект = ПрочитатьXML(Чтение); Исключение Возврат; КонецПопытки; мОбъект.ОбменДанными.Загрузка = Истина; мОбъект.Записать(); мСчетчик = мСчетчик + 1; КонецЦикла; Сообщить(Строка(мСчетчик)); КонецПроцедуры |
|||
2
ВежливаяТварь
24.01.13
✎
18:43
|
Спасибо очень помогло.
|
|||
3
rotting
24.01.13
✎
18:46
|
(2) какая вежливая)))
|
|||
4
Конфигуратор1с
24.01.13
✎
19:04
|
(1) а зачем два раза прочитать?
|
|||
5
Wobland
24.01.13
✎
19:05
|
(4) не помню. там первый раз вроде как заголовок хмл или что-то в этом духе
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |