![]() |
![]() |
![]() |
|
Выгрузка xml по определенной структуре. | ☑ | ||
---|---|---|---|---|
0
rin
14.11.14
✎
12:52
|
Добрый день! Помогите с задачкой. Работа с edi-провайдером и нужно, чтоб на выходе (после выгрузки накладной) была именно такая структура xml-файла или схема будет правильней. Не получается. Опыта в xml нет. Не сталкивался.
<?xml version="1.0"?><Root> <Autorization Login="111111" Password="1111111111111111111"/> <Request ProcedureId="27"/> <Header> <MessageId>1</MessageId> <DocType>2</DocType> <DocNumber>111111111</DocNumber> <DocDate>2014.02.14</DocDate> <DeliveryDate/> <OrderId>11111111111</OrderId> <OrderDate>2014.02.13</OrderDate> <ContractorId>11111</ContractorId> <SupplierKPP>1111111111111</SupplierKPP> <BillNum>111111111111</BillNum> <ShopId>27</ShopId> </Header> <Detail> <MessageId>1</MessageId> <NumberLine>1</NumberLine> <Barcode>111111111111</Barcode> <ItemId>1111111</ItemId> <Description/> <DespatchQty>12</DespatchQty> <UnitId>111</UnitId> <VAT>0.18</VAT> <Price>1111.78</Price> <Cost>111.80</Cost> <Amount>111.60</Amount> <VatAmount/> <INNContractor>1111111111111</INNContractor> <KPPContractor>1111111111111111</KPPContractor> <CustomDeclaration/> <CountryOrigin/> </Detail> </Root> |
|||
1
Skylark
14.11.14
✎
12:55
|
(0) Ну если по рабоче-крестьянски, то создай объект "Запись XML" и последовательно добавляй нужные узлы. Сохрани в файл, а потом добавь туда нужную шапку.
А если по-православному, то сделай схему и используй объект "Фабрика XDTO" |
|||
2
Wobland
14.11.14
✎
13:01
|
Процедура ЗаписатьЭлемент(ЗаписьXML, ИмяЭлемента, ЗначениеЭлемента)
ЗаписьXML.ЗаписатьНачалоЭлемента(ИмяЭлемента); ЗаписьXML.ЗаписатьТекст(Строка(ЗначениеЭлемента)); ЗаписьXML.ЗаписатьКонецЭлемента(); КонецПроцедуры ЗаписьXML=Новый ЗаписьXML; Попытка ЗаписьXML.ОткрытьФайл(ИмяФайлаНаСервере, "windows-1251"); Исключение Сообщить("Ошибка доступа к файлу "+ИмяФайлаНаСервере); Продолжить; КонецПопытки; ЗаписьXML.ЗаписатьОбъявлениеXML(); ЗаписьXML.ЗаписатьНачалоЭлемента("Данные"); //заголовок файла ЗаписатьЭлемент(ЗаписьXML, "Дистрибьютор", Организация.НаименованиеСокращенное); //шапка документа ВыборкаПоДокументам=ВыборкаПоСкладам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаПоДокументам.Следующий() Цикл ЗаписьXML.ЗаписатьНачалоЭлемента("Документ"); ЗаписатьЭлемент(ЗаписьXML, "ТипДокумента", ВыборкаПоДокументам.ТипДокумента); //строки документа Выборка=ВыборкаПоДокументам.Выбрать(); Пока Выборка.Следующий() Цикл ЗаписьXML.ЗаписатьНачалоЭлемента("Строка"); ЗаписатьЭлемент(ЗаписьXML, "ТоварКод", Выборка.ТоварКод); ЗаписьXML.ЗаписатьКонецЭлемента(); КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента(); КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.Закрыть(); |
|||
3
rin
14.11.14
✎
13:14
|
Спасибо! Буду пробовать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |