KoderLine
Обслуживание и внедрение
Наш Facebook Наш Instagram Наш YouTube
+7 (495) 374 55 29
KoderLine

Работа с XDTO-пакетами

0
977
17.07.2019 Вадим Хоменко

Содержание

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С!


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

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

Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Теги
#1С: CRM #1С: ERP #1С: ERP Управление строительной организацией #1С: ERP. Управление буровой компанией #1С: WMS Управление складом #1С: Аренда и управление недвижимостью #1С: БУХ #1С: Договорчики #1С: Документооборот #1С: ЗУП #1С: Интеграция #1С: КА #1С: Колледж #1С: Конвертация данных #1С: Платформа #1С: Розница #1С: Сценарное тестирование #1С: ТОИР #1С: УАТ #1С: УКФ #1С: Университет #1С: УНФ #1С: УПП #1С: Управление строительной организацией #1С: УТ #1С: УХ #ADO #APACHE #API #com-объекты #Excel #GoogleDrive #HTTP #ITIL #Koderline: Управление медиа-холдингом #Koderline: Управление проектами строительства скважин #LINUX #MS SQL Server #WEB #WEB-сервисы 1С #Word #XML #Администрирование 1С #Безопасность сервера #Бесшовная интеграция #БИТ.Финанc #Битрикс24 #Блокировки в 1С #БСП #БУ #Бурение скважин #Бюджетирование #Внедрение #Внедрение ERP #Закрытие месяца #Запросы 1С #Интеграция 1С #Как сделать в 1С #Конвертация данных #Корпоративное сопровождение #Лизинг #Лицензии 1С #Моделирование #МСФО #Налоги #Обмен между базами #Обновления #Оптимизация #Отпуск #Отчетность #Отчеты в 1С #Оценка задач #Перенос данных #Планирование #Полезные обработки #Правила обмена #Проводки 1С #Программирование в 1С #Программные права #Продажи #Производство #Расширение конфигурации #РСБУ #СКД #Сравнение конфигураций #Тестирование 1С #Техническое задание #Торговое оборудование #Транспортная логистика #Управление проектами #Финансовый учет #Ценообразование #Экзамен 1С #Яндекс.Касса Email или телефон
Услуги программиста 1С
Получите специалиста  
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.