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

Платформа 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-представления. Но так как в моем случае функция используется разово при обработке добавления первичных данных, то мне её хватает и в таком виде.



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

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


ПЭВМ "Микроша" » Комплект программ "Редактор и Ассемблер" для ПЭВМ "Микроша"

Часть документации на ПЭВМ "Микроша" с описанием работы текстового редактора и транслятора ассемблера. Данный комплект программ занимал 4Кб: 2Кб уходи...


Linux: как перестать удивляться, и начать работать » Удаленная новость на Linux.Org.Ru о проверке ядра Linux статическим анализатором PVS Studio

Ядро Linux проверено проприетарным статическим анализатором PVS StudioМетки: kernel, linux   https://www.linux.org.ru/news/commercial/11208468 &n...


Flash-анимация » Анимированый логотип портала RockFM.ru

Оборудование: Pentium-200MMX, RAM 32Мб Среда: Xara X, Flash MX Год: 2002   Этот логотип я разработал для портала RockFM.ru. Задача стояла следую...

RSS подписка

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

Поделиться этой страницей


Статистика



Внимание!


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

 

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

База Rarrugas (1, 2)

База Balas

База YellowRaven

База Yurons

База Lesnik757

База Shandor

База Sirrichar

База Anatolean

База Аrmagedec

База SorokinRed

База Deadelf79

База Adgaver (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

База Pipitos1983

База Soxsten

База Silenn

База Shlyapnikova - херомантия и ригидность

База Svoynickname

База Larson227

База Velonski

База BrokeRU

База Mcold

 

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

 

База Tairesh

База Ivnglkv

База Kolyag87

База Andyk101

База Garik456456

База Harpokrat

База SalexIzyh

База Duwaz

База RuDennn

База Manakaden

База Vitvrn

База Fanrok

 

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

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