Запись данных в XML-документ

Категория: Учебники по 1С » Технологии интеграции 1С Предприятия 8.2

Листинг:

 

Здесь так же, как и при записи DBF-файла, вызывается серверная функция ПолучитьСтрокиНоменклатуры(), которая возвращает на клиента массив строк элементов номенклатуры, не являющихся группой. Затем в цикле обхода элементов массива в функции РазобратьСтроку () каждая строка разбирается на данные структуры, и элементы этой структуры записываются в виде элементов XML-файла.

 

Текст функций ЭлементВСтроку(), РазобратьСтроку () и ПолучитьСтрокиНоменклатуры () приводился ранее (см. листинги 1.2, 1.6 и 1.16).

В результате выполнения представленного кода будет получен следующий XML-документ

 
Первой строкой кода создается объект ЗаписьХМL. Через созданный объект в модели последовательного доступа будет производиться запись данных в XML-документ. С помощью метода ОткрытьФайл () указывается имя файла, куда будет производиться запись данных. Метод ЗаписатьОбъявле- ниеХМЬО определяет директиву, что создаваемый документ будет являться XML-документом (директива размещается в первой строке созданного документа).
 
Для записи элемента XML-документа используются методы ЗаписатьНачалоЭлемента(), ЗаписатьАтрибут(), ЗаписатьТекст () , ЗаписатьКонецЭлемента () , которые производят запись соответствующего узла элемента XML в файл. При этом важно соблюдать порядок (иерархию) вызова этих методов.
 
Напомним, что элемент можно представить в виде следующих узлов:
<ИМЯ АТРИБУТ=Значение>Содержимое (Текст или описание другого элемента) </ИМЯ>
Пример записи элемента XML:
Следует обратить внимание на тот факт, что если при определении начала элемента в соответствующем методе указывается его имя, то при закрытии имя не указывается. Закрывается элемент, открытый последним. В связи с этим следует внимательно относиться к последовательности исполняемых методов, чтобы не запутаться в иерархии (в ряде случаев для упрощения алгоритмов создания документов сложной структуры могут использоваться рекурсивные вызовы процедур, ответственных за создание элементов).
Правильный XML-документ содержит единственный корневой элемент, запись всего документа начинается с записи этого элемента.
 
Запись любого элемента XML начинается с записи открывающего тега (начала элемента, выполняемого с помощью метода ЗаписатьНачалоЭлемента()). Только в контексте начала элемента можно записывать атрибуты XML-документа (используется метод ЗаписатьАтрибут(), вызываемый последовательно для каждого атрибута). Записать атрибут после записи текста или конца элемента нельзя.
 
После записи начала элемента и всех его атрибутов можно провести запись текста (это означает, что у формируемого элемента XML нет вложенных элементов) или рекурсивно перейти к записи другого вложенного элемента.
 
После того как либо текст, либо другой вложенный элемент (элементы) закрыт, производится запись конца элемента (метод ЗаписатьКонецЭлемента()) .
 
P.S. Закажите прямо сейчас видеокурс Мастер 1С PRO в котором я в деталях обьяснил как настроить обмен данных между 1С конфигурацией и сайтом, работать с XML файлами и создавать 1С конфигурации с абсолютного нуля.

ЗАКАЗАТЬ ВИДЕОКУРС ПРЯМО СЕЙЧАС СО СКИДКОЙ


dle

Помоги проекту! Расскажи друзьям о сайте: