填报.docx

上传人:b****5 文档编号:4448897 上传时间:2022-12-01 格式:DOCX 页数:35 大小:1.68MB
下载 相关 举报
填报.docx_第1页
第1页 / 共35页
填报.docx_第2页
第2页 / 共35页
填报.docx_第3页
第3页 / 共35页
填报.docx_第4页
第4页 / 共35页
填报.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

填报.docx

《填报.docx》由会员分享,可在线阅读,更多相关《填报.docx(35页珍藏版)》请在冰豆网上搜索。

填报.docx

填报

通过填报表可完成数据采集和回填功能。

所谓填报表,就是可以录入数据,并可以把所录入的数据保存到数据库中的报表。

实际的应用中,填报表会有很多的功能需求,例如录入数据时,要求提供友好的输入方式,帮助用户快速方便地录入,避免错误数据的录入;录入数据后,希望提供自动计算的功能,可以通过已经录入的部分数据自动算出尚未录入的另一部分数据,简化录入的工作量;数据保存前希望能够进行数据的合法性检查,避免将不合法的数据存入数据库中等等。

填报表制作需要设置报表级的填报属性和单元格的填报属性。

报表级填报表属性为整个报表相关的属性设置。

例如,设置当前报表是否为填报表,更新属性设置,当前填报表是否为行式等。

单元格填报表属性为针对某个单元格来设置的填报相关的属性。

例如,当前单元格是否可写,编辑风格,当前单元格的校验、自动计算、流水号计算表达式等。

报表填报属性是报表级的填报属性。

通过报表的填报属性面板进行设置,点击工具栏菜单【报表属性】-【填报设置】,打开填报属性面板,如下图所示:

填报类型有“仅供统计”和“可填报”两种。

仅供统计主要针对的是普通报表,这种报表以汇总统计为主、以浏览、打印、输出为目的,不能填写,不能回存数据库。

可填报报表指填报表或参数表单,填报表以客户端填写数据并回存提交为目的,报表的原始数据可以从数据库汇总出来,在客户端修改并回存数据库。

参数表单作为参数模板使用,以接受用户输入的参数为目的。

报表类型

填报类型|数据提交方案

报表按照计算单位分为普通报表和行式报表。

普通报表

普通报表:

把报表中的单元格作为存储和计算的基本单位,例如一个3行3列的普通报表,那么在内存里把3*3=9个单元格作为9个对象存储和计算。

行式报表

行式报表:

把报表中的行作为存储和计算的基本单位,例如一个3行3列的行式报表,那么在内存中把3行作为3个对象来存储和计算,相同单元格数量的行式报表运算效率明显优于普通报表。

行式报表以“行”为单位来对报表中的数据进行处理所以它有运算速度快和处理数据量大的优点。

相同时间内行式报表可处理的数据量跟普通报表相比可以大大提高,而且行式报表可以边计算边输出,数据量越大行式报表的优势就越突出。

但并不是任何一个报表都是行式报表,只有满足以下特征的报表,才可以是行式报表:

∙主格不同行

∙无横向扩展

∙无拉伸单元格

∙按源格遍历法运算(源格不能循环引用)

∙无图注

∙不包含任何类型的统计图。

∙不支持隐藏行/列

∙不支持自动换行/尺寸调整方式

∙不支持行/列后分页

数据提交方案

报表类型|更新属性

所谓提交方案,是指填报表提交时,哪些单元格的数据能够被提交到服务器上。

系统提供了要保存的单元格、要保存和可写单元格、全部单元格三种提交方案。

举例:

∙选择提交“要保存的单元格”,则只对更新属性中设置了的单元格的数据进行提交;

∙选择提交“保存及可写单元格”,则对所有可写的及更新属性中设置了的单元格的数据进行提交;

∙选择提交“全部单元格”,则对所有的单元格数据都进行提交;

更新属性

数据提交方案|流水号定义

更新属性是指填报数据更新至数据库表、字段的属性。

可为填报表设置多个更新属性。

更新方式有“更新数据库表”、“用储存过程更新”、“用自定义类更新”。

根据选择的更新方式的不同,更新设置的内容会发生不同的变化,常用的的更新方式是“更新数据库表”。

∙更新数据库表:

