标题如何说明我正在尝试使用 openerp v7 创建自定义报告。
我已经阅读了有关该主题的所有文档,并且使用 base_report_designer 模块和 libreoffice 插件,我可以使用插件的“发送到服务器”命令注册我的自定义报告。
问题是,我不想这样做来注册我的报告。我想直接从代码中注册它(将它存储在服务器上),这样当我更新包含报告的模块时,报告会自动注册,而不必通过使用插件和其他东西的所有麻烦. 因为据我了解,通过 LO 插件注册,每次我将我的模块安装到另一个数据库中时,我都必须这样做。我也想我以后会改用直接写rml文件,不使用Writer模板。
为了让您获得更多信息,我为报告创建了一个解析器,并在文件末尾使用以下行声明它:
report_sxw.report_sxw('report.sale.collection_docket', 'sale.order', 'addons/module/report/collection_docket.rml', parser=order, header="external")
我已经在 report.xml 文件中声明了报告,带有以下标记:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<report auto="False" id="collection_docket"
model="sale.order" name="sale.collection_docket"
rml="module/report/collection_docket.rml"
string="Collection Docket" />
</data>
</openerp>
在openerp .py 文件
中调用了 report.xml , init .py 导入了所有内容。
但是我从来没有在设置/技术/操作/报告中看到我的报告,所以我不能调用它。
到目前为止我还不太明白,它是如何在内置的 openerp 插件中工作的?他们如何让他们注册?我查看了许多示例(例如在插件/库存中),我无法阻止我的代码有所不同。那么为什么我不能在我的自定义模块中得到相同的结果呢?
感谢您的帮助,由于缺乏官方文档,或多或少难以处理报告(odoo网站上的文档不完整,并且针对v6.1)。