C10 SQL парсить XML

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

Как используя стандартные средства c10 импортировать из XML в dbf csv Excel ?

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

C10 SQL парсить XML

Сообщение Игорь Столяров »

1. Загрузить XML в очередь:
viewtopic.php?f=1&t=1726
viewtopic.php?f=1&t=3390
viewtopic.php?f=27&t=4260&start=75

2. Записать очередь в нужный формат:
XLSX: viewtopic.php?f=8&t=3830
DBF и CSV: см. в справке раздел про dBase и ASCII драйвер.

3. Всё. :)
«V» значит Вендетта !

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

Спасиб ! А если в xml 2000000 записей и более в одном xml -очереди пройдут ?

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

C10 SQL парсить XML

Сообщение Игорь Столяров »

Пожал !
Не вижу причин, по которым бы это не работало … но ! запись - она разная бывает … :)
Поэтому пока не попробуете - не знаете. ;)
«V» значит Вендетта !

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

сделал парсинг в С10 с помощью vewXML - парсит четко - перевел в UTF 8 но русские буквы - кракозяблы - ка это победить ???

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

C10 SQL парсить XML

Сообщение Игорь Столяров »

talgat55 писал(а):
08 Февраль 2020, 15:18
перевел в UTF 8 но русские буквы - кракозяблы
Немного не понятен вопрос.
Дело в том, что парсер Clarion работает только с XML документами в кодировке UTF-8.
Может быть нужно наоборот, после того, как Вы получили данные из XML конвертировать их из UTF-8 в ANSI кодировку ?
«V» значит Вендетта !

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

КАК ? ПРИВОЖУ пример разбора параметров - перевел fam в ascii - везде кракозяблы
ParseName2 Routine
nnm &= QXML.Node.getAttributes()
if not nnm &= null ! Есть атрибуты
loop AttrIndex = 0 to nnm.getLength() - 1 ! Цикл по атрибутам
Anode &= nnm.item(AttrIndex)
CS.ToascII()
Case (ANode.GetNodename())
OF 'BEGDATA'
Param2Value=ANode.getNodeValue()
! MESSAGE(Param2Value)
Of 'FAM'

Param3Value=ANode.getNodeValue()
MESSAGE(Param3Value)
Of 'IM'
Param4Value=ANode.getNodeValue()
! MESSAGE(Param4Value)
Of 'OT'
Param5Value=ANode.getNodeValue()
! MESSAGE(Param5Value)
Of 'DR'
Param6Value=ANode.getNodeValue()
! MESSAGE(Param6Value)

END

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

Нашел причину - надо
CS.Set(Anode.GetNodeValue())
CS.ToAscii()
Case lower(ANode.GetNodename())
Of 'level' !
ManQ:Level = CS.S
OF 'id'
и тогда все Ок !

Аватара пользователя
Дед Пахом
Старичок
Сообщения: 2391
Зарегистрирован: 07 Июль 2005, 15:51
Откуда: Москва, Россия

C10 SQL парсить XML

Сообщение Дед Пахом »

Что означают все эти буквы?
С уважением, ДП

Yufil
Ветеран движения
Сообщения: 1198
Зарегистрирован: 16 Май 2006, 13:34
Контактная информация:

C10 SQL парсить XML

Сообщение Yufil »

Это фрагмент из моей программы, которая парсит сохранённую в виде XML структуру оБучающего модуля :D
Дальше всё это дело преобразуется и на основе этих данных строится SCORM-манифест,
он пакуется вместе с данными программы и получатеся SCORM-пакет.
Пакет загружается в LMS с поддержкой SCORM ( например, Moodle ) . Ну и так далее...

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

XML имеет 400000 записей и че-то висит на этапе начала работы с создаваемой очередью ... Хотя файл новый с кодировкой utf 8 создан. Неужели это предел какой-то для записи в очередь ?

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

висит на этапе загрузки документа в очередь- FillDomQueue(XMLDoc,ListXML,1)

Yufil
Ветеран движения
Сообщения: 1198
Зарегистрирован: 16 Май 2006, 13:34
Контактная информация:

C10 SQL парсить XML

Сообщение Yufil »

А если редактором урезать, например, до 100 (или 1000) записей. Прочитается ?
Что будет, если файл просмотреть шаблоном ViewXML ?

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 4533
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

C10 SQL парсить XML

Сообщение Игорь Столяров »

talgat55 писал(а):
08 Февраль 2020, 19:12
висит на этапе загрузки документа в очередь
Если компьютер помнит Чингисхана - то для загрузки 200 т. записей потребуется некоторое время. :)
«V» значит Вендетта !

talgat55
Активист
Сообщения: 147
Зарегистрирован: 11 Сентябрь 2008, 11:53

C10 SQL парсить XML

Сообщение talgat55 »

пробовал viewXML тоже зависает не дождешьси... Резать не хотел - долго муторно и как понял ручная работа- так-то на малых размерах- моментом делает

Ответить