Report system legacy

Derek Atkins warlord at MIT.EDU
Thu Jun 27 10:04:00 EDT 2013

Geert Janssens <janssens-geert at> writes:

>> HOWEVER, I do think that we should only have a single saved report of
>> the same name. I.e., if we save a Balance Sheet report it goes into
>> Custom/Balance Sheet which is fine. But if you *resave* it, IMHO it
>> should overwrite the previously saved Custom report of the same name.
> That may not be the user's real intention. Instead the user may want to
> generate a second report based on the same base report, but using different
> settings. So I think automatically overwriting the previously saved report may
> result in user frustration. At the very least we should ask the user what she
> wants to do.

I'm not sure..  Perhaps the best way to do it would be to do it similar
to other systems and prompt the user: "Another saved report already
exists with the name XXX.  Overwrite?  [Cancel] [OK]" This would prompt
them to change the name if they really want two reports with the same

>> Even if we use GUIDs (which can be used to separate A&L/Balance Sheet
>> from Custom/Balance Sheet) I don't think we should allow multiple
>> Custom reports of the same name.
> I can't make up my mind if we really should impose this restriction. My
> current changes make it trivial to rename a custom report at any time. That's
> already a big improvement compared to what we currently have. Granted, the
> name is the only visual distinction a user has in the custom reports dialog,
> so having a name twice is inconvenient. But as it's easy to rename a report,
> this inconvenience is mostly temporary. On the other hand adding checks at all
> possible code paths that may result in duplicate names for custom reports
> quickly adds complexity. There's the name changing code, the save report code,
> the code that loads the saved reports and perhaps other paths I haven't found
> yet.

Yes, being able to rename a saved report is a good thing.  However,
imagine someone saves the Balance Sheet report a dozen times.  You now
have "Balance Sheet" entries in Reports -> Custom menu with no way to
differentiate them.  I would not consider that a good user experience.

How many code paths are there?  I can imagine two:

1) "Add Report"
2) "Rename Report"

What other code paths are there, and why can't those be reduced into
these two places?

Note that we already enforce unique account names at a peer level, too,
so there is precedent for this kind of restriction.  Filesystems also
enforce single-names within a directory, so users are used to having
only a single thing.

Again, I think it's all about the user experience.

> Geert


       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL:    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available

More information about the gnucash-devel mailing list