[Erp5-report] r33067 kazuhiko - in /erp5/trunk: bt5/erp5_base/ActionTemplateItem/portal_typ...

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Feb 24 03:38:06 CET 2010


Author: kazuhiko
Date: Wed Feb 24 03:38:05 2010
New Revision: 33067

URL: http://svn.erp5.org?rev=33067&view=rev
Log:
add split only movement groups, that do grouping by specified property or category values but do not update documents. they are useful for acquired properties like payment_condition_*.

Added:
    erp5/trunk/bt5/erp5_base/ActionTemplateItem/portal_types/Split%20Category%20Movement%20Group/
      - copied from r33066, erp5/trunk/bt5/erp5_base/ActionTemplateItem/portal_types/Category%20Movement%20Group/
    erp5/trunk/bt5/erp5_base/ActionTemplateItem/portal_types/Split%20Property%20Movement%20Group/
      - copied from r33066, erp5/trunk/bt5/erp5_base/ActionTemplateItem/portal_types/Property%20Movement%20Group/
    erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%20Category%20Movement%20Group.xml
      - copied, changed from r33066, erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Category%20Movement%20Group.xml
    erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%20Property%20Movement%20Group.xml
      - copied, changed from r33066, erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Property%20Movement%20Group.xml
    erp5/trunk/products/ERP5/Document/SplitCategoryMovementGroup.py
    erp5/trunk/products/ERP5/Document/SplitPropertyMovementGroup.py
Modified:
    erp5/trunk/bt5/erp5_base/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
    erp5/trunk/bt5/erp5_base/bt/revision
    erp5/trunk/bt5/erp5_base/bt/template_action_path_list
    erp5/trunk/bt5/erp5_base/bt/template_portal_type_allowed_content_type_list
    erp5/trunk/bt5/erp5_base/bt/template_portal_type_id_list

Modified: erp5/trunk/bt5/erp5_base/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml?rev=33067&r1=33066&r2=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml [utf8] Wed Feb 24 03:38:05 2010
@@ -31,7 +31,9 @@
   <item>Quantity Sign Movement Group</item>
   <item>Requirement Movement Group</item>
   <item>Root Applied Rule Causality Movement Group</item>
+  <item>Split Category Movement Group</item>
   <item>Split Movement Group</item>
+  <item>Split Property Movement Group</item>
   <item>Tax Line Delivery Movement Group</item>
   <item>Title Movement Group</item>
   <item>Variant Movement Group</item>
@@ -59,7 +61,9 @@
   <item>Quantity Sign Movement Group</item>
   <item>Requirement Movement Group</item>
   <item>Root Applied Rule Causality Movement Group</item>
+  <item>Split Category Movement Group</item>
   <item>Split Movement Group</item>
+  <item>Split Property Movement Group</item>
   <item>Title Movement Group</item>
   <item>Variant Movement Group</item>
   <item>Variation Property Movement Group</item>

Copied: erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%20Category%20Movement%20Group.xml (from r33066, erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Category%20Movement%20Group.xml)
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%2520Category%2520Movement%2520Group.xml?p2=erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%2520Category%2520Movement%2520Group.xml&p1=erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Category%2520Movement%2520Group.xml&r1=33066&r2=33067&rev=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Category%20Movement%20Group.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%20Category%20Movement%20Group.xml [utf8] Wed Feb 24 03:38:05 2010
@@ -19,7 +19,7 @@
         </item>
         <item>
             <key> <string>content_meta_type</string> </key>
-            <value> <string>ERP5 Category Movement Group</string> </value>
+            <value> <string>ERP5 Split Category Movement Group</string> </value>
         </item>
         <item>
             <key> <string>description</string> </key>
@@ -29,7 +29,7 @@
         </item>
         <item>
             <key> <string>factory</string> </key>
-            <value> <string>addCategoryMovementGroup</string> </value>
+            <value> <string>addSplitCategoryMovementGroup</string> </value>
         </item>
         <item>
             <key> <string>filter_content_types</string> </key>
@@ -45,7 +45,7 @@
         </item>
         <item>
             <key> <string>id</string> </key>
