On 09.11.2015 17:14, Cédric Krier wrote: > On 2015-11-09 16:55, 'Korbinian Preisler' via tryton wrote: >> On 09.11.2015 16:28, Cédric Krier wrote: >>> On 2015-11-09 16:00, 'Korbinian Preisler' via tryton wrote: >>>> On 21.10.2015 15:08, Cédric Krier wrote: >>>>> As already stated having invoice/credit note distinction prevents to put >>>>> in the same document both kind of lines. And in case of such mixed >>>>> document it is name is not so trivial to determine. But we can keep the >>>>> numbering distinction using the total sign. >>>>> About the cancelation sub-type, I don't think we have to create a new >>>>> document (record in invoice table) for that. The current design is to >>>>> create a cancelation move linked to the invoice. If a specific number is >>>>> needed for customer cancelation, I guess the module (I talk above) could >>>>> add an other field to hold the number and the invoice report could be >>>>> customized to use this number. >>>> After some thoughts i agree that we do not need the cancelation sub-type >>>> but my explanation is a little bit different to Cedrics one. >>>> I think we already have the cancelation sub-type. I think that we just >>>> use the currency credit note sub-type in a wrong way because it should >>>> be the cancelation instead of the tax-law credit-note. >>>> >>>> If we do like this many things will be possible or some others should be >>>> done: >>>> * Mixed documents will be possible >>>> * The credit note like it is defined by tax law can be implemented with >>>> a boolean field that marks the "self-billing" and that will switch the >>>> layout of the report. As i noted in my last post there is no other >>>> difference compared to a normal invoice. >>> I don't see the need of such field because cancellation is already >>> implemented. >> Self-billing is not a cancelation. > Oops, yes I re-read your previous post. Indeed I see no need for such > boolean. You can consider all negative invoice as "self-billing". I think this is a wrong approach. Self-billing is a change in process but not a change in the document itself.
I will try to explain again the self-billing process. Consider a supplier A delivering a product to company B. Company B is the company that is manage by tryton. Normally the supplier will write an invoice for this delivery. But A and B can agree on a self-billing by the customer. The customer then will write a 'credit note' to the supplier. As the customer is writing the invoice for himself he does a self-billing. But in the sense of tryton it is just an in-invoice. There is no need to make the total amount negative. It is just a supplier invoice. Only the process how the invoice is written is different. I would use the negative total amount to determine the document to be a cancellation or not. It will make the document handling for a cancellation easier as you only have one report per record. > >>>> * The Wizard 'Credit Invoice' should be renamed to 'Cancel Invoice' and >>>> should multiply the quantities of the invoice lines with -1 >>>> * A constraint should be implemented that the total mount of an invoice >>>> must be positive and the total amount of an cancelation must be negative >>> I don't see the point of having a constraint. It is not needed to work >>> correctly if the "type" is deducted from the sign of the amount. >>> >> Which "type" are you talking about? > You are talking about constraint on specific type of invoice so this > will require to put a type on the invoice. But I think it is not > necessary because the sign of the amount define the type. >
