本帖最后由 白日蜜语 于 2022-5-13 07:20 编辑
【myApps/OBPM版本号】:v5.0- SP1
【浏览器类型】:Chrome/其他
【联系方式-QQ】:请留下您的QQ号码
【联系电话】: 请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:
Q:
我看到有个注释是如果是定时任务不能使用此方法,指的是注释前面的方法吗?我们就是想在定时任务里实现这个功能,这个可以实现嘛?
我是用您给的demo改成了自己表单的内容,脚本是写在定时任务里的。启动定时任务后没有任何反应。是我的代码有错误还是这个方法不能写在定时任务里呢?
(function(){
var tis="";
var rnt="";
var applicationId="sOZu9kthmxyP8qQfq0e";
var domainId="uumsxrgm1KEEqSZIoHs";
var process=getDocProcess(applicationid);
var t_date= format(getToday(),"yyyy-MM-dd");
var sql="select * from tlk_测试定时任务简单表单 where item_测试内容2='"+t_date+"'";
var query = process.queryBySQL(sql,domainid).datas;
//var query = queryBySQL(sql);
//如果是定时任务,不能用此方法
println(query);
if(query!=null){
for( var iter=query.iterator();iter.hasNext();){
doc = iter.next();
rnt = doc.getItemValueAsString("姓名");
csnr2 = doc.getItemValueAsString("测试内容2");
var content="给姓名:"+rnt+"发送"+csnr2;
// var flag= sendMessage("11e5-73eb-493d21f1-87f6-9fb671ea67bf",userid,"test",content);
sendWeixinTextMessage(rnt,content,domainId,applicationid);
})()
A: 参考这个
(function() {
Packages.java.lang.System.out.println("开始定时任务LZ");
//var process = getDocumentProcess();
var applicationid = "__JVjVOksgDuGLcvOGKQA";
var process = getDocProcess(applicationid);
Packages.java.lang.System.out.println("process--------->" + process);
var domainId = "96ikpSlXCyCGoPYwHDr";
var sql =
"select domainid,`ITEM_单据编号`,`ITEM_是否长周期`,`ITEM_接单日期` from `tlk_异议处理单` where `ITEM_关闭日期`='' and ITEM_接单日期 is not null";
var createMonitoProcess = new Packages.cn.myapps.runtime.dynaform.document.ejb.DocumentProcessBean.createMonitoProcess(
applicationid);
var query = process.queryBySQL(sql, domainId).datas;
Packages.java.lang.System.out.println("query" + query);
if (query != null && query.size() > 0) {
for (var iter = query.iterator(); iter.hasNext();) {
var billdata = iter.next();
var time = billdata.getItemValueAsDate("接单日期");
var recevicedate = format(time, "yyyy-MM-dd");
var today = getCurDate("yyyy-MM-dd");;
var diff = diffDays(recevicedate, today);
Packages.java.lang.System.out.println("diff" + diff);
var billCode = billdata.getItemValueAsString("单据编号");
Packages.java.lang.System.out.println("billCode" + billCode);
var flag = billdata.getItemValueAsString("是否长周期");
var subject = "请尽快处理异议单!";
var content = billCode + "异议处理单超时未处理,请您尽快处理!是否长周期:" + flag;
//测试用
{
var user = "LiuZhao"; //发送的用户
sendWeixinTextMessage(user, content, domainId, applicationid);
}
if (diff >= 3) {
//通知异议处理员
var user = "LiuZhao"; //发送的用户
sendWeixinTextMessage(user, content, domainId, applicationid);
if (diff >= 7) {
//通知部长
var user = "LiuZhao"; //发送的用户
sendWeixinTextMessage(user, content, domainId, applicationid);
if (diff >= 30) {
//通知分管领导
var user = "LiuZhao"; //发送的用户
sendWeixinTextMessage(user, content, domainId, applicationid);
}
}
}
}
}
})()
|