Re: [gnome-db] Re: Report API



Rodrigo Moya wrote:

On Fri, 2004-04-16 at 00:19 +1200, Dru wrote:
it would pretty nice if this API had some progress reporting. That is,
GdaReportDocument could have signals that warn about progress, so that
apps can display status messages, for instance, while the conversion
process is being run.


Could have a file /tmp directory marking progress. Signals have cross plateform issues and if runs in a different process it makes things difficult.
well, we are talking about GObject signals, so that the client app can
get those signals, without having to poll a given file by hand.

And what out-of-process uses are you thinking about?

papyrus at moment is a number of different processes. It all runs from a script.
so signals would work with it in its current form.

I havn't looked at xsl-fo before or know whats its capiable of or how it works in detail. Should papyrus be continued to be run as a seperate process or should api be changed
and implimented into gnome-db library?

I think this is the best idea. We want apps to use the reporting engine
for their own needs, so having a simple API for it is the way to go.
Then papyrus can be a GUI frontend (a specialized app) for generating
those reports using that API.
Would gnomedb have a bunch of api calls that would link to papyrus libraries or the
papyrus run times and call papyrus from within gnomedb. Papyrus would
generate the first xml output into memory, which then gnome-db can choose
to process as it see fits. The existing xml to latex/html/text engines can be used to generate code from the xml or a xsl-fo engine could be used based on the xml output to generate the required output that way. Arguments need to parsed to papyrus for generating reports which get resolved.
Ie start,end dates, id's to run report on etc.


What does the xsl style sheet do for
the reports? Does when you dymically build the xsl resolve the database queries?

It is used to convert from the XML to a different format. But this, IMO,
should be a 2nd step in the API, that is, you run the report, getting
the XML output, and then, if the app wants, you convert it to other
format.
it has to be a 2 step process anyway.

Do you need to construct reports in memory? (at moment input is only a file but parser could be modified to take xml doc instead in memory instead).
I guess we can just pass GdaReportDocument/Output objects over. And then
utility functions such as gda_report_document_from_file,
gda_report_document_output_to_file/memory/etc





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]