From b4ba5710e1ac84e7a3c56d23e0a4b71740e0582f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Perrin?= <jerome@nexedi.com> Date: Tue, 5 Feb 2013 14:43:35 +0100 Subject: [PATCH] reimplement ContainerLine.getTotalQuantity using ZODB to get rid of movement table dependancy --- .../erp5_trade/ContainerLine_zGetTotal.xml | 75 ------------------- product/ERP5/Document/ContainerLine.py | 6 +- 2 files changed, 2 insertions(+), 79 deletions(-) delete mode 100644 bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/ContainerLine_zGetTotal.xml diff --git a/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/ContainerLine_zGetTotal.xml b/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/ContainerLine_zGetTotal.xml deleted file mode 100644 index 46fb02b184..0000000000 --- a/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/ContainerLine_zGetTotal.xml +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0"?> -<ZopeData> - <record id="1" aka="AAAAAAAAAAE="> - <pickle> - <global name="SQL" module="Products.ZSQLMethods.SQL"/> - </pickle> - <pickle> - <dictionary> - <item> - <key> <string>allow_simple_one_argument_traversal</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>arguments_src</string> </key> - <value> <string>uid</string> </value> - </item> - <item> - <key> <string>cache_time_</string> </key> - <value> <int>0</int> </value> - </item> - <item> - <key> <string>class_file_</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>class_name_</string> </key> - <value> <string></string> </value> - </item> - <item> - <key> <string>connection_hook</string> </key> - <value> - <none/> - </value> - </item> - <item> - <key> <string>connection_id</string> </key> - <value> <string>erp5_sql_connection</string> </value> - </item> - <item> - <key> <string>id</string> </key> - <value> <string>ContainerLine_zGetTotal</string> </value> - </item> - <item> - <key> <string>max_cache_</string> </key> - <value> <int>100</int> </value> - </item> - <item> - <key> <string>max_rows_</string> </key> - <value> <int>1000</int> </value> - </item> - <item> - <key> <string>src</string> </key> - <value> <string encoding="cdata"><![CDATA[ - -SELECT \n -\tSUM(quantity) AS total_quantity\n -FROM catalog, movement\n -WHERE \n -\tcatalog.parent_uid = <dtml-sqlvar uid type="int">\n -AND\t\n -\tcatalog.uid = movement.uid\n - - -]]></string> </value> - </item> - <item> - <key> <string>title</string> </key> - <value> <string></string> </value> - </item> - </dictionary> - </pickle> - </record> -</ZopeData> diff --git a/product/ERP5/Document/ContainerLine.py b/product/ERP5/Document/ContainerLine.py index d0783c7c3a..0718373a21 100644 --- a/product/ERP5/Document/ContainerLine.py +++ b/product/ERP5/Document/ContainerLine.py @@ -94,7 +94,5 @@ class ContainerLine(DeliveryLine): base_id = 'movement' if not self.hasCellContent(base_id=base_id): return self.getQuantity() - else: - # Use MySQL - aggregate = self.ContainerLine_zGetTotal()[0] - return aggregate.total_quantity or 0.0 + return sum(cell.getQuantity() for cell in + self.getCellValueList(base_id=base_id)) -- 2.30.9