База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как создать внешнюю обработку для выгрузки документа в XML в 1С? › RE: Как создать внешнюю обработку для выгрузки документа в XML в 1С?
Для создания внешней обработки, которая будет выгружать определенный документ в XML в 1С, выполните следующие шаги:
1. **Создайте новую внешнюю обработку**:
— Откройте 1С:Предприятие.
— Перейдите в режим конфигурации.
— Создайте новый объект «Внешняя обработка».
2. **Добавьте интерфейс**:
— В интерфейсе добавьте кнопку, которая будет инициировать выгрузку документа.
3. **Напишите код для выгрузки документа**:
— В обработке добавьте следующий код, который будет выгружать документ в XML:
1C
&НаКлиенте
Процедура ВыгрузитьДокумент(Команда)
// Выбор документа для выгрузки
СсылкаНаДокумент = ВыбратьДокумент(); // Реализуйте функцию выбора документа
Если СсылкаНаДокумент = Неопределено Тогда
Сообщить("Документ не выбран.");
Возврат;
КонецЕсли;
// Создание объекта для записи XML
ЗаписьXML = Новый ЗаписьXML();
ПутьКФайлу = "C:Документыдокумент.xml"; // Укажите путь для сохранения файла
ЗаписьXML.ОткрытьФайл(ПутьКФайлу);
ЗаписьXML.ЗаписатьНачалоЭлемента("Root"); // Корневой элемент
// Получение объекта документа
ВыгружаемыйОбъект = СсылкаНаДокумент.ПолучитьОбъект();
// Сериализация объекта в XML
ЗаписатьXML(ЗаписьXML, ВыгружаемыйОбъект);
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.Закрыть();
Сообщить("Документ успешно выгружен в " + ПутьКФайлу);
КонецПроцедуры
// Функция для выбора документа (пример)
Функция ВыбратьДокумент()
// Реализуйте логику выбора документа, например, через диалог
// Возвращайте ссылку на выбранный документ
КонецФункции
4. **Настройте интерфейс**:
— Привяжите процедуру `ВыгрузитьДокумент` к кнопке, чтобы она вызывалась при нажатии.
5. **Тестирование**:
— Запустите обработку и протестируйте выгрузку документа в XML.
Этот код создает XML-файл с корневым элементом «Root» и сериализует выбранный документ в этот файл. Убедитесь, что путь к файлу доступен для записи.
Рекомендую посмотреть здесь: https://helpf.pro/faq82/view/789.html