MOrderLine.afterSave() always calls ITaxProvider.recalculateTax() even when processing shipments/invoices (due to changes in reserved/delivered/invoiced fields). Althought being simple to work around this behavior (checking isProcessed in recalculateTax() and just returning), it not seems to be consistent this call to the method.
What about adding !isProcessed() before trying to recalculte taxes?
Attached is suggestion patch for MOrderLine/MInvoiceLine/MRMALine
The patch resolve when processing shipments/invoices, but doesn't resolve the call to recalculateTax() when preparing order and qty of line was changed - due to changing reserved qty field.
triaging Marco Longo
Not clear whatis the problem . Please Alan show example to reproduce