Processorsfor information how to continuously run methods in the background, in a client that will not be closed (automatically)
Cache
index
true
refresh
100d
id
doc
showRefresh
true
title
Refresh page
showDate
true
retry
Enable
servoy sReturnTypes
2100%
height: 30px;
2Supported Clients
sWordListINLINESmartClient
sWordListINLINEWebClient
sWordListINLINENGClient
servoy sSummary
12%30%58%
height: 30px;
3Methods Summary
void
Adds a cron job to the scheduler.
void
Adds a cron job to the scheduler.
void
Adds a cron job to the scheduler.
void
Adds a cron job to the scheduler.
void
Adds a job to the scheduler.
void
Adds a job to the scheduler.
void
Adds a job to the scheduler.
void
Adds a job to the scheduler.
void
Adds a job to the scheduler.
void
Adds a job to the scheduler.
Returns an array with the current jobs.
Returns the last job run from the scheduler.
Removes a job from the scheduler.
functionservoy sDetail
2100%
height:30px
2Methods Details
addCronJob
name
addCronJob(jobname, cronTimings, method)
des
sIndent
Adds a cron job to the scheduler.
{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addCronJob_snc|text=|trigger=button}{sub-section}{sub-section:addCronJob_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addCronJob_prs|text=|trigger=button}{sub-section}{sub-section:addCronJob_prs|trigger=none|class=sIndent}jobname
cronTimings
globalMethod
\[startDate]
\[endDate]
\[arguments]
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addCronJob_ret|text=|trigger=button}{sub-section}{sub-section:addCronJob_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addCronJob_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:addCronJob_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addCronJob_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:addCronJob_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addCronJob_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:addCronJob_sam|trigger=none}{code:language=javascript}
// see: http://www.quartz-scheduler.org/docs/tutorials/crontrigger.html for more info
// add a job that runs every 20 minutes after the hour (0,20,40)
plugins.scheduler.addCronJob('20mins','0 0/20 * * * ?',globalMethod)
// add a job that runs every day at 23:30 between now and 5 days from now
var dateNow = new Date();
var date5Days = new Date(dateNow.getTime()+5*24*60*60*1000);
plugins.scheduler.addCronJob('23:30','0 30 23 ? * *',globalMethod,dateNow,date5Days)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addJob|class=node}{tr:id=name}{td}h6.addJob{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}addJob{span}{span:id=iets|style=float: left;}\(jobname, startDate, globalMethod, \[repeatInterval(ms)], \[repeatCount], \[endDate], \[arguments]]/ [arguments]){span}{td}{tr}{tr:id=des}{td}{sub-section:addJob_des|text=|trigger=button}{sub-section}{sub-section:addJob_des|trigger=none|class=sIndent}Adds a job to the scheduler.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:addJob_snc|text=|trigger=button}{sub-section}{sub-section:addJob_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:addJob_prs|text=|trigger=button}{sub-section}{sub-section:addJob_prs|trigger=none|class=sIndent}jobname
startDate
globalMethod
\[repeatInterval(ms)]
\[repeatCount]
\[endDate]
\[arguments]]/ \[arguments]
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:addJob_ret|text=|trigger=button}{sub-section}{sub-section:addJob_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:addJob_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:addJob_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:addJob_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:addJob_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:addJob_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:addJob_sam|trigger=none}{code:language=javascript}
// add a job that runs at the given date (20 seconds in the future)
// and repeats that every 20 seconds for 40 times or the enddate is reached (0 for no repeats = just one call)
var startDate = new Date();
startDate.setTime(startDate.getTime()+20000);
var endDate = new Date(startDate.getTime()+100000);
plugins.scheduler.addJob('in20seconds',startDate,globalMethod,20000,40,endDate)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getCurrentJobNames|class=node}{tr:id=name}{td}h6.getCurrentJobNames{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[String]\[]{span}{span:id=iets|style=float: left; font-weight: bold;}getCurrentJobNames{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{tr:id=des}{td}{sub-section:getCurrentJobNames_des|text=|trigger=button}{sub-section}{sub-section:getCurrentJobNames_des|trigger=none|class=sIndent}Returns an array with the current jobs.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getCurrentJobNames_snc|text=|trigger=button}{sub-section}{sub-section:getCurrentJobNames_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:getCurrentJobNames_prs|text=|trigger=button}{sub-section}{sub-section:getCurrentJobNames_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:getCurrentJobNames_ret|text=|trigger=button}{sub-section}{sub-section:getCurrentJobNames_ret|trigger=none|class=sIndent}[String]\[]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getCurrentJobNames_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getCurrentJobNames_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getCurrentJobNames_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getCurrentJobNames_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getCurrentJobNames_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getCurrentJobNames_sam|trigger=none}{code:language=javascript}
// Returns an array of current jobnames
plugins.scheduler.getCurrentJobNames()
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getLastRunJobName|class=node}{tr:id=name}{td}h6.getLastRunJobName{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[String]{span}{span:id=iets|style=float: left; font-weight: bold;}getLastRunJobName{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{builder-show:permission=edit}{tr:id=des}{td}{sub-section:getLastRunJobName_des|text=|trigger=button}{sub-section}{sub-section:getLastRunJobName_des|trigger=none|class=sIndent}Replace with description{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getLastRunJobName_snc|text=|trigger=button}{sub-section}{sub-section:getLastRunJobName_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:getLastRunJobName_prs|text=|trigger=button}{sub-section}{sub-section:getLastRunJobName_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:getLastRunJobName_ret|text=|trigger=button}{sub-section}{sub-section:getLastRunJobName_ret|trigger=none|class=sIndent}[String]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getLastRunJobName_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getLastRunJobName_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getLastRunJobName_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getLastRunJobName_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=sam}{td}*Sample*\\{sub-section:getLastRunJobName_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getLastRunJobName_sam|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeJob|class=node}{tr:id=name}{td}h6.removeJob{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}removeJob{span}{span:id=iets|style=float: left;}\(jobname){span}{td}{tr}{tr:id=des}{td}{sub-section:removeJob_des|text=|trigger=button}{sub-section}{sub-section:removeJob_des|trigger=none|class=sIndent}
A cron job must have at least one minute between each execution (otherwise it won't execute).
{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:removeJob_snc|text=|trigger=button}{sub-section}{sub-section:removeJob_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:removeJob_prs|text=|trigger=button}{sub-section}{sub-section:removeJob_prs|trigger=none|class=sIndent}jobname
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:removeJob_ret|text=|trigger=button}{sub-section}{sub-section:removeJob_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:removeJob_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:removeJob_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:removeJob_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:removeJob_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:removeJob_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:removeJob_sam|trigger=none}{code:language=javascript}
// removes a job 'myjob' from the scheduler
plugins.scheduler.removeJob('myjob')
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}