Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

XMLQuery или XMLTable [D6, XML]


Delirium ©   (2002-01-30 15:29:00) 

Вот из RecordSet-а есть экспорт в XML, а есть-ли какая-либо возможность работать с этим файлом дальше, как с таблицей, на подобие CSV?


Вячеслав   (2002-01-30 21:55:00) [1]

В поставке D6 есть такая хрень-XML Mapper
Она из любого ХМЛ делает стандартный для Делфей датапакет.
Плюс создает файл трансформирования.


kig   (2002-01-30 19:04:00) [2]

По типам данных? А какие Вы встретили ограничения?

Может лучше посмотреть XDR и XSD (на www.w3c.org и в хелпе Microsoft XML 4.0 Parser SDK)? Там описаны форматы данных и их представление в XML.


Delirium   (2002-01-30 18:45:00) [3]

И грузит и работает (я его от туда и получаю), просто я хотел от XML получить универсальный формат таблиц, без ограничений по типам данных. К тому-же хочется, чтобы при этом не участвовали никакие библиотеки или провайдеры, так сказать - на века! До сих пор в качестветакого универсального формата я пользовал DBF4, - самостоятельно разбирал формат и ни от чего не зависел. Однако его ограничения меня достали, вот и задумал перейти на XML, однако похоже всё опять придётся делать руками :(


kig   (2002-01-30 18:37:00) [4]

А ADO? Не подходит (то почему?), не пробывали или не грузит?
Из какого Recordset"а получен xml?


Delirium   (2002-01-30 18:27:00) [5]

Ладно, допустим, вопрос-то остаётся открытым - как обойтись без ADO и тем не менее получить из этого XML TDataSet, ведь ClientDataSet его не воспринимает, да и midas.dll тянуть не охота.
Я тут обнаружил компонент, нормально раскрывающий все деревья
www.destructor.de
однако создавать самому TDataSet - лень, может кто-то уже делал подобное?


kig   (2002-01-30 18:02:00) [6]

2 Delirium © (30.01.02 17:52)

А мне казалось, что критерий нормальности больше подходит для ADO:

ADO 2.(5 6 и 7) - это формирование xml-данных с использованием XDR.

ADO.NET - это формирование xml-данных c использованием XSD.

:)


Delirium   (2002-01-30 17:52:00) [7]

О том и речь !!!
Что этот XML получен из RecordSet-а, и несовместим с "нормальным".


kig   (2002-01-30 17:49:00) [8]

Delirium © (30.01.02 17:02)

Очень похоже, что разгрузка делалась через ADO. По крайней мере, формат разгрузки один в один при разгрузке ADODB.Recordset. Если предположение верное, то можно проделать следующее:

Если файл

Recordset.Open("Имя файла")

Если xml уже в памяти

Создать ADODB.Stream

Stream.Open
Stream.WriteText(xml)
Stream.position = 0
Recordset.Open(Stream)


Delirium   (2002-01-30 17:02:00) [9]

Я ведь говорю не про :

<?xml version="1.0" standalone="yes"?> <DATAPACKET Version="2.0">

а про :

<xml xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882"
xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
xmlns:rs="urn:schemas-microsoft-com:rowset"
xmlns:z="#RowsetSchema">


Delirium   (2002-01-30 16:31:00) [10]

Ну и ... где пример подключения ?


alexts   (2002-01-30 16:00:00) [11]

конечно есть. берешь clientdataset и подключаешь к нему xml файл


Наверх

Титульная страница Поиск, карта сайта Написать письмо