Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
16 апр 2024, 12:23

Как выгрузить элемент справочника "контрагенты" в файл XML

Автор ЕвгенийЗерно, 23 июл 2018, 15:41

0 Пользователей и 1 гость просматривают эту тему.

ЕвгенийЗерно

Добрый день! Подскажите как выгрузить элемент справочника "контрагенты" в файл XML, с учетом того, что выгружать данные контрагента, нужно того, который выбран в документе. Например: Есть документа, в нем выбран контрагент из справочника "Контрагенты", как мне выгрузить в файл его ИНН. Выгрузка происходит при нажатии кнопки в форме этого документа.

Получился приблизительно такой код, но он естественно не работает, помогите сделать правильно:
&НаКлиенте
Процедура Выгрузка()
   
Запись=Новый ЗаписьXML;
Запись.ОткрытьФайл("D:\document.xml", "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Корневой");
Запись.ЗаписатьАтрибут("Доумент", "Взвешивание");

Выборка = Справочники.Номенклатура.Выбрать();
Запись.ЗаписатьНачалоЭлемента("Код");
Запись.Записать(Выборка.Код);
Запись.ЗаписатьКонецЭлемента();

Запись.Закрыть();
Сообщить("Выгружено");
КонецПроцедуры

Как мне обратится к открытому документу, выбрать поле справочника и из него выбрать ИНН и записать в XML?

wise

(0) можно через "Объект"

&НаКлиенте
Процедура Выгрузка()
   
Запись=Новый ЗаписьXML;
Запись.ОткрытьФайл("D:\document.xml", "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Корневой");
Запись.ЗаписатьАтрибут("Доумент", "Взвешивание");

//Выборка = Справочники.Номенклатура.Выбрать();
Запись.ЗаписатьНачалоЭлемента("Клиент");
Запись.ЗаписатьТекст(XMLСтрока(Объект.Партнер));
Запись.ЗаписатьКонецЭлемента();

Запись.Закрыть();
Сообщить("Записано !");
КонецПроцедуры
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

ЕвгенийЗерно

Цитата: wise от 23 июл 2018, 18:09
(0) можно через "Объект"

&НаКлиенте
Процедура Выгрузка()
   
Запись=Новый ЗаписьXML;
Запись.ОткрытьФайл("D:\document.xml", "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Корневой");
Запись.ЗаписатьАтрибут("Доумент", "Взвешивание");

//Выборка = Справочники.Номенклатура.Выбрать();
Запись.ЗаписатьНачалоЭлемента("Клиент");
Запись.ЗаписатьТекст(XMLСтрока(Объект.Партнер));
Запись.ЗаписатьКонецЭлемента();

Запись.Закрыть();
Сообщить("Записано !");
КонецПроцедуры


Но ведь мне нужно записать не самого Контрагента (в вашем случае Партнера), а элемент этого справочника ( его ИНН). Как обратится к реквизиту этого партнера ,который заносили в справочник "контрагенты"?
Добавлено: 24 июл 2018, 09:11


Цитата: ЕвгенийЗерно от 24 июл 2018, 08:29
Цитата: wise от 23 июл 2018, 18:09
(0) можно через "Объект"

&НаКлиенте
Процедура Выгрузка()
   
Запись=Новый ЗаписьXML;
Запись.ОткрытьФайл("D:\document.xml", "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Корневой");
Запись.ЗаписатьАтрибут("Доумент", "Взвешивание");

//Выборка = Справочники.Номенклатура.Выбрать();
Запись.ЗаписатьНачалоЭлемента("Клиент");
Запись.ЗаписатьТекст(XMLСтрока(Объект.Партнер));
Запись.ЗаписатьКонецЭлемента();

Запись.Закрыть();
Сообщить("Записано !");
КонецПроцедуры


Но ведь мне нужно записать не самого Контрагента (в вашем случае Партнера), а элемент этого справочника ( его ИНН). Как обратится к реквизиту этого партнера ,который заносили в справочник "контрагенты"?

Добавил ИНН и получилось  Запись.ЗаписатьТекст(XMLСтрока(Объект.Партнер));
Спасибо.
Подскажите пожалуйста как теперь выгрузить его Адрес, ведь он является не полем ввода, а полем выбора, где в форме указываем в свободной форме Юридический адрес.Представление. Как к нему обратиться и выгрузить его?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск