[填报与传统报表] 填报提交脚本

202111111111青铜四 显示全部楼层 发表于 2021-11-5 09:14:34 |阅读模式 打印 上一主题 下一主题
1
未解决

【填报与传统报表】 填报提交脚本

2094 4
这是填报表单页面提交按钮那里写的脚本,能给我分析一下这个脚本吗?

var a=getViewData("填报参数1")
param['a']=0
param['b']=0
if(a!=null && a.exists(1,-1,true)){
for(var i=0;i<a.size();i++){
if(a.get(i,13)!=null){
param['a']++
}else{
debug("请填写预计归还日期!")
break
}
}
}
if(a!=null && a.exists(1,-1,true)){
for(var i=0;i<a.size();i++){
if(dateGap(
date(
formatDate(a.get(i,13),'yyyy'),
formatDate(a.get(i,13),'MM'),
formatDate(a.get(i,13),'dd')
)
,
eomonth(date(substring(param["填报年月"],0,4),
substring(param["填报年月"],4,6),1)),
'dayofweek') > 0 &&
a.get(i,14)!=null
){
param['b']++
}
else if (dateGap(
date(
formatDate(a.get(i,13),'yyyy'),
formatDate(a.get(i,13),'MM'),
formatDate(a.get(i,13),'dd')
)
,
eomonth(date(substring(param["填报年月"],0,4),
substring(param["填报年月"],4,6),1)),
'dayofweek') < 0){param['b']++}
else{
debug("请填写第" + i + "行未及时清理原因!")
break
}
}
}
if(param['a']==a.size() && param['b']==a.size()){
autoCommit("插入");
refreshData();
}

回复

使用道具 举报

精彩评论4

永洪Tech-CIDX白银二 显示全部楼层 发表于 2021-11-5 09:57:13
麻烦上传一下填报组件的部分截图
回复

使用道具 举报

202111111111青铜四 显示全部楼层 发表于 2021-11-5 10:03:02
永洪Tech-wj 发表于 2021-11-5 09:57
麻烦上传一下填报组件的部分截图

091c46a98669662e9d8d14d1c30c498.png dabb8e72c9a6b524be567687a0e3650.png 第十三列是“预计归还日期”,第十四列是“未及时清理原因”
回复

使用道具 举报

永洪Tech-CIDX白银二 显示全部楼层 发表于 2021-11-5 15:48:07
var a=getViewData("填报参数1")
param['a']=0
param['b']=0


if(a!=null && a.exists(1,-1,true)){
//判断 填报参数1 组件数据是否有数据,有数据并加载完成后,执行下面脚本
for(var i=0;i<a.size();i++){
if(a.get(i,13)!=null){
param['a']++
//参数“a”内的数据是填报参数列“预计归还日期”不为空的行数
}else{
debug("请填写预计归还日期!")
break
}
}
}
//判断“预计归还日期”是否填写,未填提示填写

if(a!=null && a.exists(1,-1,true)){
for(var i=0;i<a.size();i++){
if(dateGap(//这个函数是计算两个日期之间的时间差
date(
formatDate(a.get(i,13),'yyyy'),
formatDate(a.get(i,13),'MM'),
formatDate(a.get(i,13),'dd')
)//创建日期类型对象
,
eomonth(date(substring(param["填报年月"],0,4), // eomonth 这个函数是用来计算增加月份后的日期
substring(param["填报年月"],4,6),1)),
'dayofweek') > 0 &&
a.get(i,14)!=null
){
param['b']++
// 如果“预计归还日期”里的日期在“填报年月”里日期月份加6的日期后面,参数“b”的数值加1
}
else if (dateGap(
date(
formatDate(a.get(i,13),'yyyy'),
formatDate(a.get(i,13),'MM'),
formatDate(a.get(i,13),'dd')
)
,
eomonth(date(substring(param["填报年月"],0,4),
substring(param["填报年月"],4,6),1)),
'dayofweek') < 0){param['b']++}
// 如果“预计归还日期”里的日期在“填报年月”里日期月份加6的日期前面,参数“b”的数值加1
else{
debug("请填写第" + i + "行未及时清理原因!")
// 如果“预计归还日期”里的日期在“填报年月”里日期月份加6的日期相等,提示填写未及时清理原因
break
}
}
}

if(param['a']==a.size() && param['b']==a.size()){
//若不存在“预计归还日期”里的日期在“填报年月”里日期月份加6的日期相等的情况,则可以提交
autoCommit("插入");
refreshData();
}
回复

使用道具 举报

202111111111青铜四 显示全部楼层 发表于 2021-11-5 17:39:26
永洪Tech-wj 发表于 2021-11-5 15:48
var a=getViewData("填报参数1")param['a']=0param['b']=0

if(a!=null && a.exists(1,-1,true)){//判断 填 ...

非常感谢
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |联系社区管理员|《永洪社区协议》
返回顶部