直接对数据表进行更新或插入操作。

在设置过程中需要在更新字段列表中定义字段名与报表单元格的对应关系,同时每个更新数据库属性必须指定主键。

对数据进行更新时数据库执行update语句,插入新数据时执行insert语句,删除数据行时执行delete语句。

∙存储过程更新:

系统调用存储过程更新,更新字段的问号与对应的取值表达式中,如果此问号要求取单元格的填报值进行表达式计算,那么应写成=inputVaule(单元格名),如果直接写单元格名表示取单元格的原始值。

∙自定义类更新:

由用户写java类完成对数据的更新。

流水号定义

更新属性|单元格填报属性

流水号是一种特殊的自动计算。

它按照一定的递增或者递减规则,在当前值的基础上进行递增或者递减计算。

流水号只能在行式填报中使用。

流水号的定义界面如下图所示:

名称

名称即为流水号变量名。

流水号变量名不要与发布报表的JSP文件中javascript变量名或HTML元素ID相同。

类型

流水号的数据类型。

初值表达式

初值表达式可以定义流水号变量的初始值或缺省值。

∙流水号变量的初始值

流水号在刚开始有一个初值,即第一次计算前的当前值,以后就把每一次计算出的新值作为当前值。

在此设置后的流水号变量名,可以在需要用到流水号的单元格流水号表达式中使用

∙流水号变量的缺省值

新添加、插入的行往往有缺省值,因为行式填报表单元格的表达式要用于取出已经录入的数据进行修改,不能写缺省值表达式。

如果把缺省值写进自动计算属性里,那么自动计算时会把原有的旧行也一起计算了,无法智能判断谁是新行。

因此,可以使用流水号为新行赋缺省值。

流水号不一定非得递增或者递减,它还可以不变。

例如:

有一个报表,传入当前用户名作为参数,需要在每条新增记录的操作员字段里缺省写入当前用户名。

做法如下:

第一步:

定义流水号的初值var1,初值表达式为arg1,这里假设arg1就是当前用户名参数。

第二步:

在行式报表的操作员字段的单元格填报属性里,流水号一栏中写入var1。

第三步:

点击【确定】按钮,保存后在网页上发布,添加新行,即可看到效果。

初值表达式可以是常数、字符串(用双引号引起来)或润乾报表的表达式(不用等号开头)。

流水号的使用参见:

流水号表达式。

单元格填报属性是单元格级的填报属性。

通过菜单工具栏-编辑-单元格填报面板进行设置。

单元格填报属性设置共分为”常规”、“校验”、“其他”三个tab页。

编辑风格类型

编辑风格|动态过滤

为了方便用户填报数据,报表中提供了编辑框,密码框,下拉列表框,单选按钮、下拉数据集,复选框,下拉日历,下拉树,上载文件和自定义等编辑风格。

编辑框

设置填报表某单元格为编辑框,如所示:

设置好编辑框风格的填报属性后,点击预览后,效果如图所示:

密码框

设置填报表某单元格为密码框,在编辑风格下拉列表框中选择密码框编辑风格即可。

设置好密码框风格的填报属性后,点击预览后,效果如图所示:

下拉列表框

有些填报会用到下拉列表框,如在人员填报中,分别用1和2代表男、女等类似情况。

设置填报表某单元格为下拉列表框,在编辑风格下拉列表框中选择下拉列表框编辑风格,然后

点击【设置】按钮,弹出下拉列表框编辑窗口,进行如下设置后保存即可

∙允许多选:

如果选择了此项,则允许从下拉列表中选择多个值。

下图分别为允许多选和不允许多选的下拉列表框的展现效果:

∙允许编辑:

如果选择了此项,可以对下拉列表进行编辑,可以输入显示值,下拉列表框的“允许新值”属性可以使用,否则下拉列表的“允许新值”属性不可以使用。

∙允许新值:

如果选择了此项,下拉列表框可以输入下拉选项以外的值。

∙代码值和显示值:

代码值是填报时存入数据库的代码,显示值则是在报表展现页面上显示的内容。

注意:

下拉列表的显示值中不能有英文逗号和分号。

