电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

大任务后台处理中心,节省时间的好帮手

来源:金蝶云社区作者:金蝶2024-09-233

大任务后台处理中心,节省时间的好帮手


业务开发小白又遇到了新问题,这次应邀前来解决问题的老师给小白推荐了一款神器:大任务后台处理中心。有了这个宝贝,以后员工好好工作,提前下班不是问题~


今天就为大家揭开大任务后台处理中心的神秘面纱~




1 何谓“大任务后台处理中心”


大任务后台处理中心是一种后台事件处理的状态反馈容器,通俗点讲它就是用来展示进入后台运行任务的状态。


2 使用场景


在系统里经常会有一些耗时操作,如批量审核,批量删除,批量生成凭证、引入引出等,为了节省时间,用户会希望这些操作可以转到后台处理,不影响其他流程。

那么我们可以使用大任务后台处理中心,将任务进行异步处理,还可以展示处理状态以及进度


3 怎么把任务转入大任务处理中心


大任务处理中心默认是以全局悬浮球的形式放置在页面右下角,可以拖拽至页面任意位置



那么我们要怎么把任务转入这个悬浮球呢?给大家举个简单的例子:


1、新建动态表单

2、添加按钮,标识btnjobdispatch

3、挂上插件:


kd.bos.schedule.form.sample.JobDispatchFormPlugin


插件里面是控制任务执行逻辑


private void dispatch() {
JobInfo jobInfo = new JobInfo(); // 创建任务目标
jobInfo.setAppId("bos"); // 执行类所在的应用名
jobInfo.setJobType(JobType.REALTIME); // 即时执行
jobInfo.setRunByUserId(Long.valueOf(RequestContext.get().getUserId()));
jobInfo.setName("test job"); jobInfo.setId(UUID.randomUUID().toString()); // 随机产生一个JobId
jobInfo.setTaskClassname("kd.bos.schedule.sample.MyTask");
Map<String,Object> params = new HashMap<>();
params.put("time", 40); // 自定义参数,示例任务执行循环次数,80次
jobInfo.setParams(params); // 回调参数,设置一个回调处理标识(actionId)
CloseCallBack closeCallBack = new CloseCallBack(this, "taskcloseback"); // 创建任务进度界面参数
JobFormInfo jobFormInfo = new JobFormInfo(jobInfo); jobFormInfo.setCaption("任务执行进度"); // 进度界面标题
jobFormInfo.setCloseCallBack(closeCallBack); // 任务完成后的回调处理
jobFormInfo.setCanBackground(true); // 允许切换到后台执行
jobFormInfo.setCanStop(true); // 允许中途取消
jobFormInfo.setClickClassName("kd.bos.schedule.sample.MyTaskClick"); // 发布任务,并显示进度
JobForm.dispatch(jobFormInfo, this.getView());
}



简单三步,我们就能在任务执行时询问用户是否将任务转入后台处理。


来吧,展示!



现在你就可以进行其他任意操作,赚到啦~

ps:悬浮球中间展示的是完成任务占所有任务的百分比,悬停时候会展示运行中的任务个数。


4 如何查看我的任务详情


我们现在已经把任务成功转入处理中心了,但有些小伙伴工作繁忙,时间久了就想不起具体的任务内容了,要怎么查看任务详情呢



点击任务项,查看具体任务条目详情

大任务后台处理中心,节省时间的好帮手

业务开发小白又遇到了新问题,这次应邀前来解决问题的老师给小白推荐了一款神器:大任务后台处理中心。有了这个宝贝,以后员工好好工作,提...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信