except
Defines the dates that are exceptions to the on dates of a job stream. See on for more information.
Syntax
except [runcycle name]
[validfrom date] [validto date]
[description ”text”]
{date|day|[folder/]calendar|request|”icalendar”|runcyclegroup}
[,...]
[fdignore|fdnext|fdprev][subset subsetname AND|OR]
Arguments
- runcycle name
- Specifies a label with a friendly name for the run cycle specified in the following lines.
- valid from date ... valid to date
- Delimits the time frame during which the job stream is active, that is the job stream is added to the production plan. Note that the date specified as valid to value is not included in the run cycle, therefore on this date the job stream is not active.
- description ”text”
- Contains a description of the run cycle.
- date
- Specifies a run cycle that runs on specific
dates. The syntax used for this type is:
yyyymmdd [,yyyymmdd][,...]
For example, for a job stream that is scheduled to run on the 25th of May 2009 and on the 12th of June 2009 the value is:on 20090525,20090612
- day
- Specifies a run cycle that
runs on specific days. The syntax used for this type is:
{mo|tu|we|th|fr|sa|su}
For example, for a job stream that is scheduled to run every Monday the value is:on mo
- [folder/]calendar
- The dates specified in a calendar with
this name. The calendar name can be followed by an offset in the following
format:
{+ | -}n {day[s] | weekday[s] | workday[s]}
Where:
- n
- The number of days, weekdays, or workdays.
- days
- Every day of the week.
- weekdays
- Every day of the week, except Saturday and Sunday.
- workdays
- Every day of the week, except for Saturdays and Sundays (unless otherwise specified with the freedays keyword) and for the dates marked either in a designated non-working days calendar or in the holidays calendar.
- request
- Selects the job stream only when requested. This is used for job
streams that are selected by name rather than date. To prevent a scheduled
job stream from being selected for JnextPlan, change its definition
to ON REQUEST. Note: When attempting to run a job stream that contains "on request" times, consider that:
- "On request" always takes precedence over "at".
- "On request" never takes precedence over "on".
- icalendar
- Represents a standard used to specify a recurring rule that describes
when a job stream runs.
The syntax used for run cycle with type icalendar is the following:
FREQ={DAILY|WEEKLY|MONTHLY|YEARLY}
[;INTERVAL=[-]n]
[;{BYFREEDAY|BYWORKDAY|BYDAY=weekday_list|
BYMONTHDAY=monthday_list}]
where the default value for keyword INTERVAL is 1.
Using icalendar you can specify that a job stream runs:- every n days
- by using the following format:
FREQ=DAILY[;INTERVAL=n]
where the value set for valid from is the first day of the resulting dates.
For example, for a job stream that is scheduled to run daily the value is:
For a job stream that is scheduled to run every second day the value is:FREQ=DAILY
FREQ=DAILY;INTERVAL=2
- every free or work days
- by using the following format:
FREQ=DAILY[;INTERVAL=n]
;BYFREEDAY|BYWORKDAY
For example, for a job stream that is scheduled to run every non-working day the value is:
For a job stream that is scheduled to run every second workday the value is:FREQ=DAILY;BYFREEDAY
FREQ=DAILY;INTERVAL=2;BYWORKDAY
- every n weeks on specific weekdays
- by using the following format:
FREQ=WEEKLY[;INTERVAL=n]
;BYDAY=weekday_list
where the value set for weekday_list is[SU][,MO][,TU][,WE][,TH][,FR][,SA]
For example, for a job stream that is scheduled to run every week on Friday and Saturday the value is:
For a job stream that is scheduled to run every three weeks on Friday the value is:FREQ=WEEKLY;BYDAY=FR,SA
FREQ=WEEKLY;INTERVAL=3;BYDAY=FR
- every n months on specific dates of the month
- by using the following format:
FREQ=MONTHLY[;INTERVAL=n]
;BYMONTHDAY=monthday_list
where the value set for monthday_list is represented by a list of[+number_of_day_from_beginning_of_month] [-number_of_day_from_end_of_month] [number_of_day_of_the_month]
For example, for a job stream that is scheduled to run monthly on the 27th day the value is:
For a job stream that is scheduled to run every six months on the 15th and on the last day of the month the value is:FREQ=MONTHLY;BYMONTHDAY=27
FREQ=MONTHLY;INTERVAL=6;BYMONTHDAY=15,-1
- every n months on specific days of specific weeks
- by using the following format:
FREQ=MONTHLY[;INTERVAL=n]
;BYDAY=day_of_m_week_list
where the value set for day_of_m_week_list is represented by a list of[+number_of_week_from_beginning_of_month] [-number_of_week_from_end_of_month] [weekday]
For example, for a job stream that is scheduled to run monthly on the first Monday and on the last Friday the value is:
For a job stream that is scheduled to run every six months on the 2nd Tuesday the value is:FREQ=MONTHLY;BYDAY=1MO,-1FR
FREQ=MONTHLY;INTERVAL=6;BYDAY=2TU
- every n years
- by using the following format:
FREQ=YEARLY[;INTERVAL=n]
where the value set for valid from is the first day of the resulting dates.
For example, for a job stream that is scheduled to run yearly the value is:
For a job stream that is scheduled to run every two years the value is:FREQ=YEARLY
FREQ=YEARLY;INTERVAL=2
Note: The following limitations apply:- the maximum supported interval for a daily run cycle is 31 days.
- the maximum supported interval for a weekly run cycle is 8 weeks.
- the maximum supported interval for a monthly run cycle is 12 months. For run cycles specifying the day of the week based on the month, for example the third Saturday or the second Friday, the maximum supported interval is 5 days.
- the maximum supported interval for a yearly run cycle is 10 years.
- runcyclegroup
- Specified one or more run cycles that combined
together produce a set of run dates for a job stream. The run cycle group must be expressed using
the following syntax:
$RCG runcyclegroupname
. - fdignore|fdnext|fdprev
- Specifies
a rule that must be applied when the date selected for exclusion falls
on a non-working day. It can be one of the following:
- fdignore
- Do not exclude the date.
- fdnext
- Exclude the nearest workday after the non-working day.
- fdprev
- Exclude the nearest workday before the non-working day.
- subset subsetname
- Specifies the name of the subset. If you do not specify a name, SUBSET_1, is used by default.
- AND|OR
- By default, run cycles within a subset are in a logical OR relationship but you can change it to a logical AND, as long as the run cycle group result is a positive date or set of dates (Inclusive).
For an explanation about remaining keywords contained in the except syntax refer to on.
Comments
You can define multiple instances of the except keyword for the same job stream. Each instance is equivalent to a run cycle to which you can associate a freeday rule.
Multiple except instances must be consecutive within the job stream definition.
Each instance of the keyword can contain any of the values allowed by the except syntax.
Examples
testskd2
to run every weekday except those
days whose dates appear on calendars named monthend
and holidays
:
schedule testskd2 on weekdays
except monthend,holidays
testskd3
to run every weekday except
May 15, 2018 and May 23, 2018:
schedule testskd3 on weekdays
except 05/15/2018,05/23/2018
testskd4
to run every day except
two weekdays prior to any date appearing on a calendar named monthend
:
schedule testskd4 on everyday
except monthend-2 weekdays
sked4
to
run on Mondays, Tuesdays, and 2 weekdays prior to each date listed
in the monthend
calendar. If the run date is a non-working
day, run the job stream on the nearest following workday. Do not run
the job stream on Wednesdays. schedule sked4
on mo
on tu, MONTHEND -2 weekdays fdnext
except we
testskd2
to
run every weekday except for the days listed in monthend
.
If a date in monthend
falls on a non-working day,
exclude the nearest workday before it. In this example, the non-working
days are Saturdays, Sundays, and all the dates listed in the default holidays
calendar
. schedule testskd2
on weekdays
except MONTHEND fdprev