round qty when is not null in compute_quantities_query method
This commit is contained in:
parent
f39793b0f7
commit
18f1d7c38c
|
@ -1,7 +1,7 @@
|
|||
diff -r ead64e2dd6eb move.py
|
||||
--- a/trytond/trytond/modules/stock/move.py Thu Apr 04 17:11:50 2019 +0200
|
||||
+++ b/trytond/trytond/modules/stock/move.py Thu Apr 04 17:18:03 2019 +0200
|
||||
@@ -937,7 +937,8 @@
|
||||
diff -r f95dbecc064f trytond/trytond/modules/stock/move.py
|
||||
--- a/trytond/trytond/modules/stock/move.py Thu May 02 09:50:09 2019 +0200
|
||||
+++ b/trytond/trytond/modules/stock/move.py Thu May 02 09:52:21 2019 +0200
|
||||
@@ -904,7 +904,8 @@
|
||||
|
||||
@classmethod
|
||||
def compute_quantities_query(cls, location_ids, with_childs=False,
|
||||
|
@ -11,7 +11,7 @@ diff -r ead64e2dd6eb move.py
|
|||
"""
|
||||
Prepare a query object to compute for each location and product the
|
||||
stock quantity in the default uom of the product.
|
||||
@@ -955,6 +956,8 @@
|
||||
@@ -922,6 +923,8 @@
|
||||
stock_skip_warehouse: if set, quantities on a warehouse are no more
|
||||
quantities of all child locations but quantities of the storage
|
||||
zone.
|
||||
|
@ -20,7 +20,7 @@ diff -r ead64e2dd6eb move.py
|
|||
If with_childs, it computes also for child locations.
|
||||
grouping is a tuple of Move (or Product if prefixed by 'product.')
|
||||
field names and defines how stock moves are grouped.
|
||||
@@ -1007,7 +1010,7 @@
|
||||
@@ -974,7 +977,7 @@
|
||||
if use_product:
|
||||
product = Product.__table__()
|
||||
columns = ['id', 'state', 'effective_date', 'planned_date',
|
||||
|
@ -29,7 +29,7 @@ diff -r ead64e2dd6eb move.py
|
|||
columns += [c for c in grouping if c not in columns]
|
||||
columns = [get_column(c, move, product) for c in columns]
|
||||
move = (move
|
||||
@@ -1020,7 +1023,7 @@
|
||||
@@ -987,7 +990,7 @@
|
||||
period_cache = PeriodCache.__table__()
|
||||
if use_product:
|
||||
product_cache = Product.__table__()
|
||||
|
@ -38,7 +38,7 @@ diff -r ead64e2dd6eb move.py
|
|||
columns += [c for c in grouping if c not in columns]
|
||||
columns = [get_column(c, period_cache, product_cache)
|
||||
for c in columns]
|
||||
@@ -1037,7 +1040,7 @@
|
||||
@@ -1004,7 +1007,7 @@
|
||||
to_location = Location.__table__()
|
||||
to_parent_location = Location.__table__()
|
||||
columns = ['id', 'state', 'effective_date', 'planned_date',
|
||||
|
@ -47,7 +47,7 @@ diff -r ead64e2dd6eb move.py
|
|||
columns += [c for c in grouping if c not in columns]
|
||||
columns = [Column(move, c).as_(c) for c in columns]
|
||||
|
||||
@@ -1092,7 +1095,7 @@
|
||||
@@ -1059,7 +1062,7 @@
|
||||
if PeriodCache:
|
||||
location = Location.__table__()
|
||||
parent_location = Location.__table__()
|
||||
|
@ -56,7 +56,7 @@ diff -r ead64e2dd6eb move.py
|
|||
columns = [Column(period_cache, c).as_(c) for c in columns]
|
||||
period_cache = Union(
|
||||
period_cache.select(
|
||||
@@ -1290,7 +1293,7 @@
|
||||
@@ -1257,7 +1260,7 @@
|
||||
move_keys_alias = [Column(move, key).as_(key) for key in grouping]
|
||||
move_keys = [Column(move, key) for key in grouping]
|
||||
query = move.select(move.to_location.as_('location'),
|
||||
|
@ -65,7 +65,7 @@ diff -r ead64e2dd6eb move.py
|
|||
*move_keys_alias,
|
||||
where=state_date_clause_in
|
||||
& where
|
||||
@@ -1300,7 +1303,7 @@
|
||||
@@ -1267,7 +1270,7 @@
|
||||
& dest_clause_from,
|
||||
group_by=[move.to_location] + move_keys)
|
||||
query = Union(query, move.select(move.from_location.as_('location'),
|
||||
|
@ -74,7 +74,7 @@ diff -r ead64e2dd6eb move.py
|
|||
*move_keys_alias,
|
||||
where=state_date_clause_out
|
||||
& where
|
||||
@@ -1315,7 +1318,7 @@
|
||||
@@ -1282,7 +1285,7 @@
|
||||
for key in grouping]
|
||||
query = Union(query, from_period.select(
|
||||
period_cache.location.as_('location'),
|
||||
|
@ -83,3 +83,11 @@ diff -r ead64e2dd6eb move.py
|
|||
*period_keys,
|
||||
where=(period_cache.period
|
||||
== (period.id if period else None))
|
||||
@@ -1391,7 +1394,7 @@
|
||||
for key, quantity in quantities.items():
|
||||
location = key[0]
|
||||
uom = default_uom[id_getter(key)]
|
||||
- quantities[key] = uom.round(quantity)
|
||||
+ quantities[key] = uom.round(quantity) if quantity else 0
|
||||
|
||||
return quantities
|
||||
|
|
Loading…
Reference in New Issue