因为显示值对应着下拉列表的选择项,下拉列表的不同选择项之间在系统内部是以英文逗号或分号间隔的,如果某一显示值包含了逗号或分号,那么系统在处理时就会把逗号或分号前后拆成两个选择项。

下拉列表框的单元格不能使用自动换行属性,否则会导致下拉属性不可用

单选按钮

有些填报会用到单选按钮,列出多个选择项,用户只能选择其中的一项。

如在人员填报中,分别用1和0代表男、女,用户要么选择男要么选择女。

要设置填报表某单元格为单选按钮,在编辑风格下拉列表框中选择单选按钮编辑风格,

,通过设置按钮设置单选按钮编辑风格的属性,如下图所示:

设置好单选按钮风格的填报属性后,点击预览后,效果如图所示:

下拉数据集

有的时候下拉列表中的数据来自于数据库中,这时就用到了下拉数据集的编辑风格。

例如在填报人员所属地区的单元格中需要显示所有地区的下拉列表。

在编辑风格下拉列表框中选择下拉数据集编辑风格

点击【设置】按钮,系统弹出下拉数据集编辑窗口。

分别在窗口中的数据集,显示列,数据列设置如下内容:

设置好的下拉数据集的展现效果如下图所示:

下拉数据集还支持动态过滤和关联过滤,详见以下章节。

下拉列表数据集编辑风格有以下几点需要注意:

∙下拉数据集的显示列值不能包含英文逗号和分号。

因为显示列值对应着下拉数据集的选择项,下拉数据集的不同选择项之间在系统内部是以英文逗号或分号间隔的,如果某一显示列值包含了逗号或分号,那么系统在处理时就会把逗号或分号前后拆成两个选择项。

∙下拉数据集的单元格如果使用自动换行属性,否则会导致下拉属性不可用。

∙下拉数据集的显示列值中如果包含回车换行,引号之类的特殊字符,可能会在使用“关联过滤”属性后,对javascript产生影响,为了屏蔽这些字符的影响,将“清除特殊字符”选项勾选上即可。

∙数据集中如果存在重复的显示值,但是有不同的数据值时,那么选择重复的显示值时,返回对应的数据值;如果输入重复的显示值,那么只能返回重复选项中第一个显示值对应的数据值。

复选框

在编辑风格下拉列表框中选择复选框编辑风格,

,点击【设置】按钮,系统弹出复选框编辑窗口,进行如下设置:

开值表示当复选框选中时的状态值,关值表示没选中时的状态值,标题是复选框显示的内容。

设置好的复选框编辑风格预览效果如下图所示:

下拉日历

下拉日历可以方便用户进行日期时间类型数据的输入。

在编辑风格下拉列表框中选择下拉日历编辑风格,

点击【设置】按钮,在系统弹出下拉日历编辑窗口中选择取值类型即可。

设置好下拉日历的填报属性后,预览效果如下图所示:

注意:

下拉日历的单元格不能使用自动换行属性,否则会导致下拉属性不可用。

下拉树

有时需要在报表中以树型结构来显示某些信息,这时就用到了下拉树的编辑风格。

下拉列表和下拉数据集只能显示一层数据,而下拉树可以显示多层数据。

在编辑风格下拉列表框中选择下拉树编辑风格,

在编辑风格设置界面中进行如下设置:

选中根节点,点击增加,设置第一层节点如下图所示:

添加第二层节点,设置第二层结点如下图:

在过滤条件一栏里设置表达式:

货主地区=="$1"表示数据集演示_订单数据表的字段货主地区的值要等于第一层节点的数据列值。

可以通过点击 “帮助”

打开过滤条件的帮助窗口,获得输入过滤条件的帮助信息。

如下图所示:

下拉树编辑风格的预览效果如下图所示:

注意:

下拉视图的单元格不能使用自动换行属性,否则会导致下拉属性不可用。

上载文件

V5填报表支持把图片或文件保存到数据库中,也支持图片或文件的下载。

在编辑风格下拉列表框中选择上载文件编辑风格,点击设置按钮后,在弹出的窗口中进行如下设置:

可以对上传文件的格式进行设置,如上图表示只能上传gif和jpg格式的图片。

通过“上下载权限“可以设置为“只能上载”、“只能下载”、“上下载均可”三种方式。

