On Saturday 16 January 2010, Derek Atkins wrote: > Hi, > > Yawar Amin <yawar.a...@gmail.com> writes: > > On 1/12/10 9:02 PM, Bill Jacqmein said: > >> http://www.ghacks.net/2010/01/11/invoicing-with-gnucash/ > > > > I just looked through this article (it's pretty good) and looks like the > > New Invoice dialog box is asking the exact same information (invoice > > ID, customer ID, date opened etc.) that can be input in the invoice > > while it's being edited. Wouldn't it be simpler to have the Business > > > Customer > New Invoice command immediately open up a new invoice that > > can then be edited as the user wishes? > > No, you cannot input or change the invoice ID, customer ID, date opened, > etc in the main Invoice page where you enter your invoice line items. > Think of it like an Account and an Account Register; you cannot edit the > Account information from the Register; you have to open up an "Edit > Account" dialog to change the account properties (vs. the account > contents -- the splits/transactions). > > The Invoice is designed in exactly the same way. You have the Invoice > Information (IDs, dates, etc) and then the Invoice Contents (the line > item entries). In order to change the Info you need to 'edit' the > invoice "metadata" (by clicking on the Edit Invoice button). > > The only meta-information you can edit from the main invoice window is > the Notes field and the 'active' button. > > Would it be SIMPLER? Maybe.. But it would be wrong. It exists as a > dual window in order to protect the invoice from corruption by errant > inputs. > > > Y. > > -derek > I certainly agree on the concept: protect the invoice metadata while entering the invoice content.
I do believe on the other hand this can also be achieved within one single window: * New invoice could immediately open the invoice, with the metadata fields enabled for input. * Add a "Done" or "Proceed" or whatever button to the metadata fields. * Once clicked, disable the metadata fields (with visual feedback) and shift focus to the ledger to enter invoice content. * Keep the "Edit Invoice" button to allow changing the metadata later on. * When clicked, re-enable the metadata fields (also with visual feedback) and lock the ledger, until done is clicked again. With visual feedback I imagine changing the background color of either the fields or the complete metadata block. The above is only a rough sketch of the idea. It obviously still needs refining. And I'm aware it requires several often user-invisible changes to the widgets used on the invoice window. This approach essentially integrates the dialog box into the invoice window. Why would I want this ? Mainly because my usage of GnuCash often involves repetitive invoice creation (enter x invoices in a row). Every popup window that can be avoided in such a workflow increases the efficiency. I don't think the use case where invoices are only occasionally entered are negatively affected with such a change. Geert _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel