Имя: Пароль:
1C
1С v8
Выгрузка в XML
0 Casper21
 
16.10.15
14:47
Как сделать чтобы вывело иерархически?
С группами?


Процедура ВыполнитьЗаписьДанных() Экспорт
    
    Сообщение = Новый СообщениеПользователю;
    Сообщение.Текст = "----Выгрузка в узел----";
    Сообщение.Сообщить();
    
    ЗаписьXML = Новый ЗаписьXML;
    ЗаписьXML.ОткрытьФайл("d:\temp\tovar.xml");
    ЗаписьXML.ЗаписатьОбъявлениеXML();
    ЗаписьXML.ЗаписатьНачалоЭлемента("Корневой");

    // Записать атрибут элемента Корневой
    ЗаписьXML.ЗаписатьАтрибут("Справочник", "Товари");
    ЗаписьXML.ЗаписатьКомментарий("Элементы справочника:");

    Выборка = Справочники.Товари.ВыбратьИерархически();
    Пока Выборка.Следующий() Цикл
        Если Выборка.ЭтоГруппа Тогда
            Продолжить;
        КонецЕсли;
        ЗаписьXML.ЗаписатьНачалоЭлемента("ЭлементСправочника");

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

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

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

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

    ЗаписьXML.ЗаписатьКонецЭлемента();
    ЗаписьXML.Закрыть();
    Сообщение = Новый СообщениеПользователю;
    Сообщение.Текст = "----Конец выгрузки----";
    Сообщение.Сообщить();
КонецПроцедуры

Этот код выводит просто список данных.
Это где-то надо поменять здесь?


Пока Выборка.Следующий() Цикл
        Если Выборка.ЭтоГруппа Тогда
            Продолжить;
        КонецЕсли;
1 Лефмихалыч
 
16.10.15
15:04
автор, я вот хочу тебе помочь, но я ни струя не понял, что тебе надо
2 Живой Ископаемый
 
16.10.15
15:06
пофиг, все равно когда ты пишешь элемент, то не записываешь родителя. Выгрузишь ты группы, а все равно все элементы будут в корне
3 Господин ПЖ
 
16.10.15
15:08
>С группами?

ж.па будет... примерно тут

ЗаписьXML.ЗаписатьТекст(Выборка.Виробник)
4 AllJoke
 
16.10.15
15:09
Пробуй - ЗаписатьАтрибут.
5 Господин ПЖ
 
16.10.15
15:10
иерархию тебе будет делать реквизит Родитель...

а не то что ты себе нафантазировал
6 Господин ПЖ
 
16.10.15
15:11
пытаться строить "дерево" в xml не надо в данном случае
7 Casper21
 
16.10.15
15:19
А моя задача как раз заключается в выведенные в файле XML "дерево" (6)
8 Casper21
 
16.10.15
15:22
Ну например у меня есть
1)Товари
а) пища:
  - Бла бла
-бла бла
б) одежда:
-бла бла
-бла бла
9 Горогуля
 
16.10.15
15:24
(7) пиши всё подряд, это и будет дерево в файле
10 Живой Ископаемый
 
16.10.15
15:28
сделай так:
http://screencast.com/t/fg2GSg4gak
:)
11 Господин ПЖ
 
16.10.15
15:29
(8) тогда пиши
12 Casper21
 
16.10.15
15:49
спс, потом попробую
13 Casper21
 
16.10.15
17:23
(3) а почему ЗаписьXML.ЗаписатьТекст(Выборка.Виробник) ругаетса?
14 Горогуля
 
16.10.15
17:46
(13) там чуть ниже написано почему