Use fixed location type to compute quantity to invoice for sale and purchase

Using the computed location to get the expected type is not reliable because
for return order, the location can be of different type and the stock move can
change of location type.

Closes #12203
This commit is contained in:
Cédric Krier committed 2023-04-13 17:45:09 +02:00
1 parent a1538856b7
commit 5c3f4e503e
2 files changed
+2 -6

No files matched your search

+1 -3
View File
@@ -1735,15 +1735,13 @@ class Line(sequence_ordered(), ModelSQL, ModelView):
qty = Uom.compute_qty(move.uom, move.quantity, self.unit)
# Test only against from_location
# as it is what matters for purchase
src_type = self.from_location.type
src_type = 'supplier'
if (move.from_location.type == src_type
and move.to_location.type != src_type):
quantity += qty
elif (move.to_location.type == src_type
and move.from_location.type != src_type):
quantity -= qty
if self.quantity < 0:
quantity *= -1
return quantity
def _get_invoiced_quantity(self):