17.1 模板属性详解
在模板属性窗口上有很多选项,本节介绍它们的含义和用法。
17.1.1 填报保护
填报保护的作用
客户端的表单填报在Excel的环境中进行,设置填报时保护,是利用了Excel本身的工作簿保护功能,其作用是:防止填报人更改模板的表样、更改模板上定义好的Excel公式、对无权限的字段区域进行输入或更改。
保护的方式
保护的方式有三种选择:
- 不保护-----指填报时不对模板工作表做任何保护,这种情况下,用户可以在表单的任何位置上随意输入,一般不推荐这种选择;
- 保护全部工作表----不管模板表样上有几个工作表一律保护,这种情况下,各工作表上只有当前用户有权限的字段所在的单元格,才能输入内容,其它位置的单元格内容都不允许更改;默认都采用这种方式。
- 保护部分工作表-----当模板表样上有多个工作表时,有的工作表加保护,有的不加保护;选择这种方式时,还要点击【设置需要保护的工作表】按钮,具体需要保护的是哪几个工作表。
保护密码
当Excel服务器的服务端安装的时候,会随机产生一个工作簿保护密码,所有的模板在填报时,都用这个密码来保护工作簿。这个统一的密码可以通过系统管理栏目中的“安全策略—模板安全策略”功能来重新设置,详见14.2节。
除了统一的模板保护密码之外,设计者还可以针对某个具体的模板,单独指定其保护密码。指定了保护密码的模板,在填报时,会采用该模板的密码而不是统一的密码去保护工作簿。
设置模板的保护密码,需要打开该模板的属性窗口,切换到“填报设置”选项卡,在“填报保护”区域中,勾选“自设保护密码”,在其下的输入框中输入密码,点击【确定】即可。
查看、修改时重新计算Excel公式:
当用户修改excel公式单元格中的数据(与公式计算结果不同):将金额:“100”修改为“101”; 或修改模板中的Excel公式:将H8中的公式修改为:“F8*G8-2”。
在勾选【查看时重新计算Excel公式】的情况下查看表单,excel公式单元格数据会重新计算。
若不勾选【查看时重新计算excel公式】在查看表单时,excel公式单元格数据不重新计算,显示手动修改后和修改excel公式前的数据。
勾选【修改时重新计算excel公式】选项则是在修改、办理表单时重新计算excel公式,效果可参考查看时重新计算的效果。
如果都勾选则查看和修改表单时都会重新计算excel公式。
17.1.2 保存设置
模板属性窗口上的“填报设置”选项卡中,右侧有个“保存设置”区域,里面有很多选项,大部分选项的含义自明,但是有几个选项,需要特别解释一下。
保存时,同时将Excel文件副本存入服务器
在Excel服务器中,虽然填报表单在Excel环境中操作,但是系统只是把Excel作为一个录入的“界面”,通过定义数据项对Excel工作表上的单元格赋予了含义,保存表单的时候,仅仅是把Excel工作簿上的那些“字段”的内容收集了起来,存储到数据库中的数据表中,并没有保存表单的Excel文件,工作表上除了定义了数据项的那些单元格之外,其它单元格中的内容统统丢弃。
读者可能会问,既然在保存的时候,除了数据项所在的单元格之外,表单上其它单元格的内容统统丢弃,那我们从我的工作台中打开一份表单,为什么表样、格式等等都还在,就像是打开了当初填报的Excel工作簿一样啊?实际上,打开一份表单时所发生的事情是,系统先打开了模板的表样工作簿,它是个空白表单,然后从数据库的数据表中,把表单的数据读取出来,按照模板上数据项的位置定义,填充到空表单的相应位置上去,如果明细数据比表样上预留的行数多,还会自动插行。
只保存数据,而不保存文件,这样做的一个明显的好处是,如果我们在填过一些表单之后又修改了模板表样,比如改了格式,挪动了字段的位置等等,再打开过去填报的表单,它们会自动按新的表样展示。
如果我们在模板属性的填报设置中勾选了“保存时,同时保存一份Excel文件”,则当我们保存表单的时候,除了把工作表上数据项单元格的内容存到数据库的数据表中之外,还把这个表单工作簿文件本身同时存到了数据库。凡是设置了这个选项的模板,在从我的工作台中打开其表单时,会优先去打开当初保存的表单工作簿文件,只有表单工作簿文件不存在的时候,才会向上述方式那样,打开模板表样,再把数据填充到表样上。
设置这个选项,有好处也有坏处。
好处是:用户在非数据项区域输入的内容,以及在填报表单时设置的一些格式信息也可以同时被保存下来。
坏处则是:1)改了模板表样之后,打开之前保存的表单,还按照旧的表样显示。2)文件占的空间总是比数据要大很多,所以,如果很多模板都这样设置,数据库会增长得比较快。
一般情况下,我们不推荐勾选这个选项。
打开时,忽略服务器中的Excel文件副本
如果您保存时即想将表单工作簿文件本身存到数据库,但打开时又不想优先打开当初保存的表单工作簿文件,只想打开模板表样,再把数据填充到表样上(只想将表单工作簿文本文件存到数据库作为备份,不进行读取)。应该怎么设置呢?
这就用到了【保存时,同时将Excel文件副本存入服务器】下面相关联的【打开时,忽略服务器中的Excel文件副本】选项。如下图所示进行勾选设置时即可得到前面所要的结果。说明:此选项不可单独勾选,必须在已勾选【保存时,同时将excel文件副本存入服务器】时才可勾选。
保存前检查
在模板属性的保存设置这部分,有两个保存检查的选项,“保存前检查单元格有效性”、“保存前检查数据类型”。正常情况下,用户填报表单时,在一个数据项所在单元格输入内容后,系统都会自动检查输入内容的数据类型是否正确、是否符合单元格有效性的规定,但是,如果单元格内容不是用户直接输入的,而是从别处拷贝粘贴过来的,则这种检查就会被跳过。勾选上述两个检查的选项,就是为了应对这种情况,保证即使是了拷贝粘贴上去的数据,也符合数据类型和单元格有效性的规定。
17.1.3 模板摘要
在模板属性窗口上,有一个“摘要”选项卡,可以设置如何构造表单的摘要信息。摘要信息是对表单内容的简要说明,它可以根据表单中某些数据项的值,以及填报时的系统变量的值自动生成。摘要信息用于以下场合:
- 在工作流中的待办事宜的说明部分
- 系统操作日志中的说明部分
例如,我们在订单模板的模板属性窗口的“摘要”选项卡中,选择“自定义格式”,勾选用来生成摘要的字段,点击【确定】,保存摘要的定义。
然后去填报一张订单,到第二步办理人的待办事宜中,可以看到,我的工作台中待办事宜的说明部分,就是表单上那些摘要字段的内容。
17.1.4 模板高级属性
在模板属性窗口中的 “高级”选项卡,可设置对应模板导出表单生成的文件类型。对于word文件则对应设置的是新建时生成的word文件类型。
设置了保护时 使用水印则导出表单时,选择保护,会生成水印。
可设置模板中的图片、附件保存位置。
勾选“允许用户设置系统列”选项,则普通用户在“自定义数据显示窗口”中,可以设置显示系统列,不勾选则不可设置。
“明细表超链不做合并”勾选时,打开明细表有超链的表单,点击某行明细的链接后,其他行不再变色。
勾选“禁用复制新增功能”,则填报时不显示【复制新增】按钮。