sf中schedule设定

news/2024/7/6 5:09:02

  博客园龄有两年多了,看了一下我发的文章数和最后发布的日期,不禁的心头一怔,已经有一年都没有写更新博客了。突然想起一个句子好像说的是我:间歇性踌躇满志,持续性懒惰等死。最近也看到一位好朋友的qq个性签名,人生是走出来的美丽。是啊,人生是走出来的美丽,不是等出来的辉煌。。。

  言归正传:

  在salesforce中的schedule job是一个很重要的东西,可以对程序进行定时执行,和批量执行的处理。

  在console里设置schedule job的方法:

  System.schedule('schedule_job_name','20 30 8 10 2 ?', new schedule_job_Class());   ss mm hh

  这样简单的设置,只能够实现的执行最短周期为1小时。可是在项目的开发过程中会遇到各种的需求,有需要没几分钟执行一次的情况那么,我们就不能够这样简单的设置了:

  

global class ScheduleClassName implements Schedulable {
    //ScheduleJob执行
    global void execute(SchedulableContext sc) {
        // 1.ScheduleJob情报取得
        CronTrigger ct = [SELECT id, CronExpression, StartTime, EndTime, NextFireTime, PreviousFireTime, TimeZoneSidKey 
                            FROM CronTrigger 
                            WHERE id = :sc.getTriggerId()];
        // 2.実行秒数から何回目の実行か判別
        String jobTime = ct.CronExpression;
        // 3.需要处理的内容
        //---------------------------//

        // 4.删除当前的ScheduleJob (ScheduleJob 不可以重名)
        System.abortJob(ct.id);

        // 5.1.获取当前的时间
        Datetime nowDate = System.now();
        // 5.2设定隔几秒执行(现在是隔5秒执行)
        nowDate = nowDate.addMinutes(Integer.valueOf(5));
        jobTime = nowDate.format('0 m * * * ?');
        System.debug('***** 下次的执行时间 : ' + jobTime);
        String strTime = DateTime.now().format('yyyyMMddHHmmssSSS');
        System.schedule('Schedule_Job_Name'+strTime,jobTime, new ScheduleJobClass());
    }
}

以上每隔5秒执行一次scheduleJob的思想是,将当前的job删除掉然后再设定一个,为5秒后执行,这样就会每个5秒后就会执行scheduleJob了。

 

转载于:https://www.cnblogs.com/yuxin-555xt/p/sf_scheduleSettting.html


http://www.niftyadmin.cn/n/1130370.html

相关文章

sqlzoo--self join

sqlzoo–select basics,select from world sqlzoo–select from nobel ,select in select sqlzoo–sum and count sqlzoo–the join operation sqlzoo–More JOIN operations sqlzoo–using null sqlzoo–self join sqlzoo–self join 已有字段: table:st…

Linux上安装Apache环境及安装过程报错解决方案(零初始环境)

2019独角兽企业重金招聘Python工程师标准>>> Note:要从零开始搭建,就不要嫌中间遇到各种eggache的问题! 一.下载apache源代码 1.下载地址:http://httpd.apache.org/download.cgi 找稳定的最新的版本(Stabl…

ASP.NET 应用程序生命周期概览

本文描述应用程序生命周期的摘要信息,列表了重要的生命周期事件并描述如何编写合适的处理代码。在 ASP.NET 中,部分处理步骤只在应用程序初始化并处理请求时才会发生。另外,对来自浏览器的 ASP.NET 请求而提供服务仅是 Web 服务器架构的一小部…

[leetcode]Search in Rotated Sorted Array II @ Python

原题地址:https://oj.leetcode.com/problems/search-in-rotated-sorted-array-ii/ 题意: Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed? Would this affect the run-time complexity? How and why? Wri…

父类不能转换成子类

父类不能转换成子类 Exception in thread "main" java.lang.ClassCastException: Person cannot be cast to Boyat Test.main(Test.java:5)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMe…

ansible安装和简单使用

一、安装1、安装第三方epel源centos 5的epelrpm -ivh http://mirrors.sohu.com/fedora-epel/5/x86_64/epel-release-5-4.noarch.rpmcentos 6的epelrpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm由于是6版本所以安装6的epel2、安装ansibl…

Textarea高度随内容自适应地增长,无滚动条

<HTML> <HEAD> <meta http-equiv"Content-Type" content"text/html; charsetUTF-8"> <TITLE>枫芸志 文本框textarea高度自适应增长/伸缩</TITLE> </HEAD> <BODY><textarea id"txtContent" rows&q…

岛田庄司《占星术杀人魔法》读后感

昨天晚上夜谈的时候&#xff0c;聊到了少年包青天里的一个分尸案&#xff0c;今天查了查&#xff0c;叫《隐逸村案》&#xff0c;里面实用6个人的尸体拼出7个人的假象&#xff0c;立即就想到了《占星术杀人案》。其有用这个想法的小说还真不少&#xff0c;包青天里的应该是借鉴…