1. 概述编辑
学习此文档前需要您先前往 Word 报告插件简介 了解并安装 Word 报告插件,并完成基础的权限分配操作,本文主要讲解 Word 报告基本的制作方法。
1.1 教学视频
1.2 制作流程
Word 报告整体制作流程如下图所示:
2. 服务器配置编辑
注:登录的用户名和密码跟决策平台配置的用户名和密码相同,且登录时「保持登录状态」暂不可用,也就是每次重新打开 Word 后,要重新登录。
1)远程连接服务器:
拥有远程设计权限的用户可将设计器切换到远程工作目录,选择「新建Word报表」,将会自动打开 WPS ,在 WPS 中新建一个空白 Word 文档,点击功能区域的「FineReport」,再点击「服务器配置」设置项,弹出的「FineReport地址」对话框,在对话框中会输入远程服务器地址,选择「登录」输入对应的用户名和密码即可。
2)本地使用:
登录数据决策平台选择「管理系统>word 插件管理」点击「打开WPS」新建一张空白 Word 文档,在 WPS 工具栏中选择「FineReport」,点击「服务器配置」,输入设计器内置服务器地址为:http://localhost:8075/webroot/decision,并输入账号密码即可,这样 Word 就已经连接到了报表服务器,后面可以跟设计器一起联动设计报告。
3. 新建普通报表编辑
创建报表时需要从 Word 端进行创建。点击「FineReport」加载项下的「保存」,在报表工程下新建一个普通报表。选择报表路径并给模板命名后,点击「确定」,弹出「上传成功」对话框,表示模板创建成功。这时回到设计器,点击报表管理面板的刷新按钮,就可以看到新建的普通报表了。双击进入模板,可以看到 A1~K60 已经合并为一片区域。这个区域是 Word 占用的,预览模板时,可以在这个区域展示 Word 的实时内容。
4. 准备资源编辑
Word 报告插件支持引用当前模板资源以及挂载到服务器中的资源。
首先需要在设计器端制作模板所需要的数据列、参数、表格、图表、组件等。准备完成后,需要先保存这张报表,然后在 Word 端刷新即可在资源库中显示对应的资源。
普通报表中准备好资源后,点击「保存」报表,这样在 Word 中点击资源列表的「刷新」按钮,就可以让这些资源显示在资源列表处,如下图所示:
注1:只要在报表中改动了一些资源,想要在 Word 中刷新生效,就一定要先保存这张报表。
注2:2.0.2 及之前版本插件需要登录数据决策系统,将新建的模板挂载到数据决策平台中才可引用资源。
5. 插入资源编辑
5.1 插入公式
Word 报告支持插入公式,公式的写法与 FineReport 相同,将光标放在要插入公式的地方,点击左上角「公式」按钮即可出现弹窗,在弹窗内输入公式即可。如下图所示:
5.2 插入单元格
可以用公式按钮,也可以直接手写,在{{=}} 的等于号后面写单元格即可,如下图所示:
5.3 插入数据列
Word 报告支持引用当前模板和平台挂载模板中的数据列,同时支持模板数据集和服务器数据集。
选择工具栏中的「数据列」按钮,可以在页面左侧的「资源中心」查看当前模板数据列以及平台挂载模板的数据列,光标放置在需要引用数据列的位置,再选择需要引用的数据列,双击即可引用对应的数据列,如下图所示:
5.4 插入表格
报表区域其实就是表格,Word 报告支持引当前模板和挂载到平台中报表区域,同时也支持使用在 Word 端插入表格,在表格中引用当前模板的数据列来制作表格。
5.4.1 引用报表区域
把光标放在要插入的地方,点击左上角「表格」按钮,可以在页面左侧的「资源中心」查看当前模板表格以及平台挂载模板的表格,选择需要插入的表格,双击对应的 sheet 名称,在弹出的「选择表格区域」对话框内输入插入的表格位置,选择「尺寸」和「预览/导出时展示形式」,点击确定即可,如下图所示:
1)「尺寸」若设置为自定义大小则在word内生成占位图,可自行调节占位图的大小与位置。预览后的结果表格,与占位图的大小与位置保持一致。若设置为表格原尺寸则表格尺寸保持不变。
2)引用的表格资源中「预览/导出时展示形式」设置为表格,则支持导出后对表格二次编辑。若设置为图片导出后表格显示为图片,不支持导出后对表格二次编辑。
注:表格所处单元格需要填写大写的英文字母和整数。
5.4.2 引用数据列制作表格
把光标放在要插入的地方,在「开始」中插入表格,设置表格样式后,点击「FineReport>数据列」在表格中引用对应的数据列,将公式中的 "=" 换为 "|" 即可。同时在表格的第一列是设置序号,并「编辑表格属性」勾选「在各页顶端以标题行形式重复出现」即可,如下图所示:
注:仅支持引导当前模板的数据列,支持简单的纵向扩展,无条件属性,无父子格关系,表格中仅支持序号、重复标题行基础设置。
5.5 插入图表
Word 报告支持引用当前模板和平台挂载模板中的图表,把光标放在要插入的地方,点击左上角「图表」按钮,可以在页面左侧的「资源中心」查看服务器内的所有图表,选择需要插入的图表,双击对应的图表名称,即可插入图表,如下图所示:
5.6 参数查询
1)Word 报告支持在模板中自定义参数可以直接引用自定义参数,以此来避免进行二次复杂计算。参数可以直接用公式来定义,如下图所示:
2)支持引用在报表中定义参数,并在参数面板中添加控件,从而实现查询效果,如下图所示:
5.7 重复动态文本
在 Word 中添加重复动态文本控件,可以将固定内容的重复一定的次数,重复的次数支持使用公式进行计算,控件内容可以为固定文字,FineReport 公式,数据列,自定义参数等。
注:重复动态文本尽量避免放在段落中间。
点击左上角「可重复动态文本」按钮,在弹窗中输入需要重复的次数,点击确定,并在文本控件内输入需要重复的内容,如下图所示:
重复次数:count(UNIQUEARRAY(ds2.select(销售员))) ,意为计算 ds2 数据集中的销售员的人数
需要重复的内容:{{=Value("ds2","销售员")}}的销售总量为{{=2:C2!}},意为显示 ds2 数据集中销售员对应的销售总量,销售总量引用sheet3 中的 C2 单元格的值。
5.8 动态图表
注:动态图表仅支持引用平台挂载的模板中的数据
先将模板挂载数据决策平台后,在 Word 端点击「动态图表」,在弹出的对话框中选择「打开报表」,选择对应的报表,点击确定,选择图表所需要的数据并设置「分类」、「系列」、「值」,确定后会默认展示为柱形图,点击「更改图形」选择自己需要的图形即可,保存后重新打开报表进行预览即可看到制作好的图表,如下图所示:
5.9 插入组件
点击左上角「组件」按钮,可以在页面左侧的「资源中心」查看 FRM 模板中的套用组件,选择需要插入的组件,双击对应的名称,即可插入组件,如下图所示:
6. 隐藏资源编辑
有资源预览时不希望报表和资源同时展示,那么需要隐藏掉这些资源。
注:暂不支持直接隐藏行列。
1)隐藏行列需要使用条件属性,设置行高或列宽为 0,如下图所示:
2)隐藏底部 sheet 栏:如果其他 sheet 有放资源,预览时底部会出现 sheet 栏,预览时想隐藏底部的 sheet 栏,只需要给模板添加一个「加载结束」事件,如下图所示:
JavaScript 代码如下:
$(".fr-tabpane-controlbuttons.ui-state-enabled").hide()
$(".fr-tabpane-tabscontent-bg").hide();
7. 模板预览编辑
建议使用 Chrome 预览 Word 报告,Word 端和设计器端都可以直接预览报告的效果,入口分别如下:
1 )Word 端:点击「FineReport」加载项下的「保存」,再点击「预览」即可。
2)设计器端:需要使用填报预览模板。
注:只要改动了 Word 想要预览时生效,就一定要先点「保存」再点击「预览」,否则改动不会生效。
8. 注意事项编辑
8.1 公式书写要求
1)Word 里面插入公式时不需要格式嵌套。例如:插入一个单元格的写法是:{{=M3}},此时如果想要对这个单元格求和,正确的写法是:{{=SUM(M3)}},求和公式括号里面的单元格不要再加公式格式了,也就是不要错写成:{{=SUM({{=M3}})}}
2)Word 里面插入公式不支持引用层次坐标。
8.2 重复动态文本控件说明
1)控件中的参数不参与重复,若想重复参数需要添加=,例如自定义参数为:{{=$a}},在控件中引用需要输入:{{==$a}}
2)重复文本最好单独成行,不要跟其他文字在一个段落中间使用,可能出现换行问题。
3)使用添加数据列的单元格默认采用最后一个数据,例如: 如设计器内 L1 单元格添加数据列 ds1.a,word 模板内直接引用 L1 单元格,默认逻辑为最后位,在L1后添加!即可展示全部数据 {{=L1!}} ,如下图所示:
8.3 IF多条件判断
在实际开发时,可能不止是 if else 两个判断这么简单,有的时候会有多个条件判断。
例如分析指标时一般会有 3 个判断:上升、下降、持平。
这样的多条件判断需要通过 if 嵌套的方式实现,公式逻辑是:if(condition,result1,(if(condition,result2,result3)))
举个例子:{{=if(N23<0,"下降"+format(N23*-1," #0.0%"),if(N23>0,"增长"+ format(N23," #0.0%"),"持平"))}}
8.4 预览即显示默认值查询的数据
如果 Word 报告模板有设置参数查询,预览时希望直接显示出控件默认值的查询结果,而不是一篇空白,等着用户去选参数然后点查询。
设置方法:取消勾选参数面板属性下的「点击查询前不显示报表内容」。
8.5 不支持同时打开多个报表
word 报告插件暂时不支持同时打开多个文档,打开多个 word 时其他已经打开的 cpt 再次上传就需要从新上传,此时上传为覆盖保存,覆盖保存会使模板的 sheet 和数据集丢失。