如果单元格的文件需要下载,那么还需要在“保存文件名的列名”属性上设置一个字段用来存储文件名。

否则下载时的可能会由于未知文件类型,导致下载的文件无法正确打开。

设置好上载文件的填报属性后,发布到web上,双击上载文件单元格,即可进行文件的上传或下载,效果如下图所示:

自定义

用户还可以自定义填报表的单元格格式。

在设置窗口,输入javaScript脚本的函数名称,当在浏览器中单击该单元格时,用户输入的自定义函数就会被调用,来完成用户自定义的功能。

选中需要设置为自定义编辑风格的单元格,点击右键-填报属性或者点击菜单栏中的属性-填报属性,弹出数据填报窗口,如x所示。

在编辑风格下拉列表框中选择自定义编辑风格类型,然后点击【设置】按钮,系统弹出自定义编辑风格窗口。

如下图所示:

输入显示自定义控件的JS函数和隐藏自定义控件的JS函数,编辑完成后点击【确定】按钮即可。

下拉数据集

有的时候下拉列表中的数据来自于数据库中,这时就用到了下拉数据集的编辑风格。

例如在填报人员所属地区的单元格中需要显示所有地区的下拉列表。

在编辑风格下拉列表框中选择下拉数据集编辑风格

点击【设置】按钮,系统弹出下拉数据集编辑窗口。

分别在窗口中的数据集,显示列,数据列设置如下内容:

设置好的下拉数据集的展现效果如下图所示:

下拉数据集还支持动态过滤和关联过滤,详见以下章节。

下拉列表数据集编辑风格有以下几点需要注意:

∙下拉数据集的显示列值不能包含英文逗号和分号。

因为显示列值对应着下拉数据集的选择项,下拉数据集的不同选择项之间在系统内部是以英文逗号或分号间隔的,如果某一显示列值包含了逗号或分号,那么系统在处理时就会把逗号或分号前后拆成两个选择项。

∙下拉数据集的单元格如果使用自动换行属性,否则会导致下拉属性不可用。

∙下拉数据集的显示列值中如果包含回车换行,引号之类的特殊字符,可能会在使用“关联过滤”属性后,对javascript产生影响,为了屏蔽这些字符的影响,将“清除特殊字符”选项勾选上即可。

∙数据集中如果存在重复的显示值,但是有不同的数据值时,那么选择重复的显示值时,返回对应的数据值;如果输入重复的显示值,那么只能返回重复选项中第一个显示值对应的数据值。

∙动态过滤

∙编辑风格类型|关联过滤

∙有时下拉框(下拉列表框和下拉数据集)中包含了很多的下拉项,用户要选择某一项如果在所有的下拉项中查找会非常的不方便,而使用动态过滤会使操作非常的便捷。

∙所谓动态过滤是指同一个下拉框中下拉项的动态匹配关系,在下拉框中输入值则下拉项中自动的列出与输入的值相匹配的选择项,过滤掉不匹配的选择项。

比如:

在地区下拉框中输入“华”,则下拉选项中自动的列出第一个字为“华”的地区,过滤掉第一个字不为“华”的地区。

∙把某一单元格的编辑风格设置为下拉数据集,在下拉数据表编辑界面中选择“增强控件”和“允许编辑”两个属性,如下图所示:

∙预览效果如图:

∙动态过滤只有在下拉框选择了增强控件和允许编辑两个属性后才可用,因为要实现动态过滤必须往下拉框中输入值,只有选择了这两个属性后才可以往下拉框中输入值。

关联过滤

动态过滤|可写性

所谓关联过滤是指两个或多个下拉框之间的关联关系,前一个下拉框选择的内容决定了后一个下拉框的下拉选择项。

比如:

地区和城市两个下拉框,当地区下拉框选择了某一个地区后,城市下拉框自动的进行关联过滤,列出属于该地区的所有城市,过滤掉属于其他地区的城市。

举例:

地区下拉框和城市下拉框的关联过滤。

这里假设地区下拉框所在的单元格为A2,城市下拉框所在的单元格为B2。

首先点击引用数据集,选择“demo_订单数据”数据集。

准备好数据集后,给A2单元格设置“下拉数据集”编辑风格,并设置显示列和数据列如下图所示。

