helpf.pro
Регистрация
 0 
Распечатать

1С 8.3 : Работаем с XML используя ЧтениеXML и ЗаписьXML

Примеры кода для Записи данных в XML файл и его последующего Чтения:

Код 1C v 8.3
 &НаКлиенте
Функция ВывестиЭлем(ХМЛ,Знач Смещ);
    
    Рез=1;
    Попытка
        Пока ХМЛ.Прочитать() Цикл
            ТипУзла=ХМЛ.ТипУзла;
            Если (ТипУзла=ТипУзлаXML.НачалоЭлемента) Тогда
                Смещ=Смещ+"    ";
                Сообщить(Смещ+"Элемент "+ХМЛ.Имя+":",СтатусСообщения.Важное);
                
                Пока (ХМЛ.ПрочитатьАтрибут()) Цикл
                    Сообщить(Смещ+"Атрибут: "+ХМЛ.Имя+", значение: <"+ХМЛ.Значение+">");
                КонецЦикла;
            ИначеЕсли (ТипУзла=ТипУзлаXML.КонецЭлемента) Тогда 
                Смещ=Лев(Смещ,СтрДлина(Смещ)-4);
            ИначеЕсли (ТипУзла=ТипУзлаXML.Текст) Тогда 
                Сообщить(Смещ+"Текст элемента: <"+ХМЛ.Значение+">");
            ИначеЕсли (ТипУзла=ТипУзлаXML.СекцияCDATA) Тогда 
                Сообщить(Смещ+"CDATA: <"+ХМЛ.Значение+">");
            ИначеЕсли (ТипУзла=ТипУзлаXML.Комментарий) Тогда 
                Сообщить(Смещ+"Комментарий: <"+ХМЛ.Значение+">",СтатусСообщения.Информация);
            Иначе
                Сообщить(Смещ+"Элемент "+ХМЛ.Имя+":");
            Сообщить(Смещ+"Тип: "+ХМЛ.Значение);
            КонецЕсли; 
            
        КонецЦикла; 
        
    Исключение
        Сообщить(ОписаниеОшибки());
        Рез=0;
    КонецПопытки;
    
    Возврат Рез;
КонецФункции


&НаКлиенте
Процедура ВыгрузитьХМЛ(ИмяФайла) Экспорт
    
    ХМЛ=Новый ЗаписьXML;
    ХМЛ.ОткрытьФайл(ИмяФайла,Новый ПараметрыЗаписиXML("windows-1251",,Ложь,Ложь));
    ХМЛ.ЗаписатьОбъявлениеXML();
    ХМЛ.ЗаписатьНачалоЭлемента("Файл");
    ХМЛ.ЗаписатьАтрибут("Атрибут_Файл_1","Здесь содержимое Атрибут_Файл_1");
    ХМЛ.ЗаписатьТекст("Здесь содержимое Файл");
    ХМЛ.ЗаписатьКомментарий("Далее следует содержимое файла");
    ХМЛ.ЗаписатьНачалоЭлемента("СодержимоеФайла");
    ХМЛ.ЗаписатьАтрибут("Атрибут_СодержимоеФайла_1","Здесь содержимое Атрибут_СодержимоеФайла_1");
    ХМЛ.ЗаписатьТекст("Здесь содержимое СодержимоеФайла");
    ХМЛ.ЗаписатьСекциюCDATA("Это секция CDATA");
    ХМЛ.ЗаписатьКонецЭлемента();
    ХМЛ.ЗаписатьКонецЭлемента();


    ХМЛ.Закрыть();
    ХМЛ=Неопределено;
    
    ХМЛ=Новый ЧтениеXML;
    ХМЛ.ОткрытьФайл(ИмяФайла,Новый ПараметрыЧтенияXML(,,,ТипПроверкиXML.НетПроверки));
    ВывестиЭлем(ХМЛ,"");
    ХМЛ.Закрыть();
    ХМЛ=Неопределено;
КонецПроцедуры
Разместил:   Версии: | 8.2 УП | 8.3 |  Дата:   Прочитано: 42838
 0 
Распечатать
Возможно, вас также заинтересует
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 50
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ
1C: Enterprise Development Tools 52
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
Google maps : вывод точек на карту и режим панорамы 9
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С возможностью просмотра панора
Microsoft SQL Server Native Client Добавление значения в столбец "datetime" привело к переполнению 2
При формировании отчета на СКД получили ошибку: Microsoft SQL Server Native Client 11.0: Добавление значения в столбец "datetime" привело к переполнению Подробнее текст такой: ... по причине: Ошибка компоновки данных по причине: Ошибка получени
PostgreSQL: установка, настройка, обслуживание 11
PostgreSQL напрямую "из коробки" применяться для использования с 1С Предприятем не может. Необходима именно адаптированная версия от 1С, превращающая PostgreSQL в блокировочник, причем нужно понимать, что блокировки будут накладываться на всю таблиц
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.