-            <value> <string>Category Movement Group</string> </value>
+            <value> <string>Split Category Movement Group</string> </value>
         </item>
         <item>
             <key> <string>init_script</string> </key>

Copied: erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%20Property%20Movement%20Group.xml (from r33066, erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Property%20Movement%20Group.xml)
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%2520Property%2520Movement%2520Group.xml?p2=erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%2520Property%2520Movement%2520Group.xml&p1=erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Property%2520Movement%2520Group.xml&r1=33066&r2=33067&rev=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Property%20Movement%20Group.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/PortalTypeTemplateItem/portal_types/Split%20Property%20Movement%20Group.xml [utf8] Wed Feb 24 03:38:05 2010
@@ -19,7 +19,7 @@
         </item>
         <item>
             <key> <string>content_meta_type</string> </key>
-            <value> <string>ERP5 Property Movement Group</string> </value>
+            <value> <string>ERP5 Split Property Movement Group</string> </value>
         </item>
         <item>
             <key> <string>description</string> </key>
@@ -29,7 +29,7 @@
         </item>
         <item>
             <key> <string>factory</string> </key>
-            <value> <string>addPropertyMovementGroup</string> </value>
+            <value> <string>addSplitPropertyMovementGroup</string> </value>
         </item>
         <item>
             <key> <string>filter_content_types</string> </key>
@@ -45,7 +45,7 @@
         </item>
         <item>
             <key> <string>id</string> </key>
-            <value> <string>Property Movement Group</string> </value>
+            <value> <string>Split Property Movement Group</string> </value>
         </item>
         <item>
             <key> <string>init_script</string> </key>

Modified: erp5/trunk/bt5/erp5_base/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/bt/revision?rev=33067&r1=33066&r2=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/bt/revision [utf8] Wed Feb 24 03:38:05 2010
@@ -1,1 +1,1 @@
-677
+678

