2017-02-07 17:38:29
Краткое описание :
Ошибка при формировании Excel отчетаОписание :
Отчеты в XLS в целомЧто измененно :
В некоторых случаях, при формировании Excel-отчета по
XLT-шаблону возникает ошибка MS Excel:
Run-time error '-2147417848 (80010108)':
Automation error
The object invoked has disconnected from its clients.
Ошибка возникает при вставке новых записей для формирования данных таблицы
отчета.
Проявление проблемы весьма не устойчиво. Проблема возникает на версиях "Excel
2010" и "Excel 2013", при этом на тех же данных в "Excel 2007" ошибка не
возникает. Проблема не возникает при формировании отчетов с не большим
количеством данных. Предположительно проблема возникает при недостаточном
количестве свободной оперативной памяти на машине клиента (2-4 ГБ). При
выполнении макроса формирования отчета вручную (не из системы Галактика),
дополнительно возникает сообщение MS Excel: "Недостаточно ресурсов. Выберите
меньше данных или закройте другие приложение".
На сайте MicroSoft есть обсуждения по аналогичной проблеме:
https://answers.microsoft.com/ru-ru/msoffice/forum/msoffice_excel-mso_other/exce
l-2010/d004cd86-b722-48ea-82c5-d4e24f257461
Как измененно :
Ранее при формировании данных таблицы отчета, все необходимые
строки вставлялись за 1-ну итерацию. Теперь разработал функционал, позволяющий
управлять количеством строк вставляемых за 1-ну итерацию. Количество строк
можно задать в параметрах приложения (galnet.cfg), секция GalRepBuilderXLA (в
"фигурных скобках"), параметр CopyBlockRowsCount. Например:
{GalRepBuilderXLA}
CopyBlockRowsCount=100
Если параметр не задан, либо равен 0-лю, то это система как и ранее будет
вставлять все строки за 1-ну итерацию. Чем меньше строк вставляется за 1-ну
итерацию, тем меньше требуется оперативной памяти для выполнения операции, но
тем дольше будет происходить формирование данных таблицы отчета.
& УНАСЛЕДОВАННЫЕ ИЗМЕНЕНИЯ ШАБЛОНОВ:
GALREPBUILDER.XLA