报表工具之数据校验竟可以如此简单

在报表开发过程中,为了保证信息准确无误入库, 我们经常会被要求对报表增加校验以保证数据类型和格式的正确。比如:工资金额最多只允许包含两位小数、邮政编码必须是全数字组成的 6 位数且首位数字不能是 0 等等。面对多种多样、层出不穷的校验需求,如果都写 js 来实现的话,那工作量真是…(你懂得),那么有没有一款报表神器,能轻松搞定这些校验呢?

呵呵呵…

下面我就给大家推荐一下解救我的神器—润乾报表,此神器提供了强有力的校验方法,例如通过设置单元格的数据类型、在填报单元格校验或格间校验里写校验公式、自定义有效性验证脚本,等等。利用好这些手段,就能摆脱大量写 js 的命运。

下面我们就分类说明一下,润乾报表是怎么实现各种校验的。

数据类型校验 – 栗子 1:

要求:

工资录入的数据必须是数值。

设置如下:

选中工资所在单元格 H3,右侧属性 -- 表达式 -- 数据类型,选择数值型即可。

1png

效果:

当工资输入非数值时,单元格失去焦点后,便会弹出提示“请输入数值!”,如下图

2png

单元格类型校验 - 栗子 2:

这个栗子我们从多个较多进行分析讲解:

角度 1:

要求在原来数据类型的基础上,限定工资最多可录入两位小数。

设置如下:

菜单栏 中选择 填报 – 单元格校验,新增单元格校验表达式,其中,

表达式为:(/^\d{0,8}\.{0,1}(\d{1,2})?$/).test(H3)

意为:H3 单元格内容必须包含 0 ~ 8 位整数,可带 0 ~ 1 个小数点和 1 ~ 2 位小数

出错提示为:工资金额,最多两位小数 如下图

3png

效果:

当输入工资金额小数多于两位时,单元格失焦后,便会弹出预先指定提示信息,如下图:

4png

角度 2:

要求邮政编码必须输入 6 个数字组成的数值串且首位数值不能为 0 。

设置如下:

菜单栏 中选择 填报 – 单元格校验,新增单元格校验表达式,其中

表达式为:D5.toString().match(/^[1-9]\d{5}$/

意为:D5 单元格的字符串,首位必须是 1-9 之间的数字,其 5 位后随意取 5 位数字。

出错提示为:邮政编码必须是首位不为 0 且长度需为 6 位的纯数字 如下图

5png

效果:

当输入邮政编码输入数值串为数超出 6 位且首位数字为 0 时,单元格失焦后,便会弹出预先指定提示信息,如下图:

6png

角度 3:

要求员工表中姓名列必须填写,不能为空。

设置如下:

菜单栏 中选择 填报 – 单元格校验,新增单元格校验表达式,其中

表达式为:C3!=null&&C3!=""

出错提示为:姓名不能为空! 如下图

7png

效果:

当管理员录入员工信息忘记输入姓名时,单元格失焦后,便会弹出预先指定提示信息,如下图:

8png

有效性校验脚本 – 栗子 3:

要求:

筛选面板中选择的截止日期不能早于起始日期,否则给出提示且不能进行查询。

设置如下:

筛选面板 菜单栏 报表 报表属性 其他选项卡,有效性校验脚本中写入方法,如下图:

9png

其中,startDate 为起始日期的 web 变量名,endDate 为截止日期的 web 变量名。

方法为:

if (getParamValue(“startDate”) > getParamValue(“endDate”)){

alert(“起始日期不能大于截止束日期!”);

return false;

}

return true;

效果:

当筛选面板中选择的起始时间早于截止时间时,点击查询便会弹出提示,提醒用户修改。如下图

10png

格间校验 - 栗子 4:

要求:

报表组中的关联项需要保持一致,或者计算后结果保持一致。例如:报表组中包含订单表和订单明细表,那么订单明细表中所有产品的订单金额总和就必须跟订单表中的订单金额保持一致,否则,给出错误提示不允许数据入库。

设置如下:

报表组中 菜单栏 填报 格间校验,新增格间校验表达式,其中

表达式为:订单!H6== 订单明细!G5

出错提示为:订单明细中总金额和订单中金额不一致!

注:表达式中“订单”和“订单明细”分别代表报表组中订单表和订单明细表的 sheet 页名称,见下图标注,H6 和 G5 分别对应订单表和订单明细表中的单元格,感叹号为连接符

11png

效果:

订单明细中,所有产品金额总和为 1810,如下图:

12png

那么如果在订单明细中输入其他值,在提交保存时,就会给出错误提示。如下图:

13png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于MySQL+Vue.js开发集成实时聊天系统的动态项目管理web端软件源码+答辩PPT+使用说明.zip 【优质项目推荐】 1.项目代码功能经验证ok,确保稳定可靠运行。欢迎下载使用!在使用过程中,如有问题或建议,请及时私信沟通,帮助解答。 2.项目主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、项目初期立项演示等用途。 4.如果基础还行,或热爱钻研,可基于此项目进行二次开发,DIY其他不同功能。 基于MySQL+Vue.js开发集成实时聊天系统的动态项目管理web端软件源码+答辩PPT+使用说明.zip 部署前端服务 1. 打包前端文件生成 dist 文件夹 ```js // genal-chat-client npm i npm run build ``` 1. 将 dist 下所有文件放到 nginx 下的 html 文件夹中 2. 配置 nginx 的 gzip (提高传输速度)和请求级别(注意只是新增下面的代码,不是替换整个nginx文件) ```js 记得重启一下nginx #### 数据库配置 1. 安装 mysql 2. 设置 mysql 账号密码 3. 创建名为 `chat` 的数据库 4. 配置后端 `app.module.ts` 中的 mysql 账号密码 部署后端服务 1. 安装 pm2 ```js // genal-chat-server npm i pm2 -g ``` 2. 生成 dist 文件 ```js // genal-chat-server npm i npm run build ``` 3. 使用 pm2 运行 ```js // genal-chat-server npm run pm2 ```
该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值