Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
26 Мар 2017, 06:20
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Выгрузка в XML формат  (Прочитано 296 раз)

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

Оффлайн xdto

  • **
  • Сообщений: 97
  • РЕПУТАЦИЯ: 7
  • КПД: 7%
  • Регистрация: 2015-10-01
  • Сайт: 
  • Профессия: Программист 1С
Друзья подскажите как выгрузить в XML формат данные
есть справочник с ревизитами код, наименование, пол, форме списка
и в нижней части формы списка есть динамический список с таблицей
регистра сведений с полями тип,вид, представление увидите на скрине ниже
так вот как мне выгрузить данные этих полей а именно код, наименование,пол тип, вид представление
Списибо


Вот та я выгружаю Код ,Наименование, Пол    -- поля справочника
 
 
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл("Z:\client.xml");
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьXML.ЗаписатьНачалоЭлемента("Корневой");
ЗаписьXML.ЗаписатьАтрибут("ИмяСправочника", "Клиенты");
ЗаписьXML.ЗаписатьКомментарий("Выгрузка элементов справочника");
СтрокиКлиенты = ПолучитьСтрокиКлиенты();
Для Каждого Строка Из СтрокиКлиенты Цикл      Значение = РазобратьСтроку(Строка);
ЗаписьXML.ЗаписатьНачалоЭлемента("ЭлементСправочника");

ЗаписьXML.ЗаписатьНачалоЭлемента("Наименование");
ЗаписьXML.ЗаписатьТекст(Значение.Наименование);
ЗаписьXML.ЗаписатьКонецЭлемента();

ЗаписьXML.ЗаписатьНачалоЭлемента("Код");
ЗаписьXML.ЗаписатьТекст(Значение.Код);
ЗаписьXML.ЗаписатьКонецЭлемента();

ЗаписьXML.ЗаписатьНачалоЭлемента("Пол");
ЗаписьXML.ЗаписатьТекст(Значение.Пол);
ЗаписьXML.ЗаписатьКонецЭлемента();

КонецЦикла;     
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.Закрыть()
;
 
 
А как остальные поля выгрузить не знаю поля из регистра сведений


Оффлайн LexaK

  • *****
  • Сообщений: 1173
  • РЕПУТАЦИЯ: 313
  • КПД: 27%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
да все тоже самое, лучше конечно по функциям разбросать, но для визуализации оставляем пока так
к стати у вас косяк в коде !
Скобки НачалоЭлемента и КонецЭлемента - должны совпадать!

у вас
Для Каждого Строка Из СтрокиКлиенты Цикл
Значение = РазобратьСтроку(Строка);
ЗаписьXML.ЗаписатьНачалоЭлемента("ЭлементСправочника");
...
ЗаписатьНачалоЭлемента("ЭлементСправочника");  - Находится в цикле !

а ЗаписьXML.ЗаписатьКонецЭлемента(); - - за циклом
...
КонецЦикла;     
ЗаписьXML.ЗаписатьКонецЭлемента();

возможно при записи в файл, сообщения об ошибке и не будет, а вот при чтении ...

а теперь относительно вашей доработки по поводу вывода КИ, делаете все то же самое что и при выводе реквизитов контрагента.
вот примерная схема, там мелкие детали остаются, которые по подобию вы легко сами допрограммируете

ваш код с небольшими изменениями
СтрокиКлиенты = ПолучитьСтрокиКлиенты();
Для Каждого Строка Из СтрокиКлиенты Цикл
Значение = РазобратьСтроку(Строка);
ЗаписьXML.ЗаписатьНачалоЭлемента("ЭлементСправочника");

ЗаписьXML.ЗаписатьНачалоЭлемента("Наименование");
ЗаписьXML.ЗаписатьТекст(Значение.Наименование);
ЗаписьXML.ЗаписатьКонецЭлемента();

ЗаписьXML.ЗаписатьНачалоЭлемента("Код");
ЗаписьXML.ЗаписатьТекст(Значение.Код);
ЗаписьXML.ЗаписатьКонецЭлемента();

