[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r8724 - trunk/gnue-forms/src/GFObjects
From: |
reinhard |
Subject: |
[gnue] r8724 - trunk/gnue-forms/src/GFObjects |
Date: |
Tue, 10 Oct 2006 09:39:50 -0500 (CDT) |
Author: reinhard
Date: 2006-10-10 09:39:49 -0500 (Tue, 10 Oct 2006)
New Revision: 8724
Modified:
trunk/gnue-forms/src/GFObjects/GFBlock.py
trunk/gnue-forms/src/GFObjects/GFField.py
Log:
Added option to get field value for other than current record.
Modified: trunk/gnue-forms/src/GFObjects/GFBlock.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFBlock.py 2006-10-10 12:54:24 UTC (rev
8723)
+++ trunk/gnue-forms/src/GFObjects/GFBlock.py 2006-10-10 14:39:49 UTC (rev
8724)
@@ -428,24 +428,37 @@
# Field access
# ---------------------------------------------------------------------------
- def get_value(self, field):
+ def get_value(self, field, offset):
"""
Return the value of the given field, depending on the block's state.
@param field: the GFField object.
+ @param offset: the offset from the current record (to get data for
+ records other than the current one).
"""
- if self.mode == 'query':
- value = self.__query_values.get(field)
+ if offset == 0:
+ if self.mode == 'query':
+ value = self.__query_values.get(field)
- elif self.mode == 'init':
- value = self._initializingRecord[field.field]
+ elif self.mode == 'init':
+ value = self._initializingRecord[field.field]
+ else:
+ if self._resultSet and self._resultSet.current:
+ value = self._resultSet.current[field.field]
+ else:
+ value = None
else:
- if self._resultSet and self._resultSet.current:
- value = self._resultSet.current.getField(field.field)
+ if self.mode in ['query', 'init'] or self._resultSet is None:
+ value = None
else:
- value = None
+ record_number = self._resultSet.getRecordNumber() + offset
+ if record_number < 0 or \
+ record_number >= self._resultSet.getRecordCount():
+ value = None
+ else:
+ value = self._resultSet[record_number][field.field]
return value
Modified: trunk/gnue-forms/src/GFObjects/GFField.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFField.py 2006-10-10 12:54:24 UTC (rev
8723)
+++ trunk/gnue-forms/src/GFObjects/GFField.py 2006-10-10 14:39:49 UTC (rev
8724)
@@ -271,13 +271,16 @@
# Reading and writing the DB value of a field
# -------------------------------------------------------------------------
- def getValue(self):
+ def getValue(self, offset=0):
"""
Return the current value of the field, depending on the state of the
form and the block.
+
+ @param offset: offset from the current record (to get values of records
+ other than the current record).
"""
- value = self._block.get_value(self)
+ value = self._block.get_value(self, offset)
if value is None:
value = ''
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r8724 - trunk/gnue-forms/src/GFObjects,
reinhard <=