Собираем
информацию
по крупицам
Статьи - Компьютерное

Платформа 1C:Предприятие

Как в 1С v.8.2 получить XML-код для DOM-элемента
12-04-2012
11:23:25

При написании процедур вызгрузки и загрузки XML данных часто требуется конвертирование частей DOM-дерева в XML код. Части DOM-дерева обычно представлены объектом типа ЭлементDOM. Прямой процедуры получения XML-кода для DOM-элемента я не нашел. Поэтому пришлось быдлокодить и  написать свою не самую быструю, но работающую функцию.

 

Вот она:

 

&НаСервере
Функция ПреобразоватьИзDOMЭлементВXMLКод(ОбрабатываемыйЭлемент)

 // Имя временного файла, куда будет сохранен XML код
 ИмяВременногоФайла=ПолучитьИмяВременногоФайла();

 // Сохранение кода во временный XML файл
 ЗаписьXML = Новый ЗаписьXML;
 ЗаписьXML.ОткрытьФайл(ИмяВременногоФайла, "UTF-8");
 ЗаписьDOM = Новый ЗаписьDOM; 
 ЗаписьDOM.Записать(ОбрабатываемыйЭлемент, ЗаписьXML);
 ЗаписьXML.Закрыть();

 // Получение XML кода из временного файла
 XMLФайл=Новый ТекстовыйДокумент;
 XMLФайл.Прочитать(ИмяВременногоФайла, "UTF-8");
 XMLКод=XMLФайл.ПолучитьТекст();

 // Временный файл удаляется
 УдалитьФайлы(ИмяВременногоФайла);

 Возврат XMLКод;

КонецФункции

 

Надеюсь, кому-то поможет.

 

Кстати, можно передавать в функцию и объект типа ДокументDOM, он тоже будет преобразован в XML код.

 

Конечно, нехорошо использовать запись на диск для получения XML-представления. Но так как в моем случае функция используется разово при обработке добавления первичных данных, то мне её хватает и в таком виде.


К списку "Компьютерное"

Интересное на сайте


Web - разработка » Как настроить горячие клавиши для переключение вкладок в Firefox

Традиционно, в браузере Firefox для переключения вкладок используются следующие комбинации клавиш: Ctrl+Tab - перейти на следующую (правую) вкладку; ...


Общество » Литература пыльного века

Эту статью я писал как ответ на небольшой вопрос о литературе будущего, заданный на Хабрахабре. Здесь размещена отредактированная и дополненная версия...


Web-разработка » SQLite3 PDO драйвер для CodeIgniter 2

Официальная страница / Official page     SQLite3 PDO драйвер для CodeIgniter v.2.1.x.Протестирован в CodeIgniter v.2.1.2Требования: CodeIgni...

RSS подписка

Подпишитесь на новости сайта по RSS

Поделиться



http://www.loko-ie.ru/ продукция поковки и штамповки.

Внимание!


На этом сайте разрабатывается программа MyTetra и её родственные проекты. Доступны к просмотру следующие базы знаний:

 

База Xintrea (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)

База Rarrugas (1, 2)

База Balas

База YellowRaven

База Yurons

База Lesnik757

База Shandor

База Sirrichar

База Anatolean

База Аrmagedec

База SorokinRed

База Deadelf79

База Fadk

 

Требуют доработки:

 

База Tairesh

База Ivnglkv

База Kolyag87

База Andyk101

База Garik456456

База Harpokrat

База SalexIzyh

База Duwaz

 

Подробности на странице MyTetra Share.

 WebHamster.Ru
 Домик любопытного хомячка
Яндекс индекс цитирования
Почтовый ящик