当前位置: 首页 > wzjs >正文

坑梓网站建设方案雄安建设集团 网站

坑梓网站建设方案,雄安建设集团 网站,网站没有收录从哪开始做优化,wordpress shortcode 插件如何在 Odoo 18 中创建 PDF 报告 Qweb 是 Odoo 强大的模板引擎,旨在轻松将 XML 数据转换为 HTML 文档。其功能特性包括基于属性的自定义、条件逻辑、动态内容插入及多样化的报告模板选项。这种多功能性使 Qweb 成为制作个性化、视觉吸引力强的报告、电子邮件和文档…

如何在 Odoo 18 中创建 PDF 报告

Qweb 是 Odoo 强大的模板引擎,旨在轻松将 XML 数据转换为 HTML 文档。其功能特性包括基于属性的自定义、条件逻辑、动态内容插入及多样化的报告模板选项。这种多功能性使 Qweb 成为制作个性化、视觉吸引力强的报告、电子邮件和文档的理想工具。从财务报表到发票再到复杂业务报告,Qweb 简化了创建流程,确保每份输出既清晰又美观。
在这里插入图片描述

本指南将逐步演示如何在 Odoo 18 中为 “hr.expense” 模型创建自定义 PDF 报告。该过程包括构建 Qweb 模板及配置相应的报告动作,使用户能够直接从 Odoo 界面生成费用明细的 PDF 文件。

分步指南:在 Odoo 18 中创建自定义 PDF 报告

1. 模块结构

模块目录结构如下(以 expense_report_odoo 模块为例):

expense_report_odoo/
├── __manifest__.py
├── models/
│   └── ...
├── report/
│   ├── expense_reports.xml
│   └── expense_report_templates.xml
└── views/└── ...

2. 创建报告动作(XML 文件)

在模块的 “report” 目录下,新建 XML 文件定义报告动作。命名为 expense_reports.xml。该文件将绑定报告与模型,示例如下:

<?xml version="1.0" encoding="UTF-8"?>
<odoo><!-- 费用报告功能 --><record id="action_expense_request_report" model="ir.actions.report"><field name="name">费用报告</field><field name="model">hr.expense</field><field name="report_type">qweb-pdf</field><field name="report_name">expense_report_odoo.report_expense_report_details</field><field name="report_file">expense_report_odoo.report_expense_report_details</field><field name="binding_model_id" ref="hr_expense.model_hr_expense"/><field name="binding_type">report</field></record>
</odoo>

关键字段说明

  1. 名称 (name):报告操作的名称,用于系统内识别(示例:“费用报告”)。
  2. 模型 (model):关联的模型(此处为 “hr.expense”,报告将从中获取数据)。
  3. 报告类型 (report_type):报告类型,可选:
    • qweb-pdf:生成 PDF 报告(本示例使用)。
    • qweb-html:生成 HTML 报告。
    • qweb-text:生成纯文本报告。
  4. 报告名称 (report_name):报告模板的内部名称,格式为模块名.模板ID(示例:expense_report_odoo.report_expense_report_details)。
  5. 报告文件 (report_file):QWeb 模板文件的名称,需与模板 ID 一致。
  6. 绑定模型 ID (binding_model_id):通过 ref 属性关联具体模型,引用模型的 ID,如 hr_expense.model_hr_expense 表示人力资源费用模型。
  7. 绑定类型 (binding_type):绑定类型,report 表示直接绑定到模型记录。

效果

报告操作将在关联模型的 “打印” 菜单中生成新选项。例如,hr.expense 模型的 “打印” 菜单将新增 “费用报告” 选项。
在这里插入图片描述

3. 创建 Qweb 模板(XML 文件)

report 目录下新建 expense_report_templates.xml 定义 PDF 的结构和布局:

<?xml version="1.0" encoding="UTF-8" ?>
<odoo><!-- 费用报告模版 --><template id="report_expense_report_details"><t t-call="web.html_container"><t t-foreach="docs" t-as="o"><t t-call="web.external_layout"><div class="page"><div class="oe_structure"/><h2 style="text-align: center;">费用报告</h2><br/><p>员工姓名:<span t-field="o.employee_id.name"/></p></div></t></t></t></template>
</odoo>

模板解析

  • template_id:需与报告操作中 report_name 的后缀一致(示例:report_expense_report_details)。
  • t-foreach 循环:遍历模型记录(docs 为当前上下文中的记录集),t-as="o" 将每条记录赋值给变量 o
  • t-call=“web.external_layout”:引用 Odoo 默认的外部布局(包含页眉、页脚等样式)。
  • 字段渲染:使用 t-field 标签动态插入数据(如 o.employee_id.name 表示员工姓名)。

注册文件

注:在 __manifest__.py 中注册文件,确保模块清单文件中包含:

'data': ['report/expense_reports.xml','report/expense_report_templates.xml',
],

此模板通过循环 docs(当前记录集)生成每页报告,调用标准布局 web.external_layout,并插入员工姓名字段。
在这里插入图片描述

总结

通过 Qweb 在 Odoo 18 中创建 PDF 报告的核心是结合报告操作(ir.actions.report)和 QWeb 模板。报告操作定义数据来源和输出类型,QWeb 模板负责内容布局和动态数据渲染。这种方式灵活且易于扩展,可根据业务需求定制复杂报告,提升数据展示的规范性和可读性。

http://www.dtcms.com/wzjs/823384.html

相关文章:

  • 建设专业网站排名关键词搜索点击软件
  • 推荐网站建设服务百事可乐网站建设优缺点
  • wordpress 建站模板营业执照年审怎么年审
  • 您身边的网站建设专家a963设计网作品
  • 行业门户网站模板下载河北省住房与建设厅网站
  • 教育平台网站玉树营销网站建设
  • 华为云速建站wordpress 500错误
  • 网站设计的五大要素白银市住房与建设局网站
  • 湖南省住房和城乡建设厅官方网站普陀区网站开发
  • 微网站建设及微信推广方案开发流程和步骤
  • 大厂县住房和城乡建设局网站定制企业app开发
  • 九江建站公司计算机网站开发是那个语言
  • 潍坊建网站的网站设计小技巧
  • 外贸都用什么网站汉化wordpress 购物
  • 好看的商城网站wordpress 登陆跳转
  • 大同网站建设费用河南旅游网页设计
  • 网站建设培训班多少钱搜索引擎营销是什么意思
  • 网站开发公司会在最后面加上公司网站备案幕布照片
  • 局域网做网站 内网穿透网站建设文化咨询
  • 加强经管学院网站建设wordpress导航栏图标
  • 可做ppt的长篇英文阅读网站台州网站建设多少钱
  • 滕州网站建设优化申请绿色网站
  • 网站制作自学百度云网站视频怎么做的好
  • 江西中恒建设集团网站长沙关键词优化方法
  • 建设网站要什么手续可以做外包的网站
  • 泉州高端模板建站凡科快图怎么制作图片
  • 医院网站建设情况说明书传奇网站免费空间
  • 网站ipv6建设wordpress导航条的登入按钮
  • 网站建设费的摊销期十年经验网站开发企业
  • 免费网站优化怎么做北京高端网站建设价格