2014-09-25 21:42:57
Краткое описание :
Формирование "больших" отчетов в MS Excel 2007 - (add1)Описание :
Отчеты в XLS в целомЧто измененно :
Функционал формирования отчетов в Excel, в текущей реализации
работает следующим образом:
При формировании отчета, производится предварительная проверка на возможность
изменения данных ячеек. Если изменение невозможно, по причине превышения
допустимого количества строк или колонок, то пользователю выдается
соответствующее сообщение с рекомендациями по решению проблемы.
Данная проверка происходит в 2-х местах:
1. При выводе в Excel данных из Галактики ("библиотека функций работы с Excel"
- ExcelLib3X.dll). При не удачном результате этой проверки сессия работы с
Excel принудительно закрывается.
2. При отработке системных макросов функционала формирования "XLT-отчетов" по
переносу выгруженных данных в шаблон отчета (Excel надстройка -
GalRepBuilder.xla). При не удачном результате этой проверки, формирование
отчета по шаблону принудительно прерывается.
В принципе это хорошо. Но такая проверка появилась относительно не давно. Ко
времени ее появления накопилась и широко используется масса отчетов, некоторые
из которых были реализованы в логике работы без существования проверки п.1.
Например:
1. Есть случай, когда в коде проверяется возможность выводы "больших" отчетов,
путем преднамеренной записи в ячейки лежащие за допустимым диапазоном Excel 2003
2. Есть случай, когда код был написан небрежно. Были обращения к ячейкам,
лежащим за допустимым диапазоном.
Во всех этих случаях:
1. До существования проверки п.1. - отчеты все же работали, пусть иногда и не
корректно, но с появлением проверки перестали работать.
2. Эти случаи относятся к отчетам, формируемым по технологии прямого
использования "библиотеки функций работы с Excel", а выводимое сообщение с
рекомендацией решения проблемы, относится только к отчетам формируемым по
технологии "XLT-отчетов".
Поэтому предлагаю убрать проверку п.1.
Как измененно :
При отработке системных макросов функционала формирования
"XLT-отчетов" по переносу выгруженных данных в шаблон отчета (Excel надстройка
- GalRepBuilder.xla), производится предварительная проверка на не превышение
допустимого количества строк или колонок. При не удачном результате этой
проверки:
1. Пользователю выдается соответствующее сообщение с рекомендациями по решению
проблемы
2. Процесс формирования отчета по шаблону прерывается
При аналогичной ситуации в функционале "Библиотеки функций работы с Excel"
(ExcelLib3X.dll):
1. Функции обращения к ячейкам, лежащим вне допустимого диапазона, возвращают
"false"
2. Дополнительные сообщения не возникают
3. Сессия работы с Excel не прерывается