首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >openerp 7:报告未显示

openerp 7:报告未显示
EN

Stack Overflow用户
提问于 2013-03-09 19:48:23
回答 2查看 1.9K关注 0票数 0

我通过界面创建了一个报告记录,但它没有显示在打印下拉菜单中。

在settings -> actions -> reports中,我添加了一条新记录:

代码语言:javascript
复制
Name: My Test

Service Name: my_po_reports

Object: purchase.order

Report Type: pdf

Report file: purchase/report/order.rml (i'm reusing an existing one just to test)

但是当我进入购买订单时,我的测试没有显示出来!

我也在also中尝试了同样的方法,但没有任何结果:

在settings -> actions -> aeroo reports -> reports中,我添加了一条新记录:

代码语言:javascript
复制
Name: My Test

Service Name: my_po_report

Object: purchase.order

Template type: odt Output type: odt

Template source: file Template path: myfolder/reports/template.odt

我遗漏了什么?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-10 23:36:26

编辑:将我以前的解决方案替换为以下解决方案,因为这不需要卸载和重新安装:

代码语言:javascript
复制
<record id="report_mypo_test" model="ir.actions.report.xml">
    <field name="name">Stock Moves Report</field>
    <field name="type">ir.actions.report.xml</field>
    <field name="model">stock.move</field>
    <field name="report_name">mypo.test</field>
    <field name="report_type">aeroo</field>
    <field name="in_format">oo-odt</field>
    <field name="out_format" model="report.mimetypes" ref="report_aeroo.report_mimetypes_odt_odt"/>
    <field name="parser_loc">myaddon/reports/my_parser.py</field>
    <field name="report_rml">myaddon/reports/template.odt</field>
    <field name="parser_state">loc</field>
    <field name="tml_source">file</field>
</record>

<report auto="False" menu="True" id="report_mypo_test" model="stock.move" 
            name="mypo.test" rml="myaddon/reports/template.odt" string="Stock Moves Report"/>

my_parser.py:

代码语言:javascript
复制
import time
from tools.translate import _

from report import report_sxw
from report.report_sxw import rml_parse

from osv import fields, osv
import netsvc

class Parser(report_sxw.rml_parse):
    def __init__(self, cr, uid, name, context):
        super(Parser, self).__init__(cr, uid, name, context)

        ids =  self.pool.get('stock.move').search(self.cr, self.uid, [], context=context)
        self.stockmoves = self.pool.get('stock.move').browse(self.cr, self.uid, ids)

        self.localcontext.update({
            'stockmoves': self.stockmoves
        })

归功于万能的上帝,以及许多在互联网上贡献自己作品的人。

票数 0
EN

Stack Overflow用户

发布于 2013-03-11 13:15:08

为rml报告定义操作时。您还必须在action binding中为此报告定义一条记录。

代码语言:javascript
复制
Settings ==> Actions ===> Action Bindings

名称:采购订单(要显示的报表名称)

模型名称: purchase.order (这里是您的模型)

限定符: client_print_multi

操作引用: ir.actions.report.xml,360 (此处是您的报表xml )

希望这对你有帮助

致以敬意,

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15310314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档