给B2单元格设置“下拉数据集”编辑风格,并设置显示列和数据列。

然后切换到web特性tab页,设置关联过滤表达式和关联过滤单元格,实现A2与B2的联动。

关联过滤表达式:

货主地区=${A2}.toString(),表示该下拉菜单中列举的货主城市对应的货主地区必须与A2单元格选择的地区名称一致。

而地区名称是通过A2单元格设置的,所以将A2单元格设置为关联过滤单元格。

按照上述方法设置的关联过滤,在A2单元格内不能进行多选。

如果要在关联的第一级进行多选的话,必须将B2中的关联过滤表达式写为:

(','+A2.toString()+',').indexOf(','+货主地区+',')>=0,这样在B2下拉菜单中就会列举A2中所选的多个地区对应的所有城市名称。

注意:

∙如果单元格名在报表计算后会发生变化,那么应该写成类似${A1}的格式。

过滤表达式中如果单元格与字符串列比较,应写成A1.toString(),与数值列比较则写成A1。

∙关联过滤第一级要进行多选的话,在关联的单元格内设置关联过滤表达式的格式为:

(','+A1.toString()+',').indexOf(','+colName+',')>=0。

其中A1为关联过滤单元格的名称,colName为关联过滤单元格的数据列名称。

可写性

关联过滤|校验属性

填报表页面对应的单元格才能接受数据输入,否则为只读。

当是否可写 复选框

选中后,单元格可写性设置单元格是否被编辑,可通过直接勾选或可写表达式两种方式进行控制。

∙直接勾选:

勾选“是否可写”属性

∙可写表达式:

定义可写表达式,根据表达式返回结果控制单元格的可写性,返回值为true,单元格可写;返回值为false,单元格不可写。

注意:

如果可写表达式存在,那么是否可写属性将失效,也就是可写表达式优先于是否可写属性。

校验属性

可写性|其他属性

单元格校验可通过两种方式进行,设置填报数据类型和定义单元格校验表达式。

数据类型校验

报表提供了字符串,整数,数值型,日期型,数字串,地址,时间型,日期时间八种填报数据类型。

可以通过填报数据类型的选择,填报时,系统会检查填入的数据类型是否与设置的数据类型一致。

如果录入了不合法的数据,系统会弹出错误信息。

表达式校验

点击【增加】按钮可以增加一个校验规则,编辑校验公式和校验时出错信息,选择是否立即校验。

可定义多个校验规则。

校验表达式

表达式遵从javascript语法规则,表达式可以使用一个表达式,也可以调用javascript函数。

校验表达式可以引用单元格值,动态扩展单元格的引用方式为单元格名,如非动态扩展格及行式填报表单元格的引用方式直接为单元格名,如${A1};非动态扩展格及行式填报表单元格的引用方式直接为单元格名,如A1。

出错提示

定义当校验未通过时弹出的错误提示信息立即校验:

如勾选,鼠标移开当前单元格时就进行合法性检查,否则在报表发布页面上点击提交或者点击校验按钮时触发校验并且会标记出错单元格。

其他属性

切换到“其他”tab页,可进行其他填报属性设置。

自动计算

其他属性|流水号表达式

填报表的有些项不用手动填,而是根据填写的其他项自动计算而来。

这时,就需要设计填写时计算表达式。

自动计算的表达式语法规则全部采用javascript的语法规则,表达式可以使用一个javascirpt表达式,也可以调用javascript函数。

