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

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



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

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


Классическая анимация » Прыгающая подушка

Оборудование: Pentium-IV, Wacom Graphire3 CTE-630 Среда: Flash 8 Год: 2005   Первая и, видимо, последняя попытка нарисовать мини-мультфильм по т...


Юмор » ЛОР. Призрак в опере? Нет проблем, обеспечим!

Да! ЛОР снова торт. Если кто еще не знает, 9 октября 2011 года усилиями однозвёздного пользователя bk_ стартовала Гитарная Битва Луноходов.   На...


Демо на Ассемблере » Atommash

Размер: 1253 байт Требования: DOS 6.22, AdLib Sound Год: 1999   Интро для моей второй FIDO-ноды N5062/10, я на ней жил некоторое время. Инт...

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

База Alensav (1, 2, 3)

 

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

 

База Tairesh

База Ivnglkv

База Kolyag87

База Andyk101

База Garik456456

База Harpokrat

База SalexIzyh

База Duwaz

База RuDennn (Bunny-Hop)

База Manakaden

База Vitvrn

База Fanrok

База Grimar

База_Juryak

 

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

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