On Mon, 16 May 2011, Chris Travers wrote:
On Mon, May 16, 2011 at 2:47 PM, Erik Huelsmann <..hidden..> wrote:A friend of mine and I are working toward taking LedgerSMB as our accounting system. We like the direction of development and its improvements over SQL-Ledger. However, one item my friend has bad memories about is the fact that it's easy to print invoices (or e-mail them) without posting them (or vice-versa). It's a workflow inherited from SQL-Ledger that has caused problems for him in a previous company. I'd like to propose addition of a Post+Print and a Post+E-mail button, which prints or mails the invoice after succesfully posting it. What do others say about this idea? I could create a patch to make it happen if it's generally considered an improvement.What about moving "Print" and "Email" to checkboxes which could be done along side post or update operations? This wouldn't require new strings or anything, and it might make the UI a lot clearer and more intelligible. Plus when I click "update" I might not be expecting it to save.... If I click "Print" that's a different thing.
First, are you saying that clicking "print" then doing an update, would cause a print? That would not be expected behavior to me. I would expect printing only on posting in that design.
Second, I had that thought as well from his original message. These are the potential issues I thought of:
1. If there is an error in printing, mailing, or both, what happens to the post step? 2. If printing is no longer an individual control, what happens when you want to print multiple copies individually for some reason? 3. What happens if you need to print from a posted invoice? 4. What of print to screen? That still has the same old problem of a chained process not being easy to implement.
Re 1: I think that the post should not happen, the form should be re-presented, and the error should be shown (with the form, so no back button is required). That should make it clear that the document was not posted. Maybe even pop up a little red warning window "error!" for a couple seconds with javascript.
For 2, while I can't say I like it, you could add some "don't post yet" checkbox.
Re 3: maybe change the checkboxes to buttons on already-posted documents? 4 could probably be solved in javascript, but you trade off portability. Luke