details: https://code.tryton.org/tryton/commit/d9af1c8b229d
branch: default
user: Cédric Krier <[email protected]>
date: Tue Dec 30 17:41:36 2025 +0100
description:
Fallback to location key from context to compute product quantity
The location key is used for stock reporting so when browsing from such
report,
it is good that the selected location is still used for stock
calculation.
diffstat:
modules/stock/product.py | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diffs (29 lines):
diff -r 75a9ec77dd93 -r d9af1c8b229d modules/stock/product.py
--- a/modules/stock/product.py Tue Dec 30 17:42:00 2025 +0100
+++ b/modules/stock/product.py Tue Dec 30 17:41:36 2025 +0100
@@ -172,15 +172,23 @@
'get_cost_value')
@classmethod
+ def _quantity_locations(cls):
+ context = Transaction().context
+ location_ids = context.get('locations')
+ if not location_ids and context.get('location'):
+ location_ids = [context['location']]
+ return location_ids
+
+ @classmethod
def get_quantity(cls, products, name):
- location_ids = Transaction().context.get('locations')
+ location_ids = cls._quantity_locations()
product_ids = list(map(int, products))
return cls._get_quantity(
products, name, location_ids, grouping_filter=(product_ids,))
@classmethod
def search_quantity(cls, name, domain=None):
- location_ids = Transaction().context.get('locations')
+ location_ids = cls._quantity_locations()
return cls._search_quantity(name, location_ids, domain)
@classmethod