[Erp5-report] r33594 kazuhiko - /erp5/trunk/products/ERP5/Document/
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Mar 10 18:57:14 CET 2010
Author: kazuhiko
Date: Wed Mar 10 18:57:11 2010
New Revision: 33594
URL: http://svn.erp5.org?rev=33594&view=rev
Log:
directly call getter instead of using Base.getProperty() because getProperty() does not work well for acquired property (eg. payment_condition_efficiency) to acquire values from parent.
Modified:
erp5/trunk/products/ERP5/Document/ParentDeliveryCategoryMovementGroup.py
erp5/trunk/products/ERP5/Document/ParentDeliveryPropertyMovementGroup.py
Modified: erp5/trunk/products/ERP5/Document/ParentDeliveryCategoryMovementGroup.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/ParentDeliveryCategoryMovementGroup.py?rev=33594&r1=33593&r2=33594&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/ParentDeliveryCategoryMovementGroup.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/ParentDeliveryCategoryMovementGroup.py [utf8] Wed Mar 10 18:57:11 2010
@@ -45,8 +45,9 @@
parent_delivery = self._getParentDelivery(movement)
if parent_delivery is not None:
for prop in self.getTestedPropertyList():
- property_dict['_%s_list' % prop] = sorted(
- movement.getPropertyList(prop))
+ list_prop = '_%s_list' % prop
+ property_dict[list_prop] = sorted(
+ self._getProperty(movement, list_prop, []))
return property_dict
def test(self, document, property_dict, property_list=None, **kw):
@@ -56,7 +57,8 @@
else:
target_property_list = self.getTestedPropertyList()
for prop in target_property_list:
- if property_dict['_%s_list' % prop] != \
- sorted(document.getPropertyList(prop, None)):
+ list_prop = '_%s_list' % prop
+ if property_dict[list_prop] != \
+ sorted(self._getProperty(document, list_prop, [])):
return False, property_dict
return True, property_dict
Modified: erp5/trunk/products/ERP5/Document/ParentDeliveryPropertyMovementGroup.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/ParentDeliveryPropertyMovementGroup.py?rev=33594&r1=33593&r2=33594&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/ParentDeliveryPropertyMovementGroup.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/ParentDeliveryPropertyMovementGroup.py [utf8] Wed Mar 10 18:57:11 2010
@@ -26,6 +26,9 @@
##############################################################################
from Products.ERP5.Document.PropertyMovementGroup import PropertyMovementGroup
+from Products.ERP5Type.Utils import UpperCase
+
+_MARKER = []
class ParentDeliveryPropertyMovementGroup(PropertyMovementGroup):
"""
@@ -44,7 +47,7 @@
parent_delivery = self._getParentDelivery(movement)
if parent_delivery is not None:
for prop in self.getTestedPropertyList():
- property_dict['_%s' % prop] = parent_delivery.getProperty(prop, None)
+ property_dict['_%s' % prop] = self._getProperty(parent_delivery, prop, None)
return property_dict
def test(self, document, property_dict, property_list=None, **kw):
@@ -54,7 +57,7 @@
else:
target_property_list = self.getTestedPropertyList()
for prop in target_property_list:
- if property_dict['_%s' % prop] != document.getProperty(prop, None):
+ if property_dict['_%s' % prop] != self._getProperty(document, prop, None):
return False, property_dict
return True, property_dict
@@ -68,3 +71,10 @@
movement = rule.getParentValue()
delivery = movement.getDeliveryValue()
return delivery
+
+ def _getProperty(self, document, property_id, d=_MARKER):
+ # XXX here we don't use Base.getProperty() but try to call accessor
+ # directly to make acquired property
+ # (eg. payment_condition_efficiency) working.
+ accessor_name = 'get' + UpperCase(property_id)
+ return getattr(document, accessor_name)(d)
More information about the Erp5-report
mailing list