找回密码
 注册成为天翎用户
查看: 869|回复: 2

[已解决] 两个用户同时打开表单有编号相同的问题

[复制链接]
联合学信息 发表于 2017-6-5 09:22:58 | 显示全部楼层 |阅读模式
本帖最后由 six 于 2017-6-5 14:42 编辑

在没有提交的情况下,第一个账号打开,编号为001  ,第二个账号打开 ,编号为001.,
希望第二个账号打开为002


联系qq   905434206
 楼主| 联合学信息 发表于 2017-6-5 14:35:16 | 显示全部楼层
var doc1=getCurrentDocument();
var value1=getItemValueAsString("编号");
if(value1.trim().length()<=0){
var prx="CC";  //前缀
var year=getYear(getToday()); //当前年
var month=getMonth(getToday());
var length1=parseInt(month.toString().length);
if(length1<=1){
      month="0"+month;        
}
var day = getDay(getToday());
var length2=parseInt(day.toString().length);
if(length2<=1){
      day="0"+day;
}          
var digit=3;  //指定增长序列号位数
var rtn=prx+year+month+day;
var sql="select * from tlk_加班申请  where item_编号 like '%"+rtn+"%' order by created desc";  //查询对应的表单编号
var doc=findBySQL(sql);
println(doc+"===doc====");
var val="";
if(doc==null){
    value1=prx+year+month+day+"001";
}else{
       var test1=doc.getItemValueAsString("编号");
       var test2=parseInt(test1.substr(rtn.length));
       println(test2+"===test2====");
       var test3=test2+1;
       if (test3< 9) {
                   for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                         val += "0";
                   }println(val+"======val===");
                   val =val+test3;
            } else if (test3 < 99) {
                    for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                          val += "0";
                    }
                  val =val+test3;
           } else if (test3 < 999) {
                    for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                           val += "0";
                   }
                  val =val+test3;
      } else if (test3 < 9999) {
                     for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                           val += "0";
                     }
                    val =val+test3;
           } else if (test3 < 99999) {
                     for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                             val += "0";
                     }
                    val =val+test3;
            } else if (test3 < 999999) {
                      for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                            val += "0";
                      }
                     val =val+test3;
            } else if (test3< 9999999) {
                     for (var temp = 1; temp <= digit - test3.toString().length; temp++) {
                           val += "0";
                    }
                    val =val+test3;
            } else
                val =val+test3;
      rtn=prx+year+month+day+val;
      value1=rtn;
  }
}
doc1.findItem("编号").setValue(value1);


感谢值班大神,这是脚本,写在发起人之后的那条线的执行脚本,就可以解决了,非常感谢值班大神这么厉害。结帖。
回复

使用道具 举报

six 发表于 2017-6-5 14:43:38 | 显示全部楼层
联合学信息 发表于 2017-6-5 14:35
var doc1=getCurrentDocument();
var value1=getItemValueAsString("编号");
if(value1.trim().length()

已与客户解决问题,代码如上
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-13 22:23

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表