Показать сообщение отдельно
Старый 25.11.2020, 16:03   #1  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
870 / 637 (23) +++++++
Регистрация: 14.10.2004
Быстрый отчет 500 тысяч строк в Эксель
Привет всем!
АХ 2012.
Есть необходимость вывода в Эксель отчета, который состоит из 500 тысяч строк.
В пакетном режиме. Чтобы это работало приемлемое время (не более 20 минут).

Нельзя использовать буфер обмена, нельзя использовать COM (ни COMExcelDocument, ни ADO Recordset).
Я попробовал через класс, производный от XMLExcelReport_RU, вывод 500 тысяч строк через Open XML, выполняется за 2,5 часа.

У меня есть текстовый файл из 500 тысяч строк, мне надо загнать его в Эксель. Формат текстового файла я могу сделать любой, какой будет удобною

Два вопроса:
1) как это сделать начиная с некоторой строки имеющегося файла Экселя.
2) как это сделать в новый файл Эксель.
В приоритете вопрос № 1. Вопрос № 2 больше от безысходности.

Я видел информацию, что XLSX-файл - это на самом деле ZIP-архив, и сформировать отчет можно просто записав на диск файл в нужном формате. Но, глянув на файлы внутри этого ZIP-файла, я ничего не понял.
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/