跳转到主要内容

为继承comment.template的模型上的任何报告添加条件mako模板。

项目描述

Beta License: AGPL-3 OCA/reporting-engine Translate me on Weblate Try me on Runboat

添加一个新的混合类来定义打印在文档上的注释模板。注释模板可以像make模板一样定义,因此您可以使用链接模型中的变量。

注释有两个位置可供选择

  • 在文档行上方 (before_lines)

  • 在文档行下方 (after_lines)

模板是通用的,可以附加到任何模型,并基于模板中定义的一些域。您可以为每个模型和域定义一个默认模板,这些模板可以覆盖任何公司和合作伙伴。它有一个优先级字段(数字越小,优先级越高)

在现有报告中,如果您添加此行,将获取您创建的注释模板,如下所示

  • <span t-out=”o.get_comment_template(‘position’,company_id=o.company_id, partner_id=o.parnter_id )”/>(或无需任何参数)

此模块是以下模块的基模块

  • sale_comment_template

  • purchase_comment_template

  • account_comment_template

  • stock_picking_comment_template

目录

配置

转到 设置 > 技术 > 报告 > 注释模板 并开始设计您的注释模板。

此模块是以下模块的基模块

  • sale_comment_template

  • purchase_comment_template

  • invoice_comment_template

  • stock_picking_comment_template

使用

  1. 转到 设置 并启用开发者模式。

  2. 转到 设置 > 技术 > 报告 > 注释模板

  3. 创建一条新记录。

  4. 定义模板链接的公司或保留默认值以适用于所有公司。

  5. 定义模板链接的合作伙伴或保留默认值以适用于所有合作伙伴。

  6. 定义模板链接的模型和域。

  7. 定义模板将打印的位置

    • 在文档行上方

    • 在文档行下方

您应该至少有一个默认字段设置为默认的模板,如果您选择了一个合作伙伴,模板将不会作为默认模板选中。如果您创建了一个具有相同配置(模型、域名、位置)的新模板并将其设置为默认模板,则之前的模板将不会作为默认模板选中。

模板是一个HTML字段,它将被渲染得就像一个邮件模板一样,因此您可以使用类似于{{object}}、{{user}}、{{ctx}}的变量来添加动态内容。

从配置中更改与模型相关的报告,并添加如下语句

<t t-foreach=”o.comment_template_ids.filtered(lambda x: x.position == ‘before_lines’)” t-as=”comment_template_top”>
<div t-out=”o.render_comment(comment_template_top)” />

</t>

<t t-foreach=”o.comment_template_ids.filtered(lambda x: x.position == ‘after_lines’)” t-as=”comment_template_bottom”>
<div t-out=”o.render_comment(comment_template_bottom)” />

</t>

您应该始终使用t-if,因为如果没有找到模板,该方法将返回False。

如果您想使用Qweb模板或不同的上下文,可以像在mail.render.mixin中使用参数一样指定它

  • engine: “inline_template”,“qweb”或“qweb_view”,

  • add_context: 包含您自己的上下文的dict,

  • post_process: 在渲染结果上执行后处理

因此您可以使用它

<t t-foreach=”o.comment_template_ids.filtered(lambda x: x.position == ‘before_lines’)” t-as=”comment_template_top”>
<div t-out=”o.render_comment(comment_template_top, engine=’qweb’, add_context={my dict}, postprocess=True)” />

</t>

错误追踪器

错误在GitHub Issues上跟踪。如果遇到问题,请检查您的错误是否已经被报告。如果您是第一个发现它的,请帮助我们通过提供详细且受欢迎的反馈来解决这个问题。

请不要直接联系贡献者以寻求支持或技术问题的帮助。

鸣谢

作者

  • Camptocamp

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛使用。

此模块是OCA/reporting-engine项目在GitHub上的一部分。

欢迎您贡献。要了解如何贡献,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

本版本没有可用的源代码分发文件。请参阅有关生成分发存档的教程。

构建的分发

支持