打印格式是当您想要打印或通过电子邮件发送交易时生成的布局。
此功能适用于 ERPNext 中的所有交易,例如所有销售和采购交易、人力资源文档等。
在 ERPNext 中,有三种类型的打印格式,即标准打印格式、自定义打印格式和 HTML 打印格式。
标准打印格式
ERPNext 中的每个可打印文档类型都有其自己的标准打印格式,该格式由 Frappe 框架生成。标准打印格式中的字段位置取决于文档中相应字段的位置。
对标准打印格式所做的任何更改都必须通过自定义表单来完成。您还可以查看在打印格式中添加字段。
自定义打印格式
您还可以使用名为打印格式生成器的工具创建自己的自定义打印格式。此工具将帮助您通过拖放字段,按照您的偏好格式制作简单的自定义打印格式。
为了创建自定义打印格式,ERPNext 提供了几种预定义的模板,分为三种样式:现代、单色和经典。
要创建您的版本,请从以下位置打开现有模板:
构建 > 视图 > 打印格式
打印设置
要编辑/更新您的打印和 PDF 设置,请前往:
设置 > 打印设置
HTML 打印格式
要创建 HTML 打印格式,您需要具备一些 HTML、CSS 和 Python 知识。以下是一个如何设计具有非常特定格式的打印格式的示例。
打印格式在服务器端使用 Jinja 模板语言提供。所有表单都可以访问 doc 对象,该对象包含有关正在格式化的文档的信息。您还可以通过 frappe 模块访问常用工具。在创建基于 HTML 的打印格式时,如需支持,您可以参考 ERPNext 社区论坛,或为您的查询发布新帖子。
对于样式,提供了 Bootstrap CSS 框架,您可以享受完整的类范围。
参考
- Jinja 模板语言:参考
- Bootstrap CSS 框架
示例
<h3>{{ doc.select_print_heading or "Invoice" }}</h3>
<div class="row">
<div class="col-md-3 text-right">Customer Name</div>
<div class="col-md-9">{{ doc.customer_name }}</div>
</div>
<div class="row">
<div class="col-md-3 text-right">Date</div>
<div class="col-md-9">{{ doc.get_formatted("invoice_date") }}</div>
</div>
{%- for row in doc.items -%}
{%- endfor -%}
<table class="table table-bordered">
<tbody>
<tr>
<th>Sr</th>
<th>Item Name</th>
<th>Description</th>
<th class="text-right">Qty</th>
<th class="text-right">Rate</th>
<th class="text-right">Amount</th>
</tr><tr>
<td style="width: 3%;">{{ row.idx }}</td>
<td style="width: 20%;">
{{ row.item_name }}
{% if row.item_code != row.item_name -%}
<br>Item Code: {{ row.item_code}}
{%- endif %}
</td>
<td style="width: 37%;">
<div style="border: 0px;">{{ row.description }}</div>
</td>
<td style="width: 10%; text-align: right;">
{{ row.qty }} {{ row.uom or row.stock_uom }}
</td>
<td style="width: 15%; text-align: right;">
{{ row.get_formatted("rate", doc) }}
</td>
<td style="width: 15%; text-align: right;">
{{ row.get_formatted("amount", doc) }}
</td>
</tr></tbody>
</table>
备注
- 要获取日期和货币格式化值,请使用
doc.get_formatted("fieldname") - 对于可翻译字符串,请使用
{{ _("This string is translated") }}