头图

一、简介

Excel模板是文件模板的其中一种应用,其核心功能在于预设格式、结构及特定变量,并能够根据实际需求动态地填充和更新数据。

具体来说,Excel模板是一种预先定义好的电子表格结构,其中巧妙地嵌入了可变元素或者占位符,这些元素可以是单元格、公式、图表等任何可能需要用户自定义或定期更新的数据区域。使用者在应用模板时,只需将变量替换为实时数据,即可一键生成符合预期格式的报告、统计表或是数据分析结果。

 title=

二、交互流程

创建一个Excel模板,配置其模板名称及存储路径。

 title=

添加需要在模板中插入的变量,支持现有所有数据类型。

 title=

将生成好的文件数据复制其变量代码。

 title=

在自己的Excel中对数据变量需要展示的位置进行排版,确认后上传即可。

 title=

三、模板变量代码

模板变量代码本质上是在变量的基础上提供模板样式方法,不同的样式方法可以将相同的变量数据展示出不同的渲染效果。

即在最终转换出的变量代码中格式一般为{{name.value.ToString}}三段式。代码以两个花括号(“{}”)包含。

  1. 变量名,第一段,为取值变量的名称,若为复杂类型则为a.b.c的连续取值;
  2. 属性值,第二段,为变量最终需要输出的值,可以调用只读函数或者读取属性;
  3. 样式方法,第三段,为对应输出值的展示样式,不同的值类型有不同的样式方法;

(一)文本类样式

类型标题函数名备注模板代码
文本类展示单行文本ToString将对应输入以单行文本形式展示{{a.value.ToString}}
文本类展示多行文本ToLine依据输入中的回车转换为多行文本展示{{a.value.ToLine}}
文本类展示图片ToPicture将对应输入转换为图片展示;{{a.value.ToPicture}}
文本类展示超链接ToLink 将对应输入转换为超链接展示;{{a.value.ToLink}}
文本类展示下拉框ToSelect 将对应输入转换为下拉框展示;{{a.value.ToSelect}}
文本类等宽换行ToEquallyLine(int) 将对应输入按照指定长度切换行 默认不传,不换行{{a.value.ToEquallyLine(int) }}
文本类左截断指定长度ToTrimLeft(int) 将对应输入截断指定长度展示 默认不传,不截断{{a.value.ToTrimLeft(int) }}
文本类右截断指定长度ToTrimRight(int)将对应输入截断指定长度展示 默认不传,不截断{{a.value.ToTrimRight(int) }}

(二)数值类样式

类型标题函数名备注模板代码
数值类展示数值ToNum将输入的数值直接展示{{a.value.ToNum }}
数值类保留指定小数位ToRound(int)将输入的数值保留指定位数(四舍五入) 默认不传代表都保留{{a.value.ToRound(int) }}
数值类截断指定位数ToTruncate(int)将输入的数值保留指定位数(截断) 默认不传代表不截断{{a.value.ToTruncate(int) }}
数值类取绝对值ToAbs将输入的数值取绝对值{{a.value.ToAbs }}

(三)日期时间类样式

类型标题函数名备注模板代码
日期时间类展示日期时间格式ToDatetime获取年月日时分秒YYMMDDthhmmss形式展示{{a.value.ToDatetime }}
日期时间类展示日期格式ToDate获取年月日YYMMDD形式展示;{{a.value.ToDate }}
日期时间类展示时间格式ToTime获取时分秒thhmmss形式展示; {{a.value.ToTime }}

(四)多值类样式(复杂类型)

类型标题函数名备注模板代码
列表展示多行数据ToDataSet获取对应输入以数据集合展示(多行数据、字典不区分横向/纵向,多行多列展示){% for each in data.value.ToDataSet %} {{each.name}}{{each.age}}{% endfor %}
列表横向展示列表ToList获取数据集横向展示(对应多格语句) (默认获取文本值展示){% for each in data.value.ToList %}  {{each}} {% endfor %}
列表纵向展示列表ToList获取数据集纵向展示(对应多格语句)  (默认获取文本值展示){% for each in data.value.ToList %}  {{each}} {% endfor %}
列表横向展示图片列表ToListPicture获取图片数据集横向展示{{a.value.ToListPicture}}
列表纵向展示图片列表ToListColumnPicture获取图片数据集纵向展示{{a.value.ToListColumnPicture}}
列表展示列表首个数据ToFirst获取对应输入集合中第一个对象展示;(默认获取文本值展示){{a.value.ToFirst}}
列表展示列表首张图片ToFirstPicture获取对应输入集合中第一个对象展示;(使用图片渲染){{a.value.ToFirstPicture}}
列表展示列表最大值ToMax获取对应输入集合最大值{{a.value.ToMax}}
列表展示列表最小值ToMin获取对应输入集合最小值;{{a.value.ToMin}}
列表展示列表平均值ToAvg获取对应输入集合平均值;{{a.value.ToAvg}}
列表展示列表总和ToSum获取对应输入集合之和{{a.value.ToSum}}
列表展示列表个数ToCount获取对应输入集合个数{{a.value.ToCount}}
字典横向展示字典ToDictionary获取字典数据横向展示{{a.value.ToDictionary.key}}
字典纵向展示字典ToDictionary获取字典数据纵向展示{{a.value.ToDictionary.key}}

在Excel模板中可以对变量代码进行布局调整,在此基础上开发者也可以通过手写变量代码直接构建模板,不一定要依赖从系统中复制。

四、使用效果

文件模板一般在打印文件模板/生成附件函数中配合使用,这俩者都是将已有的模板变量进行赋值,然后将文件模板输出。

 title=

此时的打印逻辑就是将实际传入的变量赋值替换掉模板中的变量代码占位,从而生成最终的模板成果。

且每一次打印都可以赋予不同的实际值。

五、使用场景示例

例如,在企业财务部门,可以通过设置包含固定表头、计算公式以及图形展示的Excel财务报表模板,每个季度末只需导入最新的财务数据,就能自动汇总生成当季的财务分析报告,大大减轻了人工整理和计算的工作量,同时也避免了潜在的人为错误。

六、注意事项

  1. 针对部分特定样式,如展示图片/超链接/多行数据,要注意检查对应的变量输出能否满足数据要求。
  2. 在进行模板代码布局排版时,要结合预计输出的数据预留足够的单元格大小,如多行文本/图片。

进一步了解极态云,体验产品?

 请访问 极态云官网 


极态云官方账号
1 声望0 粉丝

JIT 技术,为专业开发全面提速!极态云(jit)是一个基于全新软件开发理论(面向元素开发方法)、全新编程框架、全新开发工具、全新部署运行平台的企业级软件系统开发与运行平台,极大简化了应用系统的开发、部署...