changeset 06398121ed9d in modules/stock_lot:default
details: https://hg.tryton.org/modules/stock_lot?cmd=changeset&node=06398121ed9d
description:
        Limit size of grouping_filter ids

        The list of ids in grouping_filter are used inside an IN-clause so we 
must
        limit the size.

        issue10589
        review379471002
diffstat:

 stock.py |  8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diffs (18 lines):

diff -r 54386eadcb78 -r 06398121ed9d stock.py
--- a/stock.py  Tue Oct 19 00:10:45 2021 +0200
+++ b/stock.py  Sat Oct 30 02:27:19 2021 +0200
@@ -94,8 +94,12 @@
     def get_quantity(cls, lots, name):
         location_ids = Transaction().context.get('locations')
         product_ids = list(set(l.product.id for l in lots))
-        return cls._get_quantity(lots, name, location_ids,
-            grouping=('product', 'lot',), grouping_filter=(product_ids,))
+        quantities = {}
+        for product_ids in grouped_slice(product_ids):
+            quantities.update(cls._get_quantity(lots, name, location_ids,
+                    grouping=('product', 'lot',),
+                    grouping_filter=(list(product_ids),)))
+        return quantities
 
     @classmethod
     def search_quantity(cls, name, domain=None):

Reply via email to