ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / Windows functions / Windows Scheduler functions
  • Overview
  • Details of the TriggerScheduledTask structure
  • Variables that can be used according to the type of task
  • Example
  • Example for adding a task
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Overview
The TriggerScheduledTask structure is used to define all the events that will define the execution of a task. The variables of this structure are reinitialized by SchedulerReset.
This structure must be filled before using SchedulerAddTrigger or SchedulerAddTask.
The default trigger is set to every day at 9:00 AM.
Details of the TriggerScheduledTask structure
The parameters to be specified in the TriggerScheduledTask structure depend on the type of trigger defined for the scheduled task.
Indeed, a scheduled task can be: run on a daily, weekly or monthly basis, run once, run when the computer is started, run when the system is idle.
The type of trigger defined for the scheduled task is determined by the TriggerScheduledTask.Type variable. Below are the details of this and all the other variables of the TriggerScheduledTask structure.
TriggerScheduledTask.BeginDateDate
Date from which the task can be performed. By default, this date corresponds to the creation date of the task.
Type of associated task: Daily task, weekly task and monthly task.
TriggerScheduledTask.CaptionCharacter string
Text of the trigger (event that starts the scheduled task).
This variable is read-only and it is updated when a trigger is read (SchedulerTriggerProperties)
TriggerScheduledTask.DateDate
Date when the task will be run.
Type of associated task: Task run once only.
TriggerScheduledTask.DayInteger
The task will be performed on this day of the month. Can correspond to:
  • the number of a day (between 1 and 31)
  • the name of a day + its position in the monthExample: 1st Monday of the month: schedMonday + schedFirst

The available values are:
  • schedMonday, schedTuesday, schedWednesday, schedThursday, schedFriday, schedSaturday, schedSunday
  • schedFirst, schedSecond, schedThird, schedFourth, schedLast. The task is performed every 1st of each month by default.

Type of associated task: Monthly task
TriggerScheduledTask.DayOfWeekInteger
The task will be performed on this day of the week. Corresponds to the name of a day + its position in the month
Example: 1st Monday of the month: schedMonday + schedFirst
The available values are: schedMonday, schedTuesday, schedWednesday, schedThursday, schedFriday, schedSaturday, schedSunday
The task is performed every Monday by default.
Type of associated task: Weekly task
TriggerScheduledTask.EndDateDate
Date from which the task will no longer be performed. To specify no end date, use an empty string.
No end date is specified by default.
Type of associated task: Daily task, weekly task and monthly task.
TriggerScheduledTask.ForcedStopBoolean.
If this parameter is set to True, stops the task currently run when the repeat duration is exceeded.
This variable is set to False by default.
Type of associated task: Daily task, weekly task, monthly task and task run once.
TriggerScheduledTask.IdleWaitInteger in minutes
Amount of idle time required before performing the task. This duration is set to 10 minutes by default.
Type of associated task: Run when the system is idle
TriggerScheduledTask.IntervalInteger
Number of days or number of weeks between each execution. This variable is set to 1 by default.
Type of associated task: Daily task or weekly task.
TriggerScheduledTask.MonthInteger
The task will be performed during this month. Corresponds to one or more months: schedJanuary, schedFebruary, schedMarch, schedApril, schedMay, schedJune, schedJuly, schedAugust, schedSeptember, schedOctober, schedNovember, schedDecember.
Example: schedJanuary + schedAugust: the task will be performed in January and in August.
The task is performed every month by default.
Type of associated task: Monthly task
TriggerScheduledTask.RepeatDurationInteger in minutes.
The task will be repeated during the specified duration. This duration is set to 60 minutes by default.
Type of associated task: Daily task, weekly task and monthly task.
TriggerScheduledTask.RepeatIntervalInteger in minutes
The task will be repeated during this interval (0 if the task must be performed once). The task is not repeated by default.
Type of associated task: Daily task, weekly task, monthly task and task run once.
TriggerScheduledTask.TimeTime
Time when the task will be run. This variable is set to 9:00 AM by default
Type of associated task: Daily task, weekly task, monthly task and task run once.
TriggerScheduledTask.TypeThis variable can take one of the following values:
schedDaily
(default value)
Run on a daily basis
schedIdleRun when the system is idle.
schedLogonRun when starting a session.
schedMonthlyRun on a monthly basis.
schedOnceRun once.
schedSystemStartRun at system startup.
schedWeeklyRun on a weekly basis.
Variables that can be used according to the type of task
The table below presents the variables that can be used according to the type of task:
schedDailyTriggerScheduledTask.Time
TriggerScheduledTask.Interval
TriggerScheduledTask.BeginDate
TriggerScheduledTask.EndDate
TriggerScheduledTask.RepeatInterval
TriggerScheduledTask.RepeatDuration
TriggerScheduledTask.ForcedStop
schedIdleNo specific variable
schedLogonNo specific variable
schedMonthlyTriggerScheduledTask.Time
TriggerScheduledTask.Day
TriggerScheduledTask.Month
TriggerScheduledTask.BeginDate
TriggerScheduledTask.EndDate
TriggerScheduledTask.RepeatInterval
TriggerScheduledTask.RepeatDuration
TriggerScheduledTask.ForcedStop
schedOnceTriggerScheduledTask.Time
TriggerScheduledTask.Date
TriggerScheduledTask.RepeatInterval
TriggerScheduledTask.RepeatDuration
TriggerScheduledTask.ForcedStop
schedSystemStartNo specific variable
schedWeeklyTriggerScheduledTask.Time
TriggerScheduledTask.Interval
TriggerScheduledTask.BeginDate
TriggerScheduledTask.EndDate
TriggerScheduledTask.RepeatInterval
TriggerScheduledTask.RepeatDuration
TriggerScheduledTask.ForcedStop
Example

Example for adding a task

SchedulerReset()
// Create the scheduled task
ScheduledTask.Application = "MyExecutable.exe"
ScheduledTask.CommandLine = QryAllAboutBackup.Name
ScheduledTask.SystemOn = True
ScheduledTask.Comment = "WINDEV program"
 
// Create the triggers for the scheduled task
// RADIO_BackupType is a radio button proposing
// a single backup, a weekly backup or a monthly backup ...
 
TriggerScheduledTask.Type = RADIO_BackupType
 
// Execution date of the single backup
IF RADIO_nBackupType = schedDaily THEN
IF EDT_SingleDate <> "" THEN
IF EDT_SingleTime <> "" THEN
TriggerScheduledTask.Date = EDT_SingleDate
TriggerScheduledTask.Time = EDT_SingleTime
ELSE
Info("Enter a valid backup time.")
RETURN
END
ELSE
Info("Enter a valid backup date.")
RETURN
END
END
// Monthly backup
IF RADIO_BackupType = schedMonthly THEN
IF EDT_SingleTime <> "" THEN
TriggerScheduledTask.Day = RADIO_DayOfMonth
TriggerScheduledTask.Time = EDT_SingleTime
ELSE
Info("Enter a valid backup time.")
RETURN
END
END
// Weekly backup
IF RADIO_BackupType = schedWeekly THEN
IF EDT_SingleTime <> "" THEN
TriggerScheduledTask.DayOfWeek = RADIO_DayOfWeek
TriggerScheduledTask.Time = EDT_SingleTime
ELSE
Info("Enter a valid backup time.")
RETURN
END
END
IF NOT SchedulerAddTask("MyTask") THEN
Error(ErrorInfo())
ELSE
Info("The application was added to the task manager of Windows")
END
Minimum version required
  • Version 10
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 08/29/2022

Send a report | Local help