Страница 1 из 1

Составление отчета.

Добавлено: 06 окт 2005, 11:07
MT
Подскажите пожауйста правильные способ написания большого отчета, основанного на информации в БД FireBird.

Необходимо заполнить поля отчета Excel. Результат каждого поля получаеться выполнением запроса в БД. Некоторые запросы не возможно выполнить простым select, и необходимо использовать select for и т.д.
Проблем с самим приложением и импортом результатов нет. Использую FibPlus и FibQuery и OLE.
Как правильно организовать работу с запросами (логика работы с БД) для составления отчета если количесто запросов около 170?

Добавлено: 06 окт 2005, 11:14
kdv
вопрос слишком абстрактный. к тому же, меня берут сомнения в подобной реализации. Я не помню точно, но FastReport умеет экспортить отчеты в тучу форматов. В данном вопросе (select from) и FR не поможет.

Re: Составление отчета.

Добавлено: 06 окт 2005, 11:40
SAMZ
Как правильно организовать работу с запросами (логика работы с БД) для составления отчета если количесто запросов около 170?[/quote]

Мы в таких случаях предпочитаем писать ХП, которые вычисляют все ячейки отчета.

Добавлено: 06 окт 2005, 11:51
MT
Разве никогда не приходилась заполнять шаблоны готовых документов. Где итоговые данные не являються результатами каких либо наборов. Пример Декларации, Спецификации в них поля
(между разделами) не имеют логической связи между собой(а разделов может быть 70).
С Excel все нормально там уже есть готовый шаблон в него только забить данные.
TO SAMZ Вопрос:
Это много хранимых процедур или одно имя а код внутри нее переписываеться?
Если они не нужны в БД. Они создаеться отчет строиться и потом удаляються, так?

Добавлено: 06 окт 2005, 12:15
SAMZ
MT писал(а):Разве никогда не приходилась заполнять шаблоны готовых документов. Где итоговые данные не являються результатами каких либо наборов. Пример Декларации, Спецификации в них поля
(между разделами) не имеют логической связи между собой(а разделов может быть 70).
С Excel все нормально там уже есть готовый шаблон в него только забить данные.
TO SAMZ Вопрос:
Это много хранимых процедур или одно имя а код внутри нее переписываеться?
Если они не нужны в БД. Они создаеться отчет строиться и потом удаляються, так?
Любой отчет в нашем понимании это некоторое множество прямоугольных таблиц (матриц). Собстенно раздел отчета - это и есть одна матрица. Мы всегда для каждого раздела пишем свою ХП. Причем, если по правде, то наши ХП мы пишем таким образом, что они выдают не значение для некоторой ячейки в строке Irow и колонке ICol, а множество записей БД, которые и формируют это значение. Собственно значение ячейки мы получаем вызывая эту ХП и используя необходимые функции агрегирования и, если необходимо, группировки.

Добавлено: 07 окт 2005, 13:47
Владимир Каратаев
не совсем хороший это путь. что если пользователь случайно изменит шаблон и сохранит? отчет перестанет работать. такое случается оч часто. только на днях аналогичную проблему обсуждали в телеконференции epsylon.
но если так надо, то с помощью TExcelApplication.

Добавлено: 07 окт 2005, 14:49
SAMZ
Владимир Каратаев писал(а):не совсем хороший это путь. что если пользователь случайно изменит шаблон и сохранит? отчет перестанет работать. такое случается оч часто. только на днях аналогичную проблему обсуждали в телеконференции epsylon.
но если так надо, то с помощью TExcelApplication.
Собственно шаблоны мы храним в блоб полях БД их для их изменения нужны специальные права. Испортить их можно и в этом случае, но нужно уж очень захотеть.

Добавлено: 07 окт 2005, 22:44
Anton Glasunov
xlReport не пробовали?

http://www.afalinasoft.com/xl-report/index.html

Он не дорогой для России.