Имя: Пароль:
1C
 
Разбор DataPacket от Borland в 8.3
0 alexoren
 
12.02.18
10:14
Всем привет.

Ни у кого не завалялась функция разбора XML Borland DataPacket.

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<DATAPACKET Version="2.0">
<METADATA>
  <FIELDS>
   <FIELD attrname="AAA" fieldtype="i4" />
   <FIELD attrname="BBB" fieldtype="i4" />
   ...
   </FIELDS>
   <PARAMS />
  </METADATA>
<ROWDATA>
  <ROW AAA="611" BBB="1" />
  ...
</ROWDATA>
</DATAPACKET>
1 alexoren
 
12.02.18
10:27
Не любят тут халявщиков ) Да просто быстрее надо было, ладн там писать то не долго, но может у кого-то было )
2 Aleksey
 
12.02.18
10:30
а чем он от обычного xml отличается
3 Aleksey
 
12.02.18
10:31
Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл(ПутьКФайлу);

Пока Чтение.Прочитать() Цикл

   // Прочитать "структурные части" элементов.  
   // Проверить, какая часть элемента - текущая.  
    Если Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
        ИмяУзла = Чтение.Имя; Сообщить("--" + ИмяУзла);

       // Атрибуты элементов можно читать только если текущая часть -  
       // начало элемента  
        Пока Чтение.ПрочитатьАтрибут() Цикл

           // Прочитать данные узла атрибута.  
            ТипУзла = Чтение.ТипУзла;
            Имя = Чтение.Имя;
            Значение = Чтение.Значение;

           // Обработать полученные значения.

        КонецЦикла;

    ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.Текст Тогда

       // В примере просто выводим текст в окно сообщений.  
        Сообщить("Текст:" + Чтение.Значение);

    ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда

       // В примере просто выводим признак конца элемента  
       // в окно сообщений Сообщить("--Конец:" + Чтение.Имя);  

    КонецЕсли;

КонецЦикла;