|
|
Работая над очередным отчетом, я понял, что стандартной печатной формой не обойтись. Отчет получался с переменным числом колонок с разворотом по горизонтали и по вертикали. Причем для эффективного анализа содержимого надо было сортировать строки по содержимому любой колонки. Также необходимы были итоги по столбцам и строкам. Идеальным средством отображения для такого отчета является сводная таблица из пакета Microsoft Office. Но как передать туда данные, да так, что бы еще это и быстро работало на достаточно больших объемах? Сводные таблицы в качестве источника данных могут использовать результаты запроса к любой базе данных. Так почему бы не использовать в качестве базы саму базу данных 1С (в случае с SQL варианта базы)? Что же получилось в итоге? Сначала формируем таблицу значений, содержащую те данные, которые мы хотим видеть в отчете. После этого в базе данных SQL Заводим временную таблицу, причем имя таблицы я формирую в зависимости от имени пользователя, для того, что бы несколько пользователей одновременно работать с этим отчетом. После этого создаем объект Excel.Application и уже на VB вставляем в новый документ Excel сводную таблицу, определяем источник данных и расставляем данные по строкам и столбцам. Вот и все. Для того, что бы прикрутить эту технологию к любому существующему отчету, потребуется не больше часа, при этом мы получаем всю мощь сводных таблиц для анализа отчетов из 1С. |
Copyright © 2004 Андрей Попов сотоварищи
|