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

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

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

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

OpenERP Relatorio ODT 报表模块



  • 那么他读出数据是在那个py文件里呢?
    很奇怪就是某些字段是我自己添加进object的他都能显示到odt上面,我之前看peice_list的report里面,他要先写出读出哪些字段,然后在根据sxw上的标签来显示某些字段的。


  • 管理员

    popkar77: 数据是不会存放在.py文件里的,数据都是存放在数据库中的。report是如何获取数据的呢?以sale模块下的report为例(addons/sale/report/):
    对于order这个报表,目录下有一个名为order.py的文件,
    [code]...
    class order(report_sxw.rml_parse):
    def init(self, cr, uid, name, context):
    super(order, self).init(cr, uid, name, context)
    self.localcontext.update({
    'time': time,
    })
    report_sxw.report_sxw('report.sale.order','sale.order','addons/sale/report/order.rml',parser=order)
    [/code]

    可以看到它定义了一个report_sxw.rml_parse的子类,名叫order。从其父类的名字就可以猜出这个类是用来解析rml文件的。在上例中实际上这个order类只多做了一件事情,就是把time模块作为键值放到localcontext里,这样你在报表中就可以使用time来显示时间了。
    另外一个就是report_sxw.report_sxw, 来看看这个类的定义:
    [code]class report_sxw(report_rml, preprocess.report):
    def init(self, name, table, rml=False, parser=rml_parse, header=True, store=False):
    [/code]
    由此可以知道,我们传递给它的'report.sale.order'是这个报表内部的名称,'sale.order'就是表对象了(其在addons/sale/sale.py中定义,通过ORM映射到数据库,所有的数据都是从这里来得),后面的参数也应该能看得懂了。



  • [quote]原帖由 [i]iplan[/i] 于 2009-9-8 11:21 发表 www.shine-it.net/redirect.php?goto=findpost&pid=2695&ptid=618
    测试情况还不错
    但是同时打印多条记录的话,不会自动每条记录打印一页,而是顺序打印
    不知有何好办法 [/quote]

    我也發生這種情形,麻煩請你告知一下是怎麼解決的
    先謝謝了..



  • 把HORNERP的这个报表部份考到OE6.0后要安装RELATORIO_REPORT模块,但HORNERP的RELATORIO_REPORT模块好象在6.0下不能使用,老革命同志能不能帮忙升级一下模块呀



  • 支持 6.0 的版本



  • 有谁测试成功了嘛~我在UBUNTU下没安装成功~不显示安装包~不知道是怎么回事



  • 能贴个调试信息么



  • 来迟了

    主贴已经失效 还是 被墙了?



  • [quote author=ccdos link=topic=618.msg9122#msg9122 date=1324823293]
    来迟了

    主贴已经失效 还是 被墙了?
    [/quote]

    主贴的不好使了,用 23楼的那个