work in progress: report management: handle output fields
git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@3803 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
parent
62c8099500
commit
173a86926e
2 changed files with 17 additions and 1 deletions
|
@ -71,10 +71,24 @@ class Report(Template):
|
||||||
manager = None
|
manager = None
|
||||||
|
|
||||||
fields = Jeep((field.label,))
|
fields = Jeep((field.label,))
|
||||||
|
defaultOutputFields = (field.label,)
|
||||||
|
|
||||||
renderers = ()
|
renderers = ()
|
||||||
sortSpec = ()
|
sortSpec = ()
|
||||||
outputSpec = ()
|
outputFields = ()
|
||||||
|
|
||||||
def __init__(self, name):
|
def __init__(self, name):
|
||||||
self.name = name
|
self.name = name
|
||||||
|
|
||||||
|
def getAllOutputFields(self):
|
||||||
|
return [f for f in self.fields if 'output' in f.executionSteps]
|
||||||
|
|
||||||
|
def getActiveOutputFields(self):
|
||||||
|
if not self.outputFields:
|
||||||
|
return self.defaultOutputFields
|
||||||
|
return self.outputFields
|
||||||
|
|
||||||
|
def getAvailableOutputFields(self):
|
||||||
|
return [f for f in self.getAllOutputFields()
|
||||||
|
if f not in self.getActiveOutputFields()]
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,8 @@ class Field(Component):
|
||||||
default = None
|
default = None
|
||||||
instance_name = None
|
instance_name = None
|
||||||
|
|
||||||
|
executionSteps = ['query', 'sort', 'output']
|
||||||
|
|
||||||
def __init__(self, name, title=None, fieldType='textline', **kw):
|
def __init__(self, name, title=None, fieldType='textline', **kw):
|
||||||
assert name
|
assert name
|
||||||
self.__name__ = name
|
self.__name__ = name
|
||||||
|
|
Loading…
Add table
Reference in a new issue