Report address on sale and purchase

Currently we use the invoice address on the sale and purchase reports.
I have case where the report address should be different than the invoice address.
I’m wondering if we should add a third address in standard module for this case or if such case is too rare to be implemented in standard.
I’m a little bit worry about the UI if we add another address because it will become quite heavy especially for the major cases where all three addresses are the same.

This requirement is quite common if you have business with bigger companies.

As a first thought, I’m wondering if it will be enough to prepare the base report to include a report_address function field, which by default returns the invoice address and can be extended by a third party module in order to use a different field if required.

On the other hand it’s difficult to design a base report that fits the needs of all companies. Companies that have those needs may have enough resources (and maybe the want to for other reasons) customise the report to include this new data.

I must admit that I’m in favour of keeping a simple UI.

Maybe it is similar to Sale Opportunity Contact Blueprint

Finally, I think we should make the invoice_address working like the shipment_address by adding a invoice_party. Thus we should also add an contact_address which will be linked to the party.
For the UI design, we could just replace the current invoice_address with the contact_address and add a new row with invoice_party and invoice_address. I think it will not be too much complex for the user.

Indeed I think this is wrong because the party defines some accounting parameters like the tax rules, the Tax identifier. So we can not have two different parties.

I created issue6438 to ease the usage of different address in the reports.