17.07.2019 Вадим Хоменко 21448
Работа с XDTO-пакетами

Содержание

1. Что такое XDTO-пакет 1С?

2. Использование формата схемы xsd

3. Фабрика XDTO  


1. Что такое XDTO-пакет 1С?


В этой статье я хочу поговорить о таком объекте конфигурации 1С как XDTO-пакет. Статья демонстрирует пример работы с XDTO и предназначена для разработчиков.


Коротко о том, что такое XDTO. С английского XMLDataTransferObjects, дословно – объекты переноса данных xml. По сути, предназначение XDTO-пакета 1С в том, чтобы описать структуру текста в xml и дать возможность работать с ним, как с объектом.

Меньше слов, больше дела :) Есть конкретная задача.  


2. Использование формата схемы xsd


В производственном цехе поставили новое оборудование, которое контролирует процесс производства. На оборудовании установлено программное обеспечение (ПО). Имея данные о товарах, ПО записывает значения взвешивания при производстве, и может отдавать информацию о затратах материалов и количестве производимой продукции. Оборудование умеет «отдавать» и принимать файлы. Как же теперь связать стороннее ПО с 1С? Можно посмотреть структуру файла xml, читать его последовательно, преобразовывая строки в нужные типы данных (число, дата, булево). Но с XDTO все намного проще! Разработчик ПО для оборудования описал структуру файлов в формате схемы xsd и передал ее нам. Чем это нам поможет? 


Xsd-схема (ее часть) выглядит так:




Ее мы с легкостью загружаем в конфигурацию (в ветке XDTO-пакеты выбираем «Импорт XML-схемы»):



И теперь файл xsd схемы стал объектом метаданных конфигурации. В нем четко описано, какая будет структура xml файлов, какие имена у атрибутов, и какие типы данных они содержат.


Вот как это выглядит в конфигурации:




Итак, у нас есть загруженный XDTO-пакет (формат файлов стороннего ПО). Далее формируем выгрузку товаров из 1С.


Пускай это будет обработка. В ней одна кнопка формирования файла xml.
Основная процедура будет такой:



Есть каталог, куда мы складываем файлы (потом оборудование их заберет). Для формирования каждого файла - своя процедура. 


3. Фабрика XDTO


Рассмотрим формирования тестового файла Contractor.xml
При помощи общего объекта Фабрика XDTO создаем типы, которые описывают объекты Contractors и contractor (см. скрины выше). С помощью той же фабрики XDTO создаем массив с типом Contractors, в который будем складывать объекты с типом contractor.



Когда мы создали объект XDTO, при помощи фабрики мы уже работаем с ним именно как объектом, а не как с xml-текстом. То есть обращаемся к его реквизитам через точку и назначаем их через знак «=», как будто работаем с обычным справочником.


В примере мы заполняем объект выдуманными данными, а на деле заполнение будет проходить с выборки справочника 1С. Когда мы закончили наполнение, осталось лишь записать файл и вернуть результат выполнения функции.



Вот так просто мы заполнили и сохранили файл, полностью соответствующий формату стороннего ПО.


Если мы получим такой же объект от оборудования, то обработка файла xml будет выглядеть так. Создаем чтение xml файла, читаем его через фабрику и работаем, как с объектом.




Подводя итог. XDTO-пакет (xsd-схема) помогает разработчикам двух разных программных продуктов (в нашем случае 1С и ПО оборудования в цехе) согласовать структуру файлов обмена 1С и типы значений в них. К тому же работать с объектом XDTO куда проще, чем с текстом. Вот так просто пользоваться XDTO-пакетами 1С!


Специалист компании ООО «Кодерлайн» 

Вадим Хоменко.

Наши проекты

Автоматизация кадрового учета на базе «1С:ERP Управление предприятием 2.0»
Автопредприятие ПАО «Газпром»

Отрасль:
Транспорт

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Настройка подсистемы кадрового учета;
- Перенос персональных данных;
- Заполнение НСИ и классификаторов. ...

Автоматизации учета затрат и расчета себестоимости с использованием конфигурации «Koderline: Управление проектами строительства скважин»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
«Koderline: Управление проектами строительства скважин»

Учет и планирование:
- собственную разработку компании «Кодерлайн» – конфигурацию «Koderline: Управление проектами строительства скважин»...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

Внедренное типовое решение:
Платформа 1С:Предприятие 8

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в данные международного учета (ГААП) на платформе «1С:Предприятие 8»:...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные активы
Расчеты с контрагентами
Регламентированная ...

Внедрение «1С:Зарплата и управление персоналом 8 КОРП» в компании «ПБК»
ООО «Партнер Бухгалтер Консультант»

Отрасль:
Бухгалтерские услуги

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Интеграция продукта с базой данных оперативного учета Axapta;
- Доработка функционала подсистемы...

Группа компаний АО «Киномакс»
Группа компаний АО «Киномакс»

Отрасль:
Культура, шоу-бизнес

Внедренное типовое решение:
БИТ.Финанс

- Разработка Положения о Казначействе группы компаний
- Разработка Положения об управлении договорами группы компаний ...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Бухгалтерия КОРП

Бухгалтерский учет Производственные операции Регламентированная отчетность Учет в обособленных подразделениях Налоговый учет ...

Внедрение блока расчета себестоимости РАУЗ в 1С:УПП 8
ООО «Пелигрин Матен»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление производственным предприятием

– Оформление заказов покупателей;
– Взаиморасчеты с покупателями;
– Оформление заказов поставщикам;
– Управление отношениями с ...

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

Отрасль:
Оптовая торговля транспортными средствами и оборудованием

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский учет:
- Банк и касса...

ООО “РТИТС”
ООО “РТИТС”

Отрасль:
Транспортные системы

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Блок регламентированного кадрового учета и расчета заработной платы в 1С:ERP;
Согласование договоров, командировок в ДО;
Контроль испо...

ООО «Вистеон Автоприбор Электроникс»
ООО «Вистеон Автоприбор Электроникс»

Отрасль:

Внедренное типовое решение:
1C:Управление производственным предприятием

- Управленческий учет; - Расчет зарплаты; - Логистика адресного склада; - Учет брака; - Оперативный учет ТМЦ; - РСБУ (БУ и НУ); ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение