[Erp5-report] r27819 - /erp5/trunk/products/ERP5/Document/TradeCondition.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jun 29 16:36:13 CEST 2009


Author: luke
Date: Mon Jun 29 16:36:12 2009
New Revision: 27819

URL: http://svn.erp5.org?rev=27819&view=rev
Log:
 - invert checking condition - it is needed to use base_application of trade model line being inserted

Modified:
    erp5/trunk/products/ERP5/Document/TradeCondition.py

Modified: erp5/trunk/products/ERP5/Document/TradeCondition.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/TradeCondition.py?rev=27819&r1=27818&r2=27819&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/TradeCondition.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/TradeCondition.py [utf8] Mon Jun 29 16:36:12 2009
@@ -185,32 +185,26 @@
           reference = trade_model_line.getReference()
           if reference not in reference_list or reference is None:
             reference_list.append(reference)
-            base_contribution_list = trade_model_line \
-              .getBaseContributionList()
-            if len(base_contribution_list) == 0:
+            if len(trade_model_line.getBaseContributionList()) == 0:
               # when movement will not generate anything which contributes
               # it is safe to be last on list
               trade_model_line_composed_list.append(trade_model_line)
             else:
-              # if movements contributes to anything it have to be placed
-              # just before to what it contributes
+              # parse full list of currently generated trade model lines
+              # if current line applies to anything, put it after last
+              # object it applies to
               index = 0
-              inserted = False
+              insert_index = 0
               for old_trade_model_line in trade_model_line_composed_list:
-                for base_application in old_trade_model_line \
-                  .getBaseApplicationList():
-                  if base_application in base_contribution_list:
-                    trade_model_line_composed_list.insert(index,
-                        trade_model_line)
-                    inserted = True
-                    break
-                if inserted:
-                  break
+                for base_application in trade_model_line \
+                    .getBaseApplicationList():
+                  if base_application in old_trade_model_line \
+                      .getBaseContributionList():
+                    insert_index = index + 1
+                    continue
                 index += 1
-              if not inserted:
-                # last resort - nothing was found, it is safe to put movement
-                # in beginning of list
-                trade_model_line_composed_list.insert(0, trade_model_line)
+              trade_model_line_composed_list.insert(insert_index,
+                  trade_model_line)
 
       return trade_model_line_composed_list
 




More information about the Erp5-report mailing list