自动计算表达式中,如果需要相对引用单元格,即当报表进行扩展时,扩展出来的单元格中对该单元格的引用会随位置相对变化,那么要求这个相对引用单元格写成${Cellx的格式。

比如:

${B5}+${C5}。

流水号表达式

自动计算|填报表典型应用

前面介绍流水号了的定义方法,定义好的流水号可以在单元格填报属性中使用。

具体使用方法如下:

选中单元格,点击工具栏菜单【编辑】-【单元格填报属性】,打开单元格填报属性窗口,在【其他】页签【流水号】编辑框中,使用定义好的流水号变量名编辑javascript表达式,也可以在此处点击流水号定义,定义或者修改流水号定义。

比如:

++orderId,意思是将orderId的值加1,然后使用orderIDd变量的当前值为本单元格的流水号。

如下图所示:

流水号表达式设置:

流水号表达式要遵循javascript的规则,可引用流水号变量名,常见的一些使用方法如下表所示:

自由格式填报表特征:

报表的样式灵活,并非一行一条记录地排列,而是一条记录的字段可以分布在多个不同行上,多条记录扩展时,能够带动所有单元格成片复制。

自由格式填报制作方法:

第一步,制作一张如下图所示的自由格式普通报表,普通报表的制作方法参见:

报表设计。

第二步:

设置报表级报表属性

通过“报表属性”>“填报设置”打开报表填报属性面板,修改填报类型为:

可填报,设置更新属性如下图所示:

第三步:

设置C3、E3、F3、C4、E4、C5、E5、F5、C7、C8、C10、F8、E10单元格的可写属性为,可写。

完成以上步骤一个基本的自由格式填报表就设计完成了,你还可以对报表进行如下设置:

∙设置单元格编辑

∙风格定义合法性校验

∙自动计算

第三步:

报表发布和预览

对含有图片字段的报表设置更新属性时,需按如下步骤操作:

1.定义单元格的数据类型为图片字段。

2.定义单元格的编辑风格为上传文件,并设置保存列名。

所谓的行式填报,是指满足行式报表特征的填报表。

行式报表以清单的形式纵向列出,一条记录就是一行。

行式填报表往往要求能够增加、插入、删除行,可能会用到自动流水号等等。

具体特征参见:

报表类型>行式填报

报表制作要点:

第一步,设计一张如下图所示的普通的浏览式报表,具体设计方法请参见:

报表设计

第二步,设置填报类型为:

填报表

第三步,设置报表类型为:

行式报表

第四步,设置更新属性,增加一条如下图所示的更新属性。

第五步,定义一个如下图所示的流水号

第六步,设置单元格填报属性

将A2,B2,C2,D2,E2,F2单元格设置为可写。

设置A2单元格流水号计算表达式为:

++订单ID

完成以上设置一个带流水号的基本行式填报表就设计完成,用户可以根据需要设置单元格的编辑风格,校验表达式,自动计算等属性。

报表预览结果如下:

多源填报表

行式填报表|@nextTitle

设计报表如下:

主子填报表分上下两部分,上半部分为订单的主表,下半部分为订单明细,这两部分数据分别来自不同的物理表。

利用快逸的多源填报,即可实现在一张填报表填入的数据,同时保存到多张物理表中,并保持数据库事务一致性。

第一步,新建一个填报表,并新建两个数据集,分别对应订单的主表和订单明细的子表。

第二步,设计报表样式,如下图所示:

第三步,并将A1,A2,A3,A4,A5,A6,A7,A8,B9的左主格设为B3,A9的左主格设为B9,编辑表达式设置如下:

B3:

=ds1.select(订单ID,false)

D3:

=left(str(ds1.发货日期),10)

E3:

=left(str(ds1.到货日期),10)

B5,F5,B6,D6,F6:

如图中所示

A9:

=&B9

B9:

=ds2.select(产品ID,FALSE,订单ID==B3)

C9,D9,E9,F9:

如图中所示:

第四步,设置更新属性。

在这个报表中,我们需要把订单主表和订单明细的数据分别回填到两个不同的物理表中,所以该表需要对这两个物理表分别设置一个更新属性。

分别为订单表和订单明细表设置更新属性:

两个更新属性中“订单ID”的更新值都来自B3单元格,从而保持了数据库的事务一致性。

到此,这张主子填报表就做好了,在web上发布后就可以填报了。

不过,一张完整的填报表,要配以方便输入的编辑风格和保证输入数据正确性的数据校验才算大功告成。

所以我们接着对这个主子填报表进行进一步的加工。

第五步,设置编辑风格。

D3、F3:

设置编辑风格为“下拉日历”。

B5:

设置编辑风格为“下拉树”,需增加包含“客户”表的数据集ds3,详细设置如下图。

B6:

设置编辑风格为“下拉数据集”,需增加包含“运货商”表的数据集ds4,详细设置如下图

第六步,设置合法性校验。

在填报属性—常规中,设置C9,D9,E9的填报数据类型为“数值型”,以保证输入的数据不会出现非数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1