ЗаписьXML.ЗаписатьНачалоЭлемента("Пол");
ЗаписьXML.ЗаписатьТекст(Значение.Пол);
ЗаписьXML.ЗаписатьКонецЭлемента();

    //здесь дополнительный код по выводу КИ, почти все тоже самое что и при выводе Контрагента
    СтрокиКИ = ПолучитьСтрокиКИ(Строка); //получаем строки РС по текущему контрагенту Строка.Контрагент
    Для Каждого СтрокаКИ Из СтрокиКИ Цикл
    ЗначениеКИ = РазобратьСтрокуКИ(СтрокаКИ);

    //Начало записи КИ
    ЗаписьXML.ЗаписатьНачалоЭлемента("КонтактнаяИнформация");

    ЗаписьXML.ЗаписатьНачалоЭлемента("Тип");
    ЗаписьXML.ЗаписатьТекст(ЗначениеКИ.Тип);
    ЗаписьXML.ЗаписатьКонецЭлемента();

    ЗаписьXML.ЗаписатьНачалоЭлемента("Вип");
    ЗаписьXML.ЗаписатьТекст(ЗначениеКИ.Вип);
    ЗаписьXML.ЗаписатьКонецЭлемента();

    ЗаписьXML.ЗаписатьНачалоЭлемента("Представление");
    ЗаписьXML.ЗаписатьТекст(ЗначениеКИ.Представление);
    ЗаписьXML.ЗаписатьКонецЭлемента();

    //завершение записи КИ
    ЗаписьXML.ЗаписатьКонецЭлемента();
    КонецЦикла;     

//перенесено в цикл, как пара элементу
ЗаписьXML.ЗаписатьКонецЭлемента();

КонецЦикла;     
//обрано, возможна ошибка
//ЗаписьXML.ЗаписатьКонецЭлемента();


Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн xdto

  • **
  • Сообщений: 97
  • РЕПУТАЦИЯ: 7
  • КПД: 7%
  • Регистрация: 2015-10-01
  • Сайт: 
  • Профессия: Программист 1С
Вот Обработка моя со всеми функциями
Добавлено: 13 Июл 2016, 15:48

Выгружает одинаковые позиции и слишком большой файл формирует
Добавлено: 14 Июл 2016, 08:40

Ваш код не сработывает
Добавлено: 14 Июл 2016, 08:41

Нет идеи у когго нибудь еще?

Последний раз редактировалось: xdto; 14 Июл 2016, 08:41. Причина: Объединение сообщений


Теги:
 

выгрузка из "Платежные документы" выборочно в "Бухгалтерию предприятия"

Автор hkvРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 3007
Последний ответ 09 Окт 2014, 15:58
от дфтын
Выгрузка Бух учет из "Зарплаты и управления персоналом 8" в "1С:Бухгалтерию 8"

Автор KazakOFFРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 1639
Последний ответ 10 Ноя 2015, 16:20
от vitasw
Ошибка при загрузке данных через (Обработка "Выгрузка и загрузка данных XML")

Автор Сергей_87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 7377
Последний ответ 26 Апр 2012, 23:08
от Dethmontt
Модуль "выгрузка в банк"

Автор Dima IgnatovРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 618
Последний ответ 11 Май 2016, 13:23
от Rasty
Выгрузка из "Зарплата и кажпы" платеж за три месяца

Автор vlasssov71Раздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 870
Последний ответ 07 Июл 2015, 15:19
от vlasssov71

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
143 Сообщений
alex0402
112 Сообщений
Norfolk
51 Сообщений
LexaK
45 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
друган
21 Сообщений
AsadRoman
20 Сообщений
alexandr_ll
19 Сообщений
Константин5825
18 Сообщений
MrLvovsky MrLvovsky
16 Сообщений

* Кто онлайн

  • Точка Гостей: 88
  • Точка Скрытых: 0
  • Точка Пользователей: 2
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal