This Cousin covers the three main mailing lists for the GNU Enterprise project, gnue, gnue-dev and gnue-announce. For more information about GNUe, see their home page at http://www.gnuenterprise.org. Details of the mailing lists can be found at http://mail.gnu.org/mailman/listinfo/gnue, http://mail.gnu.org/mailman/listinfo/gnue-dev, http://mail.gnu.org/mailman/listinfo/gnue-announce.
It also covers, on an intermittant basis (i.e. when I have time), the #gnuenterprise IRC channel. A great deal of development discussion is still going on in IRC. You can find #gnuenterprise on irc.openprojects.net:6667, or you can review the logs at http://www.gnuenterprise.org/irc-logs/.
Stuart Quimby (ToyMan) said I assume you
guys are tracking the
/. thread on accounting software?
He had mentioned GNUe.
The story had lot's of pointers to sql
ledger
. Jason Cater (jcater) asked
have we been slashdotted yet?
with extra traffic to the
GNUe website. James Thompson (jamest) said
our traffic went up a bit :)
- to
3-5 times normal but about 1/2 a release day traffic load
.
Derek Neighbors (dneighbo) said i was
tempted to email slash folks and give some more info, but figured we
couldnt handle the load
.
Derek mentioned an article about Linux
in a trade mag (cant recall which one)
which said
a. businesses are waiting for 'shrink
wrap applications' that just work, not tools to make something that
work. Linux has lots of tools but no apps. - then two sentences later
- b. because there are not shrink wrap applications small and
medium size businesses cant get the software they need to tailor
to their unique processes
, which he thought was self-
contradiction. He said that he saw GNUe as having
vastly different audiences
from sql ledger. In particular, GNUe was not exclusively web-based,
which made it more suitable for power users as opposed to occasional
input.
He noted that GNU had
made sql-ledger a gnu project and will be trying to using it for
their own accounting and will be putting up an ecommerce site
.
GNU had said to him that if we had
something that they could use today they would and that they would
upgrade to gnue
. He would write a GNUe equivalent over the
holidays - a straight rip, just to say
THE TOOLS HERE WORK, you just have to be willing to USE them :)
.
He added Are we still infants (absolutely) -
Are we still a long way from where we want to be (surely) - But do we
have things that are VERY USEFUL right now TODAY (YES YES YES)
.
Derek Neighbors (dneighbo)
had met
some folksin san francisco that do credit card stuff
and were willing to work really close with us
.
They did Automated Clearing House and Electronic Funds transfer,
and if you did online ordering they
could do your credit card verification as well
. Bill
Gribble (grib) said he had found
all the clearing houses are super proprietary
. Derek said
the daemon/server was still proprietary, but
they have xplatform client that is
open source
. He added
if they are willing to LGPL the client and give us free access to
do testing thats half the battle
- a win-win situation.
Bill said he might be interested, both for gnucash and some other
projects he was working on. Derek said that Credit Card Verification
System had previously used phone, but they
were in process of starting to offer internet version
.
Bill said it doesn't really matter about the client.
I'm interested in their server pricing tho.
Derek thought they
might be flexible on this. But he pointed out that, as gnucash was GPL,
you have to worry a little about the client
licensing issues for decent integration.
Stuart Quimby (ToyMan) said
one of the things I REALLY like about access is the ability for users to
filter content of a query 'on-the-fly'
and asked if GNUe could
do this. Derek Neighbors (dneighbo) said
you can go into ANY field and do a filter - and can do it on MULTIPLE fields
but you had to do it as an execute query. This was
very powerful, but not the most 'intuitive'
. He added we plan on making some
lookup dialogs for slightly more intuitive lookups on 'key fields'
.
Stuart thought that
the ability to click on a field in a 'grid' view and say 'gimme just those'
is very nice
. Derek said
um that feature doesnt exist
, but could be added.
Stuart feared oh, darn, you'll prolly have to charge
me big $$$
. Jason Cater (jcater) counter-offered
I take donuts
.
James Thompson (jamest) queried
right now it seems that geas only lets me set the logic at the
query object level - so a query can AND all the fields added.
However the conditional system in common can nest all this.
Reinhard said this was
part of idl rewrite
.
James wondered how you build up your
queries into something (oql?) then parse that into sql
Reinhard explained
oql is just the name of the source file that does this
. He said
you tell me your favourite way to pass the conditions
and i'll implement it
. James suggested
if there is a std OQL then that may
be the way to go
. Reinhard said that there were three
possibilities - OQL, SQL or
some tree structure
, but everything would need to be
parsed into SQL eventually. James noted
you can see the conversion process
in dbdrivers/_dbsig
. Although using OQL might maximise
compatability with other Applications Servers, Reinhard felt
this could be messy, in that GNUe Common would be converting
a tree to OQL, then GNUe Application Server would convert the
OQL back to a tree and then to SQL.
Derek Neighbors noted that
omg has standard for OQL [...] it cost 'money' to get the standard
though ;)
. (See
ODMG OQL User manual 5.0
at
http://www.cis.upenn.edu/~cis550/oql.pdf.
Derek Neighbors (dneighbo) reported problems in GNUe Designer
displaying forms with more than
40 characters
across. However, the form definition
itself appeared fine. Jason Cater said
so it's not a wizard problem but a layout editor problem
?
He asked does it still appear that the
grid extends down further than the scrollbars allow?
and confirmed this is a known problem -
I haven't fully grokked scrollbars
.
Ulrich Ech (jack-e) shared his
thoughts how to use gnue for our needs
. They would need to
write their own highly customized gui
using gnue-common that should talk to geas ..
. Reinhard Müller (reinhard) said
maybe you might want to base your gui on the existing gnue forms
.
Derek Neighbors (dneighbo) agreed, saying
it might be that the 'customization' you desire we agree should be there
in which case it would be more practical for all to integrate that
functionality into forms
. Ulrich said he needed
trees (maybe lists) in an easy way [...]
i find that a complex account/network-management needs to give several
possiblities to the user to find information
.
Derek said GNUe could add a tree widget to forms
, but wondered how to implement
the data aware side of it
.
Ulrich also said he had not yet seen a list-widget ..
(at least not in desinger) ..
Bill Gribble (grib) wondered
how do you display query results?
.
Ulrich said i have done this with pydo but there
i missed what geas can give: business-objects ..
. Derek said
i can see a list fairly easily...
but added the reason i think we have avoided
trees and some of these other widgets is they are not 'portable'
to user interfaces like curses. Ulrich said he did
not really need html/curses interfaces for this
project ..
He thought trees would be quite complicated to do,
but people are used to them ...
James Thompson (jamest) said trees might be part of wider
navigation issues
. He thought
a tree navigator that would embed forms
might be a better way of approaching this.
Further to
did you have a
chance to look at db API?
Reinhard Müller (reinhard) said
i read through the .txt and decided that it
must be incomplete so i must look at the source [...] for example i saw
some introspection methods in the source but not in .txt
.
James said introspection is being fleshed out
and isn't documented
.
James said he was writing a set of higher
level functions that reduce the amount of boilerplate code for each python call
for the interface to allow c to call python. However, he thought
this layer would be nicer if it was a generic
langauge embedding wrapper
. He added
btw - i swore guile(?) was just such a library but it doesn't seem to be
what I thought it was
. Bill Gribble (grib) said
guile started out with more of that as a goal
but had developed in different directions. Reinhard said
multiple language support would be a goal
for geas but is way off imho
. He felt
it would be nice to have this generic
wrapper but we shouldn't do it where we don't have to do it (mho)
. He confessed i'm a big fan of the
"unix way" of doing things
- having simple tools that
can be combined where necessary to do more complex things.
Later, Derek Neighbors (derek) said
I'm interested in your multi language idea as its a requirement for
gnurpc. I think there is HUGE value in making common available to more
than just python/C. I'm not sure the code to do it belongs in the db
driver, but if you are having ideas you might wish to jot them down :)
James explained I'm talking about a
generic wrapper to python that geas would use to assess the python objects
- it makes the geas code cleaner. My thought was should I spend a little
time to see if this generic wrapper API would work well if someone wanted
to add another language
. He gave an example of how it might
work.
Derek Neighbors (dneighbo) said i am not
a big fan of lets put in a hundred ways to do it and then toggle a crap
load of flags to tell you how - i would rather see this done in templates
of sorts
but it had not been decided how these would work as of
writing. He explained templates provide way
of doing almost a diff against BASE modules to add or remove functionality
- think of customizations that survive upgrades :) and that can be shared
.
Jason Cater suggested of adding a type=
"label" to the entry tag - like we have type="combo
", etc
Derek Neighbors (dneighbo)
would like that :)
- by default,
labels should be background color and non 3d
and read only
. They could be made data-aware later. Jason didn't
think it would take long to do, but wondered
should it be a 0.1.x series thing or 0.3.x series
. Derek said he
was thinking it might be worth bundling a
release of sorts (even if only a tar/gz) one
for version 0.1.1,
but he didn't want developers to have to do it. Jason and James Thompson
felt there weren't enough patches to justify a release yet. Later, Jason
reported I implemented your 'style="label
"' but need to test it :)
Reinhard Müller (reinhard) had a series of questions about
GNUe Common, now that it was intended to use this to provide
database drivers for GNUe Application Server. He asked how he
could keep 2 resultsets
in memory at the same time, confirming it needed
2 DataObject instances and 2
ResultSet instances
. James Thompson (jamest) explained that
the datasources use the connection
manager to pool connections
. Jason Cater (jcater)
confirmed there's ALWAYS a 1:1 mapping
between DataObject and DataSource
, and James added
a 1:1 mapping between a dataSource
and a backend table(or object)
. In which case, Reinhard
asked, why do we have two distinct
classes for DataObject and DataSource?
Jason explained
that datasource is just a placeholder
until a dataobject is loaded
- dataobjects were specific
for each database provider (postgresql, Oracle, etc.). James said
the intention was that the app
programmer never deals with a dataobject
directly.
Reinhard said he had just been about to propose something like
this!
Reinhard also asked In which
cases do we have more than one ResultSet for a single DataObject?
Jason said this was mainly for
master/detail relationships
, especially
in an interactive environment such as forms
. James pointed out this is very
handy in editing - as my users wanted to edit all the details for
multiple masters
at once. Jason checked if
we requery detail sets if they have not
changed?
James said he couldn't remember -
it'd really be nice to have a graphical
breakdown of this puppy
.
Reinhard asked does that system know
about data types?
, that is, does
it check values when fields are set?
James said
they are all stored as strings
.
Jason confirmed typecasting is on the todo
list
. James said this meant that, at the moment,
my form dies on a field that's tied to a
date field in the db
. The available datatypes were listed in
common/src/GTypecast.py
but weren't complete. Reinhard pointed out that
geas/src/classdef/classdef.h contains
a list of geas datatypes
and felt the GNUe Common datatypes
should be the same. James said it would be simple to do this. Reinhard
pointed out that this was important for
introspection and schema creation
, as
the datatype will be a parameter to
functions
. James said that
introspection is a work in progress, but initial support is
there for a few backends - it needs added to other backends as we
find people with access and knowledge of how to do it
.
Reinhard asked is there a way to ask for
the datatype of a given column name?
James said that wasn't
possible as of the time of writing, but
we planned on providing that so that designer can preset forms options
, for instance, making integer fields accept numeric input
only.
Reinhard said that, if GNUe Common was
to replace the dbdriver in geas we would need fully functional
introspection and schema creation methods - at least for postgres
James agreed. Jason pointed out that the schema
introspection in postgresql is fairly complete
. Reinhard thought
schema creation methods
to create
tables and add columns and so on were more important initially than type
checking. Jason admitted we don't have schema
creation - of course, until we looked at having geas use our dbdrivers,
they weren't necessary :)
Neither Jason nor James thought it
would be hard to add this. James suggested starting with
a SQL92 compliant module for building the
needed sql then let individual drivers extend this
.
On IRC, Jason Cater (jcater) suggested our
sample app for next december should be a supply chain setup for santa's
workshop - it'd be a great publicity stunt for GNUe
.
Later, he told Derek Neighbors we volunteered
you to do it - and with the red clothing, you can be santa too :)
. Derek (dneighbo) said as long as
i dont have to wear the 'tight pant things' jamest was referring too,
im cool with it :)
. James Thompson (jamest) said
nah, we got a deer suit and a red nose for
you
.
In a similar vein, Peter Sullivan posted a spoof e-mail from a
GNUe Consultant to kris_kringle@santa.org
about some changes to Customer Relationship Management.
This included disabling all functionality
relating to payment, sales invoices and credit control
but
adding a field for Child.Naughty_or_Nice.
. He pointed out the symbolism of
santa.org as the world's leading "free as in beer"
organisation [...] supporting "free as in speech
" software.