dragotin / kraft

Kraft helps to handle your daily quotes and invoices in your small business.
http://volle-kraft-voraus.de
GNU General Public License v2.0
55 stars 17 forks source link

Feature Request: document type groups or tags #194

Open noseshimself opened 1 year ago

noseshimself commented 1 year ago

The number of different document types being the same (either test-document, offer, manifest, invoice or general communication/letter) is confusing. Documents should be taggable and document types should have the option of adding default tags). This can be used to mark everything belonging to a project/customer/campaing with a common tag and add general type information to documents that could be later on used for reports (e. g. list all unpaid invoices from [date] to [date]).

And if you are willing to add the functions I'll be preparing the templates 8-).

dragotin commented 1 year ago

Just rephrased: You want to be able to

Did I get that right?

noseshimself commented 1 year ago

Correct. It's the only clean way of future-proof addition of generalized document types across languages (I originally thought a boolean value "items-have-relevant-price-information" to distinguish between invoice-like and manifest-like documents would be enough but returned to my original intention of writing my letters (a third document type -- "document without items") in Kraft, too).

Besides permitting the creation of a single general print template for all purposes it will also permit marking documents for certain properties ("paid in full", "part of a group of projects"...)

And as soon as you add that I will ask for adding report lists with t filtering options (e. g. all documents tagged "invoice" and not "paid in full"). As Grantlee is permitting simple programming, too, it would be possible to create a bunch of interesting reports.

Even though you want Kraft to be a simple tool it doesn't mean it has to be primitive 8-). I'm also already looking for a tool to generate CSV or Excel files instead of PDF reports (or as additional layer inside the reports) without requiring changes to the application itself.