Thread: [PythonReports-users] PythonReports/editor/editor.py
Brought to you by:
a1s
From: Werner F. B. <wer...@fr...> - 2012-12-04 16:14:06
|
Hi, I just discovered your project and started to evaluate it if it fits my needs. When I try to run the above I get some exceptions. editor.py, line 7, in <module> from PythonReports.editor.application import EditorApplication application.py, line 8, in <module> from mainform import EditorForm mainform.py, line 15, in <module> from elementstree import ElementsTree elementstree.py, line 9, in <module> from elements.section import Section section.py, line 14, in <module> from design import DesignPlace design.py, line 19, in <module> from element import Element element.py, line 8, in <module> from propertiesgrid import PropertiesListener propertiesgrid.py, line 208, in <module> class PropertiesGrid(wxpg.PropertyGrid): propertiesgrid.py, line 270, in PropertiesGrid NONE_COLOR = wx.Color(160, 255, 160) Commenting lines 270 and 271 in PropertiesGrid and changing lines 278 to this: if prop_type is None: #_cell.SetBgCol(self.NONE_COLOR) _cell.SetBgCol(wx.Color(160, 255, 160)) elif prop_type is datatypes.REQUIRED: #_cell.SetBgCol(self.REQUIRED_COLOR) _cell.SetBgCol(wx.Color(255, 192, 208)) At this point the TemplateEditor starts. Clicking on new Template I get this exception: editor.py, line 15, in <module> main() editor.py, line 11, in main _app.MainLoop() _core.py, line 8660, in MainLoop wx.PyApp.MainLoop(self) _core.py, line 7952, in MainLoop return _core_.PyApp_MainLoop(*args, **kwargs) auibar.py, line 3704, in OnLeftUp self.ProcessEvent(e) _core.py, line 4154, in ProcessEvent return _core_.EvtHandler_ProcessEvent(*args, **kwargs) toolbar.py, line 39, in OnNew self.app.report_new() application.py, line 113, in report_new self.focus_set(self.frame.workspace.get_report()) application.py, line 45, in focus_set listener.highlight(True) container.py, line 130, in highlight self.GetButton().highlight(need_hl) container.py, line 81, in highlight self.SetState(wxpltbns.PLATE_PRESSED) I stop at this point as I might be on a wx version you don't yet support. I am on Python 2.7.2 on Windows 7 and run wxPython 2.9.4 in that version platebtn does not have a method called SetState, it only has GetState as far as I can see. Is 2.9.4 supposed to be supported? Werner P.S. You don't want to move the support list to e.g. Google Groups as sourceforge is really slow:-( |
From: Werner F. B. <wer...@fr...> - 2012-12-04 16:41:47
|
Hi, Doing a bit more research I see that currently platebtn._SetState exists, so I changed it here. I will use the project to report from a Firebird SQL database, preferably via SQLAlchemy. So, what is the best way to provide the "data" to the editor.py when I like to create a template? Werner |
From: alexander s. <al...@go...> - 2012-12-04 19:20:40
|
On 04.12.2012 18:15, Werner F. Bruhin wrote: > > When I try to run the above I get some exceptions. What's "the above" and which exception do you get? I see some portion of traceback, but no exception. I see no error in propertiesgrid.py around line 270, either. > container.py, line 81, in highlight > self.SetState(wxpltbns.PLATE_PRESSED) > > I stop at this point as I might be on a wx version you don't yet support. > > I am on Python 2.7.2 on Windows 7 and run wxPython 2.9.4 in that version > platebtn does not have a method called SetState, it only has GetState as > far as I can see. Looks like it was lost in upstream merge: http://svn.wxwidgets.org/viewvc/wx/wxPython/tags/wxPy-2.9.4.0/wxPython/wx/lib/platebtn.py?r1=67853&r2=69231 Perhaps you should make it known to wxPython team. > Is 2.9.4 supposed to be supported? I doubt so. The time I am able to spend on PythonReports is too scanty to fiddle with non-stable versions of used libraries. > You don't want to move the support list to e.g. Google Groups as > sourceforge is really slow:-( Well, as long as support is limited to me alone, slow mail barely is a shortcoming because I'm quite slow myself. I have never used Google Groups, and I am not motivated enough to start learning them. On 04.12.2012 18:42, Werner F. Bruhin wrote: > > I will use the project to report from a Firebird SQL database, > preferably via SQLAlchemy. Please feel free to do so. PythonReports are intentionaly unaware of data sources; I am sure that data extraction and output formatting are very different tasks, and must be separated for modularity. Instead, PythonReports accept both objects (probably composed by an ORM layer) and Python dictionaries as data items. That should ease composition of input data from any source. > So, what is the best way to provide the "data" to the editor.py when I > like to create a template? I make a module with a function returning data, and then in report designer shell I paste two lines: >>> from mymodule import myfunction >>> data = myfunction() Please be aware that although report builder and pdf output have been in production use for half a decade now, the template designers - both Tk-based and wx-based - barely got any real use. Cheers, alex. |