Большой XML

Эпиграф: "Пришла беда откуда не ждали" (А.Гайдар)
Здравствуйте коллеги!
Двадцать лет я тихо мирно сидела на КЛАДР. Внезапно ФСС с переходом на систему "Прямых выплат" потребовал в "Сведениях о застрахованных лицах" указывать код ФИАС. ФНС распространяет систему ГАР ФИАС исключительно в формате XML.
До этого я прекрасно переводила XML в DBF с помощью класса XMLAdapter, тем более ФНС дает в придачу схемы XSD, но файлы ГАР ФИАС оказались очень тяжелы для VFP 9. Пока размер XML-документа не превышаем 400 мБ, парсинг "идет как по маслу", но стоит попытаться обработать файл потяжелее выходит ошибка: "XML Error: XM: Parse error: Недостаточно ресурсов памяти для завершения операции Line 1, Position 2034". Функция XMLtoCursor() выдает это же системное сообщение. Сделала попытку использовать MSXML2.DomDocument.4.0, результат аналогичный до 400 мБ все замечательно, после: "Error - 2147024882", то есть насколько я понимаю по [s]ангельски[/s] английски "Недостаточно места для этой операции". И ОЗУ ПК не причем, пробовала и на 4 гБ, и на 8 гБ.
Сейчас приходится "разрывать" большие XML "руками", с помощью "FirstObject XML Editor" на файлики до 400 мБ, пакетом обрабатывать и получившиеся курсоры грузить на сервер МуSQL для дальнейшего использования, дальше с информацией на сервере проблем не возникает.
ФНС грозиться в следующем году прекратить обновление КЛАДР. Может кто-то нашел более креативное решение для данной проблемы, один раз конечно можно тихо матерясь переколотить данные нескольких регионов руками, но это как-то не рационально

0

Автор публикации

Пользователи не найдены
Оставить комментарий
Авторизация
*
*
Генерация пароля