Re: possible?

Chris Wiegand wrote:

> I'm looking at making a report engine. Currently, I'm facing the wonderful
> prospect of having to design APIs, code, and interfaces for input engines
> (aka. DBs, ODBC, etc..), rendering engines (for graphs/charts),
> interpreters (for functions and for the XML format I want to use for the
> report definition), and output engines (ie. print? save as html? save as
> XML?). I found out about GnomeDB and it sounds like I could use it's
> engines as my input engines, however, I have a few concerns, and I'd like
> to know more:

You had the same ideas as me, only I didn't do too much on this, but there is
a gnome-db widget (GnomeDbReport) which was created for this purpose. The only
thing is implemented for this widget is the basic XML framework (open, save).
I think this is the way to go, since an XML file could be loaded later in
gnumeric, for example. So if you want to hack on it, it's yours....

> I've moved programs (albeit VB) from Access to MSSQL, and boy was that fun.
> However, I still had to re-write code, including my SQL statements. Does
> GnomeDB hide that from the program? Will I have to write a wrapper anyways
> for every DB engine GnomeDB supports anyways to take care of the quirks
> (like no caching, or weird datatypes), or do I get it just like it's in the
> database. I can see the case for either, however, for my program, I want
> all to be the same. =)

gnome-db is implemented as a set of DB providers (CORBA servers) which map the
specific database API to the gnome-db model, and a client library which acts
as a thin wrapper around all the CORBA stuff, so you use this client library
to access the different providers regardless of the underlying API. So, there
is no need to write specific code per-database, you just use the client lib.
Caching is done in the client library, and each provider is responsible for
mapping their specific data types to the gnome-db datatypes, which are a set
of types that cover almost every possible data type in a database.

> Also, if I have a stored username/password (think Seagate Info server,
> which saves them so that it runs un-attended), can I pass that to each of
> the datasources? Do/Can the datasources work with each other (ie. using
> multiple data sources at the same time, and do I have to make the data
> merge, or can they do that themselves)?

Yes, to connect to a gnome-db provider you just need the name of a gnome-db
datasource, a username and a password. You can as well use multiple data
sources at the same time. The only thing, is that maybe you mean a crypted
password, in which case this is not implemented yet.
I don't understand well what you mean by "make the data merge"...

> Also, on a totally different and gnome but not gnome-db topic, has anyone
> used the Gnome Canvas for printing? Can it also save? I'm just looking to
> do something like Crystal Reports (tm, patent, copyright, are property of
> their respective holders or whoever owns them), and I'm looking to make my
> life easier.

gnome-print provides (or will provide, I'm not sure if it's implemented) a
preview of the document to be printed in a GnomeCanvas widget, so I think it
may be what you're looking for, since most of the work you must do is (or will
be) already implemented by the gnome-print library. I don't know if it's got
support for saving the GnomeCanvas contents.


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