历史版本54 :控件简介 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本功能变更
11.0

--

1.2 应用场景

在报表的具体应用中,经常使用「控件」来实现不同的功能。根据使用方式可将控件分为填报控件和参数控件两大类,填报时使用的控件为填报控件,参数界面使用的控件为参数控件,这两种控件的类型基本相同,只是在使用方面略微有所不同。本文整理控件相关文档,用户可根据本文快速查找所需控件文档。

注:控件事件具体介绍请参见:控件事件

2. 控件分类编辑

控件类型详细统计如下表所示:

控件类型具体控件
控件简介参考文档
参数控件/填报控件
文本控件昵称、名称等填写,用户按照规则要求输入即可文本控件
文本域控件文本域控件支持换行符,当用户需要输入或编辑长字符串时可使用该控件文本域控件
数字控件可通过该控件输入数字信息(整数、负数、小数)数字控件
密码控件可通过该控件输入密码信息,录入密码密码控件
按钮控件可通过该控件执行提交、插入行、删除行、树节点展开与关闭等操作按钮控件
复选按钮控件可通过该控件执行批量选中操作复选按钮控件
单选按钮组控件当选项数量小于等于 4 时,一般使用单选按钮组控件单选按钮组控件
复选按钮组控件当选项数量大于 4 时,一般使用复选按钮组控件复选按钮组控件
下拉框控件通过该控件下拉选择某个选项信息,录入或查询数据下拉框控件
下拉复选框控件通过该控件下拉选择多个选项信息,录入或查询数据下拉复选框控件
日期控件当用户需要输入一个时间,使用日期控件,弹出时间面板进行选择日期控件
下拉树控件可通过该控件选择具有多层树状结构的数据,录入或查询数据下拉树控件
视图树控件可通过该控件选择具有多层树状结构的数据,录入或查询数据视图树控件
填报控件文件控件可通过该控件上传文件
文件控件
列表控件可通过该控件选择单条数据信息列表控件
网页框控件
可通过该控件在报表页面中嵌入其他网页或报表网页框控件
参数控件标签控件

可通过标签控件给控件的「标签名称」进行赋值

-
查询按钮点击该按钮后查询数据
-
预定义控件一般应用于定义比较复杂且需要重复使用控件的地方控件管理

注:参数面板中,所有控件以及插件类的「控件名称」均不支持为空或重复。

3. 控件与参数的绑定方式编辑

1)在使用参数控件时,当已经完成全局参数、模板参数或数据集参数设置后,编辑参数面板,选择全部添加即可添加与参数绑定的参数控件,如下图所示:

12.png

2)编辑参数面板,选择需要的控件,设置参数控件的名称为对应的参数名也可以完成控件与参数绑定。例如:设置模板参数为货主地区,编辑参数面板,拖入下拉框控件,设置控件名称为货主地区。如下图所示:

2021-08-17_10-10-15.png

3)填报控件与参数绑定示例可参考:JS实现使用填报页面的控件查询 。

4. 注意事项编辑

4.1 数据字典联动会清空控件值

当前功能设计下,控件在触发数据字典联动时,会清空被联动控件的值。

1.gif

4.2 有控件值的参数面板控件在初始化时就会计算数据字典

带有数据字典设置的参数面板控件,如果没有默认值,则其数据字典会在点击控件触发选项时才会计算;如果有默认值,则在控件初始化的时候就会计算数据字典。所以当数据字典的 sql 执行速度较慢的情况下,设置默认值会对模板整体加载速度有明显影响。

4.3 模糊搜索会分开匹配输入字符

下拉树、下拉框,下拉复选框带有模糊搜索功能,在匹配的时候会将多个字符拆开来进行匹配。例如输入 ABC ,则会匹配数据字典中同时有 A、B、C 且顺序一致的数据,而不是只匹配 ABC 连在一起的数据。

如果是用拼音来模糊搜索中文的话,程序会先将中文解析为拼音,之后按照上述逻辑来进行匹配。如下图所示,输入 nn ,会匹配到饼干(binggan),因为拼音中存在2个 n 。

4.4 模糊搜索会同时从实际值和显示值中进行匹配

带有模糊搜索功能的控件,比如下拉框,下拉复选框等,如果数据字典设置了不同的实际值和显示值,在模糊搜索的时候,会根据输入字符,同时从实际值和显示值中匹配对应的数据。

4.5 文本和数字控件输入不符合校验规则的值后,会返回上一次输入的值

设置了校验规则的文本或者数字控件,当输入值不符合规则的时候,会有相应提示,并且当前输入值会被清空,返回上一次输入的值。

1.gif

4.6 填报控件未进入输入状态时,输入的第一个字会变成字母

在使用单元格控件进行输入时,需要双击控件进入输入状态后,方可编辑。如果只是选中了单元格,未进入输入状态,则输入的第一个字会变成字母。

1.gif

4.7 控件数据字典的数字丢失精度

问题描述

当控件数据字典使用的字段类型为数字类型时,例如 bigint,有可能会出现丢失精度的问题,如图所示:

解决方案

需要将数字类型转为字符串类型,例如下图所示在 sql 中进行转换。