Вендеревский Серафим

829
Рейтинг

svenderevsky
Серафим Вендеревский



  •   Регистрация: 19.12.2013 (10 лет назад)

  •   Был(а) на сайте: 21.03.2024

Подписчики 26

Группы

Профессиональный разработчик

Рейтинг 829

Разбор XML документа - почти все возможные способы

Инструменты и обработки Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m) Конфигурация (md, cf) Файловый обмен (TXT, XML, DBF), FTP Загрузка и выгрузка в Excel

К вам пришел XML документ, как получить из него данные для обработки в 1С. ЧтениеXML, ДокументDOM, XPath, ФабрикаXDTO, ПакетыXDTO в сравнении.

1 стартмани

05.11.2014    358908    919    svenderevsky    107       

816

Стыковка элементов управляемой формы и пользовательских настроек СКД

Инструменты и обработки Программист Платформа 1С v8.3 Абонемент ($m) Конфигурация (md, cf) СКД

Стандартно в формах отчета управляемого приложения для отображения и редактирования пользовательских настроек применяется таблица формы. Однако такому способу не хватает эргономических качеств а, иногда и функциональности. Предлагаемый набор модулей позволяет использовать для ведения данных пользовательских настроек СКД обыкновенные элементы управляемой формы

1 стартмани

19.12.2013    10954    19    svenderevsky    1       

13

Комментарии

ОбменРазбор XML документа - почти все возможные способы#50 13.01.15 10:48
(49) ya.Avoronov,
У меня таких наработок нет
ОбменРазбор XML документа - почти все возможные способы#43 24.11.14 13:04
(41) kirillkr,
В последнем примере статьи фабрика XDTO создается программно из строки. тут и надо указывать требуемые элементы пакета
ОбменРазбор XML документа - почти все возможные способы#40 21.11.14 20:54
(39) kirillkr,
Не совсем, точнее совсем, непонятно пример чего?
ОбменРазбор XML документа - почти все возможные способы#38 13.11.14 18:48
(37) SeverBaP,
В пакете XDTO создайте тип category и добавте к нему три свойства - id,parentId и text (впрочем третье имя может быть любым), для первых двух свойств установите Форма - атрибут, а для третьего Форма - текст. Тогда фабрика XDTO поймет строку вида <category id="85115" parentId="85354">Платья и сарафаны</category>
ОбменРазбор XML документа - почти все возможные способы#36 12.11.14 18:19
(35) SeverBaP,
Работа с DOM самая тяжелая операция из всех методов разбора XML, явное увеличение быстродействия может дать работа с фабрикой XDTO
ОбменРазбор XML документа - почти все возможные способы#34 12.11.14 16:33
(33) SeverBaP,
Код
   РезультатРазборки = Новый Массив;
   ТипПриходныйОрдерXDTO = ФабрикаXDTO.Тип("http://localhost/testXML","ПриходныйОрдер");
   
   Пока ЧтениеXML.Прочитать() Цикл
         
      Пока ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеXML.Имя = "ПриходныйОрдер" Цикл 
         ПриходныйОрдерXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML,ТипПриходныйОрдерXDTO);
         ДокументПриходныйОрдер = Новый Структура("Номер,Дата,Поставщик,Состав");
         
         ДокументПриходныйОрдер.Номер = ПриходныйОрдерXDTO.Номер;
         ДокументПриходныйОрдер.Дата = ПриходныйОрдерXDTO.Дата;
         ДокументПриходныйОрдер.Поставщик = ПриходныйОрдерXDTO.Поставщик;
         
         ДокументПриходныйОрдер.Состав = Новый Массив;
         Для Каждого СтрокаСоставаXDTO Из ПриходныйОрдерXDTO.Состав.СтрокаСостава Цикл 
            СтрокаСоставаСтруктура = Новый Структура("Номенклатура,Количество");
            СтрокаСоставаСтруктура.Номенклатура = СтрокаСоставаXDTO.Номенклатура;
            СтрокаСоставаСтруктура.Количество = СтрокаСоставаXDTO.Количество;
            ДокументПриходныйОрдер.Состав.Добавить(СтрокаСоставаСтруктура);
         КонецЦикла;
         
         РезультатРазборки.Добавить(ДокументПриходныйОрдер);
      КонецЦикла;
      
   КонецЦикла;
 


В принципе то же самое, только позволяет несколько сэкономить память при последовательном чтении XML
ОбменРазбор XML документа - почти все возможные способы#32 12.11.14 15:01
(31) SeverBaP,
А что такое оферы?
ОбменРазбор XML документа - почти все возможные способы#26 12.11.14 11:36
(25) anton.fly7,
По крайней мере мои попытки использовать эту программу оканчивались неудачей - полученный xsd файл проще было не доделывать до кондиции, а создать свой вручную.
ОбменРазбор XML документа - почти все возможные способы#18 07.11.14 8:58
(4) Yashazz,
Быстродействие практически такое же как и при использовании ФабрикиXDTO и ПакетаXDTO
ОбменРазбор XML документа - почти все возможные способы#17 07.11.14 8:56
(16) Trotter_NN,
Функция находится в модуле общей команды РазобратьXML