Modified: erp5/trunk/bt5/erp5_base/bt/template_action_path_list
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/bt/template_action_path_list?rev=33067&r1=33066&r2=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/bt/template_action_path_list [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/bt/template_action_path_list [utf8] Wed Feb 24 03:38:05 2010
@@ -79,7 +79,9 @@
 Rounding Model | predicate_view
 Rounding Model | view
 Rounding Tool | view
+Split Category Movement Group | view
 Split Movement Group | view
+Split Property Movement Group | view
 Tax Line Delivery Movement Group | view
 Telephone | change_function
 Telephone | view

Modified: erp5/trunk/bt5/erp5_base/bt/template_portal_type_allowed_content_type_list
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/bt/template_portal_type_allowed_content_type_list?rev=33067&r1=33066&r2=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/bt/template_portal_type_allowed_content_type_list [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/bt/template_portal_type_allowed_content_type_list [utf8] Wed Feb 24 03:38:05 2010
@@ -19,7 +19,9 @@
 Delivery Builder | Quantity Sign Movement Group
 Delivery Builder | Requirement Movement Group
 Delivery Builder | Root Applied Rule Causality Movement Group
+Delivery Builder | Split Category Movement Group
 Delivery Builder | Split Movement Group
+Delivery Builder | Split Property Movement Group
 Delivery Builder | Tax Line Delivery Movement Group
 Delivery Builder | Title Movement Group
 Delivery Builder | Variant Movement Group
@@ -39,7 +41,9 @@
 Order Builder | Quantity Sign Movement Group
 Order Builder | Requirement Movement Group
 Order Builder | Root Applied Rule Causality Movement Group
+Order Builder | Split Category Movement Group
 Order Builder | Split Movement Group
+Order Builder | Split Property Movement Group
 Order Builder | Title Movement Group
 Order Builder | Variant Movement Group
 Order Builder | Variation Property Movement Group

Modified: erp5/trunk/bt5/erp5_base/bt/template_portal_type_id_list
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_base/bt/template_portal_type_id_list?rev=33067&r1=33066&r2=33067&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_base/bt/template_portal_type_id_list [utf8] (original)
+++ erp5/trunk/bt5/erp5_base/bt/template_portal_type_id_list [utf8] Wed Feb 24 03:38:05 2010
@@ -48,7 +48,9 @@
 Root Applied Rule Causality Movement Group
 Rounding Model
 Rounding Tool
+Split Category Movement Group
 Split Movement Group
+Split Property Movement Group
 Tax Line Delivery Movement Group
 Telephone
 Title Movement Group

Added: erp5/trunk/products/ERP5/Document/SplitCategoryMovementGroup.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/SplitCategoryMovementGroup.py?rev=33067&view=auto
==============================================================================
--- erp5/trunk/products/ERP5/Document/SplitCategoryMovementGroup.py (added)
+++ erp5/trunk/products/ERP5/Document/SplitCategoryMovementGroup.py [utf8] Wed Feb 24 03:38:05 2010
@@ -1,0 +1,58 @@
+##############################################################################
+#
+# Copyright (c) 2010 Nexedi SA and Contributors. All Rights Reserved.
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsibility of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# guarantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+#
+##############################################################################
+
+from Products.ERP5.Document.CategoryMovementGroup import CategoryMovementGroup
+
+class SplitCategoryMovementGroup(CategoryMovementGroup):
+  """
+  Split Category Movement Group is similar to Category Movement Group,
+  but it does grouping only by specified category values and do not
+  update documents.
+
+  This is useful for acquired properties like payment_condition_*.
+  """
+  meta_type = 'ERP5 Split Category Movement Group'
+  portal_type = 'Split Category Movement Group'
+
+  def _getPropertyDict(self, movement, **kw):
+    property_dict = {}
+    for prop in self.getTestedPropertyList():
+      property_dict['_%s_list' % prop] = sorted(
+        movement.getPropertyList(prop))
+    return property_dict
+
+  def test(self, document, property_dict, property_list=None, **kw):
+    if property_list not in (None, []):
+      target_property_list = [x for x in self.getTestedPropertyList() \
+                              if x in property_list]
+    else:
+      target_property_list = self.getTestedPropertyList()
+    for prop in target_property_list:
+      if property_dict['_%s_list' % prop] != \
+             sorted(document.getPropertyList(prop, None)):
+        return False, property_dict
+    return True, property_dict

Added: erp5/trunk/products/ERP5/Document/SplitPropertyMovementGroup.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/SplitPropertyMovementGroup.py?rev=33067&view=auto
==============================================================================
--- erp5/trunk/products/ERP5/Document/SplitPropertyMovementGroup.py (added)
+++ erp5/trunk/products/ERP5/Document/SplitPropertyMovementGroup.py [utf8] Wed Feb 24 03:38:05 2010
@@ -1,0 +1,56 @@
+##############################################################################
+#
+# Copyright (c) 2010 Nexedi SA and Contributors. All Rights Reserved.
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsibility of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# guarantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+#
+##############################################################################
+
+from Products.ERP5.Document.PropertyMovementGroup import PropertyMovementGroup
+
+class SplitPropertyMovementGroup(PropertyMovementGroup):
+  """
+  Split Property Movement Group is similar to Property Movement Group,
+  but it does grouping only by specified property values and do not
+  update documents.
+
+  This is useful for acquired properties like payment_condition_*.
+  """
+  meta_type = 'ERP5 Split Property Movement Group'
+  portal_type = 'Split Property Movement Group'
+
+  def _getPropertyDict(self, movement, **kw):
+    property_dict = {}
+    for prop in self.getTestedPropertyList():
+      property_dict['_%s' % prop] = movement.getProperty(prop, None)
+    return property_dict
+
+  def test(self, document, property_dict, property_list=None, **kw):
+    if property_list not in (None, []):
+      target_property_list = [x for x in self.getTestedPropertyList() \
+                              if x in property_list]
+    else:
+      target_property_list = self.getTestedPropertyList()
+    for prop in target_property_list:
+      if property_dict['_%s' % prop] != document.getProperty(prop, None):
+        return False, property_dict
+    return True, property_dict




More information about the Erp5-report mailing list