Odoo中文社区可以通过以下三个域名访问:shine-it.net , odoocn.org,odoo.net.cn

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

OpenERP Relatorio ODT 报表模块



  • 我已经实现了完全的 Relatorio OpenOffice 报表支持,请参考下文进行安装和使用:

    [url=alwaysrev.spaces.live.com/blog/cns!218708052A8413FB!201.entry]http://alwaysrev.spaces.live.com ... 52A8413FB!201.entry[/url]

    [[i] 本帖最后由 oldrev 于 2009-9-6 11:13 编辑 [/i]]



  • 我已经实现了完全的 Relatorio OpenOffice 报表支持,请参考下文进行安装和使用:

    [url=alwaysrev.spaces.live.com/blog/cns!218708052A8413FB!201.entry]http://alwaysrev.spaces.live.com ... 52A8413FB!201.entry[/url]

    [[i] 本帖最后由 oldrev 于 2009-9-6 11:13 编辑 [/i]]


  • 管理员

    兄弟辛苦了,这个绝对是要捧场的



  • 支持。。。
    我在windows环境下测试,python2.5
    能出来结果,但debug时后台报错:

    no module name yaml

    安装yaml后,报另一个错:

    D:Python25libsite-packagesrelatorio-0.5.1-py2.5.eggrelatoriotemplates__init__.py:31: UserWarning: Unable to load plugin 'chart', you will not be able to use it
    "to use it" % name)
    Original traceback

    Traceback (most recent call last):
    File "d:python25libsite-packagesrelatorio-0.5.1-py2.5.eggrelatoriotemplates__init__.py", line 28, in <module>
    import('relatorio.templates.%s' % name)
    File "d:python25libsite-packagesrelatorio-0.5.1-py2.5.eggrelatoriotemplateschart.py", line 33, in <module>
    import cairo
    File "D:Python25Libsite-packagescairo__init__.py", line 1, in <module>
    from _cairo import *
    ImportError: DLL load failed: �Ҳ���ָ����ģ�顣



  • setLang、formatLang等函数好像不能用
    user、company变量也不能用



    1. 昨天更新了一下,原系统支持的变量 relatorio 引擎也支持

    2. 那个警告是因为你没有安装 pycha,relatorio 用它来产生图表



  • 测试情况还不错
    但是同时打印多条记录的话,不会自动每条记录打印一页,而是顺序打印
    不知有何好办法



  • 我在安装relatorio_report的时候出现了错误
    [code]

    Environment Information :
    System : Windows-XP-5.1.2600-SP2
    OS Name : nt
    Operating System Release : XP
    Operating System Version : 5.1.2600
    Operating System Architecture : 32bit
    Operating System Locale : zh_CN.cp936
    Python Version : 2.5.2
    OpenERP-Client Version : 5.0.3
    Last revision No. & ID :Bazaar Package not Found !Traceback (most recent call last):
    File "netsvc.pyo", line 242, in dispatch
    File "netsvc.pyo", line 73, in call
    File "serviceweb_services.pyo", line 639, in execute
    File "serviceweb_services.pyo", line 619, in execute
    File "wizard__init
    _.pyo", line 178, in execute
    File "wizard__init__.pyo", line 74, in execute_cr
    File "d:OpenERP AllInOneServeraddonsbasemodulewizardwizard_module_upgrade.py", line 92, in upgrade_module
    File "pooler.pyo", line 62, in restart_pool
    File "pooler.pyo", line 40, in get_db_and_pool
    File "addons__init
    _.pyo", line 728, in load_modules
    File "addons__init__.pyo", line 578, in load_module_graph
    File "addons__init__.pyo", line 400, in register_class
    File "d:Program FilesOpenERP AllInOneServeraddonsrelatorio_report__init__.py", line 3, in <module>
    ImportError: No module named relatorio.templates.opendocument

    [/code]

    不知道应该怎么安装relatorio,
    我的系统是windowsXP,安装openerp_allinone_5.0.3。我自己安装了Python2.5不知是否对其有影响。
    我还想知道openerp需要使用Python吗?是用它自带的还是我安装的呢?
    谢谢:)



  • 不支持 all in one



  • 我成功安装了partner_report_odt和relatorio_report,但是进入Partners后每当按“ODTReport”生成报表的时候,总是会出现这个错误[code]
    Environment Information :
    System : Windows-XP-5.1.2600-SP2
    OS Name : nt
    Operating System Release : XP
    Operating System Version : 5.1.2600
    Operating System Architecture : 32bit
    Operating System Locale : zh_CN.cp936
    Python Version : 2.5.2
    OpenERP-Client Version : 5.0.3
    Last revision No. & ID :Bazaar Package not Found !Traceback (most recent call last):
    File "serviceweb_services.pyo", line 687, in go
    File "reportreport_sxw.pyo", line 364, in create
    File "reportreport_sxw.pyo", line 367, in create_source_odt
    File "d:OpenERP AllInOneServeraddonsrelatorio_report__init__.py", line 20, in create_single_odt
    File "d:OpenERP AllInOneServeraddonsrelatoriotemplatesopendocument.py", line 174, in init
    File "d:OpenERP AllInOneServeraddonsgenshitemplatebase.py", line 377, in init
    File "d:OpenERP AllInOneServeraddonsrelatoriotemplatesopendocument.py", line 181, in _parse
    File "zipfile.pyo", line 339, in init
    IOError: [Errno 2] No such file or directory: u'd:\OpenERP AllInOne\Server\bin\addons\partner_report_odt\report\partner.odt'
    [/code]
    我的运行环境是Windows XP,OpenERP版本为5.0.3。
    请问是什么问题呢?

    [[i] 本帖最后由 vincent@mrsf 于 2009-9-10 09:02 编辑 [/i]]


  • 管理员

    请仔细看你楼上的帖子,oldrev 上面说了:
    [quote]不支持 all in one[/quote]

    这是一个简明的说法,因为要使用oldrev的这个报表模块,要有relatorio ,genshi 等 Python模块的支持,allinone的python环境中没有这些模块,要手工添加这些模块比较麻烦

    另外,按照以上的说明,在allinone下即使安装成功也没有用,何况,你并没有安装成功,以下的错误信息应该能看得懂:(提示:检查压缩包路径中有没有这个partner.odt文件)
    [quote]IOError: [Errno 2] No such file or directory: u'd:\OpenERP AllInOne\Server\bin\addons\partner_report_odt\report\partner.odt'[/quote]

    [[i] 本帖最后由 digitalsatori 于 2009-9-10 09:42 编辑 [/i]]



  • 我成功地在All InOne上使用了ODT Report,
    确实比较麻烦,
    需要的包很多,
    每个都需要手工添加。

    还有一个问题就是,怎么在Report上添加公司的Logo?

    [[i] 本帖最后由 vincent@mrsf 于 2009-9-10 09:54 编辑 [/i]]



  • 一直想知道怎么安装不是all_in_one的openerp版本:Q



  • 这个报表速度快多了,也没有中文的问题,很好

    但__init__里的路径写死了,换了环境有可能报错:
    sxw_path = os.path.realpath("bin/addons/" + report_xml.report_sxw)

    我的建议是引入配置文件,改成如下:
    from tools.config import config

    adp = os.path.abspath(config['addons_path'])
    sxw_path = os.path.normcase(os.path.join(adp,report_xml.report_sxw))

    另外我发现这个模板不仅仅支持字段指令,也支持${o.name}这种形式
    在某些循环(例如动态增加表格列的循环)里后者表现更好



  • [quote]原帖由 [i]iplan[/i] 于 2009-9-10 10:13 发表 [url=www.shine-it.net/redirect.php?goto=findpost&pid=2706&ptid=618][img]www.shine-it.net/images/common/back.gif[/img][/url]
    这个报表速度快多了,也没有中文的问题,很好

    但__init__里的路径写死了,换了环境有可能报错:
    sxw_path = os.path.realpath("bin/addons/" + report_xml.report_sxw)

    我的建议是引入配置文件,改成如下:
    ... [/quote]

    1. 这行代码是实际上是从官方的 ODT 报表代码里抄的,应该是问题不大。这个模块的局限在于它依赖 create_single_odt 这个函数,目前 trunk 里的代码已经不使用这个函数了,因此报表模块只支持 5.0.3。

    2. relatorio 的文本模板是 Genshi ([url=genshi.edgewall.org/]http://genshi.edgewall.org/[/url]),你可以参考它的语法文档。Relatorio 比内置 ODT 报表出色的地方在于它支持 OpenOffice Calc 电子表格和 OpenOffice Impress 幻灯片的文档。

    [[i] 本帖最后由 oldrev 于 2009-9-10 16:24 编辑 [/i]]



  • [quote]原帖由 [i]vincent@mrsf[/i] 于 2009-9-10 09:51 发表 [url=www.shine-it.net/redirect.php?goto=findpost&pid=2704&ptid=618][img]www.shine-it.net/images/common/back.gif[/img][/url]
    我成功地在All InOne上使用了ODT Report,
    确实比较麻烦,
    需要的包很多,
    每个都需要手工添加。

    还有一个问题就是,怎么在Report上添加公司的Logo? [/quote]

    静态的方法:改一下模块里的 odt
    动态的方法:我还没试过把图片字段插到报表里

    为了方便使用 all in one 的朋友,有空我会上传个包含 relatorio 相关依赖的模块。



  • 可能还需要一个修改过的 base_report_designer 来上传下载报表模板



  • 我之前看price_list的report的时候,他生成的PDF文件里面的数据是根据pricelist.py读出来的。
    我想问下这个relatorio是怎么读出数据的呢?



  • 我之前看price_list的report的时候,他生成的PDF文件里面的数据是根据pricelist.py读出来的。
    我想问下这个relatorio是怎么读出数据的呢?



  • 报表跟原来的没什么区别,只是语法不同而已,一样需要代码来处理数据


登录后回复
 

与 Odoo 中文社区 的连接断开,我们正在尝试重连,请耐心等待