首页 / 教程文档 / 报表开发

报表开发

通过报表设计器制作业务单据打印模板与统计报表,模板化输出、一处维护全局生效。

一、报表设计器

入口:系统管理 → 报表设计。在此维护所有打印模板,支持新建、编辑、复制、删除与按模块筛选。

模块标识业务单据
StockIn商品入库
StockOut商品出库
Sales销售单
TempSales临时销售
Return销售退货
Comoditiles商品档案
UD自定义记录

二、创建模板

  1. 进入「报表设计」,点击新增模板
  2. 填写模板名称并选择所属模块(决定该模板应用于哪类单据)。
  3. 在编辑区粘贴模板内容,或通过上传文件导入 HTML 模板。
  4. 保存后,对应单据的打印页即自动使用该模板。

三、模板语法

模板为 HTML 片段,其中以双花括号包裹的内容会被运行时替换。

1. 变量替换

{{CompanyName}}  <!-- 公司名称 -->
{{Address}}      <!-- 公司地址 -->
{{stockId}}      <!-- 单据编号 -->
{{EditUserName}} <!-- 经办人 -->
{{PrintMan}}     <!-- 打印人 -->

2. 格式化管道

在变量后以 | 分隔可指定输出格式:

{{PrintDate|yyyy-MM-dd}}      <!-- 日期按年月日输出 -->
{{PrintDate|yyyy-MM-dd HH:mm}} <!-- 日期时间 -->
{{Prices|0.00}}               <!-- 金额保留两位小数 -->
{{TotalNum|0}}                <!-- 数量取整 -->

3. 明细循环

单据明细行使用 {{#each items}}{{/each}} 包裹,循环体内使用明细字段:

<table>
  <tr><th>商品名称</th><th>规格</th><th>单位</th><th>数量</th><th>金额</th></tr>
  {{#each items}}
  <tr>
    <td>{{ComoditiesName}}</td>
    <td>{{ModelId}}</td>
    <td>{{UnitId}}</td>
    <td>{{TotalNum|0}}</td>
    <td>{{SuppliMoney|0.00}}</td>
  </tr>
  {{/each}}
</table>

四、默认模板示例

新建模板时若未填写内容,系统会自动生成默认模板。默认模板包含公司抬头、单号、打印日期与商品明细表,可在此基础上修改:

<div style="text-align:center;margin-bottom:14px;">
  <h1 style="font-size:22px;margin:0;">{{CompanyName}}</h1>
  <h2 style="font-size:16px;margin:6px 0;">单据打印</h2>
</div>
<table>
  <tr>
    <td>单号:{{stockId}}</td>
    <td style="text-align:right;">打印日期:{{PrintDate|yyyy-MM-dd}}</td>
  </tr>
</table>
<!-- 明细循环见上文 -->

五、模板管理

操作说明
编辑修改名称、模块与模板内容,保存后立即生效
复制以「(副本)」后缀复制为新模板,便于基于现有模板二次开发
删除删除模板后,对应单据将无法使用该模板打印
同一模块可维护多个模板,打印时按业务需要选择;「报表设计」仅超级管理员可维护。

六、统计报表

入口:报表中心 → 统计报表。该模块提供销售、库存、财务等经营数据的统计汇总,辅助经营决策。统计结果可导出/打印输出。

七、自定义记录报表

为自定义记录(模块标识 UD)创建模板时,循环体中可使用该记录类型已设计的字段名作为变量,实现个性化表单打印。

小贴士:模板内支持内联样式(style 属性),建议保持字体 12px 左右以保证打印清晰;纸张方向与边距可在浏览器打印设置中调整。