Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Программная выгрузка СКД в XML + добавление собственных данных.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Система компоновки данных
Said
Все привет, необходимо реализовать программную выгрузку в XML СКД с добавлением собственных данных. Все должно быть одним файлом. СКД я выгружая а вот с добавлением собственных тегов проблема.
Пример кода
    ЗаписьXML = Новый ЗаписьXML;
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    Диалог.Фильтр = "Файлы XML (*.xml) |*.xml";
    
    Если НЕ Диалог.Выбрать() Тогда
        Возврат;
    КонецЕсли;
    
    Путь = Диалог.ПолноеИмяФайла;
    ЗаписьXML.ОткрытьФайл(Путь);
    
    СериализаторXDTO.ЗаписатьXML(ЗаписьXML, ПолучитьМакет("Макет"), "dataComposition", "http://v8.1c.ru/8.1/data-composition-system/composition-template");

    ЗаписьXML.Закрыть();
    
    ЗаписьXML = Новый ЗаписьXML;
    ЗаписьXML.ОткрытьФайл(Путь);

    ЗаписьXML.ЗаписатьОбъявлениеXML();

    ЗаписьXML.ЗаписатьНачалоЭлемента("Bulevo");
    ЗаписьXML.ЗаписатьТекст(XMLСтрока(Булево));
    ЗаписьXML.ЗаписатьКонецЭлемента();
    
    ДанныеДляОтправки = ЗаписьXML.Закрыть();


У меня тег Bulevo перезатирает весь ХМЛ. Подскажите что не так?
Заренее благодарен
sava1
А что ВЫ хотели получить такой конструкцией ? Что написали - то и получили.
logist
Надо сначала прочитать файл, а потом дописывать.
Said
logist @ Вчера, 15:23 необходимо зарегистрироваться для просмотра ссылки ,
Можно более подробно, или какой то пример?
sava1
Варианты:
1. Открываем нужный файл на чтение, другой на запись. Последовательно читаем 1й, пишем во 2й. Там, где надо, вставляем свои данные.
2. Открываем файл как текстовый, находим место, вписываем свое как текст (т.е открыть/закрыть теги - на Вас).
3. Считываем файл в ДОМ, редактируем, сохраняем.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.