天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

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

[已解决] 后台定时任务如何调用工作日历的函数

[复制链接]
华东地质 发表于 2013-1-28 12:44:02 | 显示全部楼层 |阅读模式
本帖最后由 purple 于 2013-1-28 14:43 编辑

我在后台任务里写的脚本,
  1. var starttime1 =format(getToday(),"yyyy-MM-dd")+" 09:00:00";
  2. var starttime2=format(getToday(),"yyyy-MM-dd")+" 10:00:00";
  3. var value=getWorkingTimesCount(starttime1,starttime2);
复制代码
执行任务会报错。在论坛里查了下应该是因为后台任务是独立运行,也就找不到对应域下的工作日历。
我想问下,怎么在后台任务里写脚本能够来执行getWorkingTimesCount()这个函数?
bess 发表于 2013-1-28 13:50:56 | 显示全部楼层
您好,本地测试一下,大约10分钟之后回复您.
同时,请问您具体是什么需求,需要在后台获取工作日历的呢?
bess 发表于 2013-1-28 13:58:09 | 显示全部楼层
您好,本地测试,会报错,错误信息如下图:
未命名.jpg
请问您那边的错误信息是否一致呢?
 楼主| 华东地质 发表于 2013-1-28 13:59:03 | 显示全部楼层
回复 2# bess


    就是在后台任务里执行脚本,脚本中要执行getWorkingTimesCount这个函数。执行的时候报错,应该就是baselib.js里定义的getWorkingTimesCount函数执行有问题,看了下是因为这个函数在后台任务里执行的时候获取不到相应的域值。
你可以在后台任务里测试下这个脚本
  1. var starttime1 =format(getToday(),"yyyy-MM-dd")+" 09:00:00";
  2. var starttime2=format(getToday(),"yyyy-MM-dd")+" 10:00:00";
  3. var value=getWorkingTimesCount(starttime1,starttime2,"标准日历");
  4. println(value+"测试工作日历------------");
复制代码
 楼主| 华东地质 发表于 2013-1-28 14:00:04 | 显示全部楼层
回复 3# bess


    是的,错误信息
  1. 13:52:25,911  INFO Task:569 - ************ Execute Start *************
  2. 13:52:25,911  WARN Task:585 - Run TaskScript Error: JavaScriptRunning:[TASK(11e2
  3. -690e-c0c2166c-8541-2164d2906c4f).测试工作日历.TaskScript]: Wrapped java.lang.Nu
  4. llPointerException (baselib#1085)
  5. 13:52:25,911  INFO Task:617 - ************ Execute End *************
复制代码
bess 发表于 2013-1-28 14:01:28 | 显示全部楼层
麻烦您提供一个合理的业务场景,以便我们这版结合平台为您提供最优解决方案或者提交需求,谢谢!!!!!!!!!!!!!!!

同时,楼上我已经贴出了我这边的错误信息,请您注意查看,告知一下,是否错误信息与我这边测试的相同.
 楼主| 华东地质 发表于 2013-1-28 14:04:16 | 显示全部楼层
回复 6# bess

我已经在回复里说了,要用getWorkingTimesCount这个函数获取两个时间直接相隔的工作时间值。但是这个函数在后台的任务里是执行有问题的。
purple 发表于 2013-1-28 14:09:56 | 显示全部楼层
回复 7# 华东地质


    您好,您的猜测原理是对的,后台任务读取不到工作日志,所有会报空指针。同事的意思是,希望您提供一个实际的业务场景,以便我们这边分析,是否需要提交新需求至研发那边,在后期的版本优化。请知悉。

p.s:我们知道您想要的效果,我们所想知道是,具体是什么需求,您需要根据两个日期间的相隔工作时间,以便通过实际的业务场景,去支撑所提交的新需求。
 楼主| 华东地质 发表于 2013-1-28 14:10:02 | 显示全部楼层
回复 6# bess


    需求很简单是:我要写个定时任务定时执行,通过getWorkingTimesCount获取两个时间之间相隔的工作时间值,然后把这个值写入到表单中。现在就是因为getWorkingTimesCount这个函数执行不了所以功能实现进展不下去了。
 楼主| 华东地质 发表于 2013-1-28 14:12:25 | 显示全部楼层
回复 8# purple


    我现在想解决的问题就是有啥办法能够在后台任务脚本里获取到两个日期之间的工作时间值?

本版积分规则

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

GMT+8, 2026-8-12 20:49

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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