dabo Commit
Revision 4845
Date: 2008-12-16 20:11:37 -0800 (Tue, 16 Dec 2008)
Author: Paul
Trac: http://trac.dabodev.com/dabo/changeset/4845
Changed:
U trunk/dabo/lib/reportWriter.py
Log:
[4750] introduced a recursion problem with the report designer. This is a
better fix for providing PageNumber, and won't affect existing report designs.
Diff:
Modified: trunk/dabo/lib/reportWriter.py
===================================================================
--- trunk/dabo/lib/reportWriter.py 2008-12-16 23:19:20 UTC (rev 4844)
+++ trunk/dabo/lib/reportWriter.py 2008-12-17 04:11:37 UTC (rev 4845)
@@ -131,12 +131,6 @@
if self.Record.has_key(att):
return self.Record.get(att)
- # 4) Try the Report object:
- try:
- return getattr(self.Report, att)
- except AttributeError:
- pass
-
raise AttributeError, "Can't get attribute '%s'." % att
@@ -357,10 +351,6 @@
class Report(ReportObject):
"""Represents the report."""
- def __init__(self, *args, **kwargs):
- self._pageNumber = 0
- super(Report, self).__init__(*args, **kwargs)
-
def initAvailableProps(self):
super(Report, self).initAvailableProps()
@@ -382,13 +372,7 @@
self.setdefault("Groups", Groups(self))
self.setdefault("Variables", Variables(self))
- def _getPageNumber(self):
- return self._pageNumber
- PageNumber = property(_getPageNumber, None, None,
- _("""Returns the current page number at runtime."""))
-
-
class Page(ReportObject):
"""Represents the page."""
def initAvailableProps(self):
@@ -1334,6 +1318,7 @@
pageSize = self.getPageSize()
pageWidth, pageHeight = pageSize
+ self._pageNumber = 0
c = self.Canvas
if not c:
@@ -1528,7 +1513,7 @@
def beginPage():
# Print the static bands that appear below detail in
z-order:
- self.ReportForm._pageNumber += 1
+ self._pageNumber += 1
for band in ("pageBackground", "pageHeader",
"pageFooter"):
printBand(band)
self._brandNewPage = True
@@ -1591,9 +1576,9 @@
if vv["curVal"] != group.getProp("expr"):
rp = eval(group.get("resetPageNumber",
"False"))
if rp and self._recordNumber == 0:
- self.ReportForm._pageNumber = 1
+ self._pageNumber = 1
elif rp:
- self.ReportForm._pageNumber = 0
+ self._pageNumber = 0
vv["curVal"] = group.getProp("expr")
np = eval(group.get("startOnNewPage",
"False")) \
and self.RecordNumber > 0
@@ -1952,6 +1937,8 @@
else:
raise ValueError, "Path '%s' doesn't exist." %
s[0]
+ def _getPageNumber(self):
+ return self._pageNumber
def _getRecord(self):
try:
@@ -2089,6 +2076,9 @@
OutputFile = property(_getOutputFile, _setOutputFile, None,
_("Specifies the output PDF file (name or file object)."))
+ PageNumber = property(_getPageNumber, None, None,
+ _("""Returns the current page number at runtime."""))
+
Record = property(_getRecord, _setRecord, None,
_("""Specifies the dictionary that represents the current
record.
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message:
http://leafe.com/archives/byMID/[email protected]