ESP - Enterprise System Platform
ESP - Enterprise System Platform
SETTING UP SCHEDULES
It is simple to set up schedules for Events, because the product uses free format, everyday English for specifying schedule criteria. If any parameter you specify is ambiguous, the product attempts a context analysis to work out the most likely meaning.
The following topics are presented in sequence, or you can select them by number.
1 How a schedule is defined
2 The elements of a schedule specification
3 Schedule qualifiers
4 Data set triggering
5 Schedule examples
HOW A SCHEDULE IS DEFINED
A schedule specification can be in two parts, both of which are optional. The first part gives a starting date and time, such as:
'9AM, JAN 1ST' or 'MIDNIGHT, 24 JUNE 1996' or '95.245'
The second part of the schedule specification describes an algorithm for computing subsequent times and dates. Examples of this are:
'EVERY 2 WEEKS' or 'MONTHLY' or 'YEARLY' or 'ONCE'
Most of the times you define schedules, you will not need to specify a starting time and date. The first time and date that match the criteria you have entered will be selected. Examples of this are:
'DAILY AT 19.00' or 'WEDNESDAYS AT 3PM' or '13.00 WEEKDAYS'
Sometimes, though, you will want to specify both an algorithm and a starting date and time. In this case you should separate the two parts of the specification with the keyword STARTING. For example:
'DAILY AT 3PM STARTING JAN 1ST' &/ 'WEEKDAYS EXCEPT WEDNESDAYS STARTING MON (2) JUNE'
Specifying ONCE requests, as you might expect, no repetition of the schedule. If this is specified on a SCHEDULE, SUSPEND, RESUME, HOLD or RELEASE statement within an Event definition, the statement is deleted immediately after execution.
THE ELEMENTS OF A SCHEDULE SPECIFICATION
The various elements of a date which you can use in your schedule specifications for Events are described in the following pages. In general, words can often be shortened to only three characters. There is no need to leave spaces between words as long as there are other delimiting factors such as in
'SAT25JUN' &/ 'MON (1) JULY' &/ 'EVERY5MINUTES'.
You can work through the following topics in sequence, or select them by number.
1. Days of the week 5. Days of months
2. Month names 6. Relative days
3. Time zones 7. Julian date
4. Times of day
Days of the week
Naturally, SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY and SATURDAY are recognized as days of the week. You can also use the plural forms, such as THURSDAYS and MONDAYS. If you specify a day of the week and a date, and the two do not match, the resulting schedule adjusts automatically. You get the first specified day of the week on or after the date you requested. For example, 26th October
1995 falls on a Saturday. If you mistakenly specified SUN OCT 26TH, you would actually get SUN OCT 27TH. You can specify multiple days of the week too.
For example, TUE THUR
25TH DEC 1995 would result in the first Tuesday or Thursday after December 25th.
Month names
As you might expect, the recognized month names are JANUARY, FEBRUARY, MARCH, APRIL, MAY, JUNE, JULY, AUGUST, SEPTEMBER, OCTOBER, NOVEMBER and DECEMBER. You can abbreviate when you are specifying a schedule. Use month names which you have shortened to three letters if you prefer - JAN, AUG & JUN.
Time zones
You can set up a schedule using any time zone:
LT Local time
LOCAL Local time
GMT Greenwich Mean Time
AST Atlantic Standard Time
EST Eastern Standard Time
CST Central Standard Time
MST Mountain Standard Time
PST Pacific Standard Time
ADT Atlantic Daylight Time
EDT Eastern Daylight Time
CDT Central Daylight Time
MDT Mountain Daylight Time
PDT Pacific Daylight Time
BST British Summer Time
Times of day
The following formats for times of day are recognized (where h and hh = hours,
mm = minutes and ss = seconds).
hh.mm &/ hh:mm &/ hh:mm:ss &/ hmm.
If a number is followed by 'AM' or 'PM' or a time zone name, it is assumed to be a time specification unless an explicit time specification has already been detected.
For example: '3 AM' &/ '6 PM' &/ '1300 GMT'.
Days of months
If a number is followed by any of the qualifiers ST, ND, RD, or TH, it is recognized as a day of the month. If you leave off the qualifier, then the day of the month is recognized by context. The following are all valid:
'3RD JAN'
'21ST'
'24 TH'
'JULY12'
'6NOVEMBER'
If you use a number joined to the name of a month, it is also recognized as a day of the month. For example:
JUN3 June 3rd
22OCT October 22nd
DEC2585 December 25th 1995
6NOV1985 November 6th 1995
Relative days
A relative day number can be included after a day of week name, for example MONDAY (n). The exact meaning of 'MONDAY (n)' depends on what else you include in the schedule statement. It could mean either the nth Monday from the current date, or the nth Monday from the start of the month.
For example:
'MONDAY (1) MONTHLY' requests the first Monday of each month.
'SATURDAY (5) DAILY AT 6PM' requests an activity at 6pm every day, starting on the fifth Saturday from today. If today happened to be a Saturday, specifying 'SATURDAY (1)' would be TODAY.
Julian Date
A Julian date is recognized when a number is specified in either of two formats (where y = year number and d = day number).
The two formats are yy.ddd and yyyy.ddd.
For example: 95.300 Sunday 27th October 1995
1996.001 Wednesday 1st January 1996
SCHEDULE QUALIFIERS
Many words and phrases, other than specific dates and times, can be used to help you schedule Events at any time and at any intervals. You can work through the following list of schedule terms in sequence or by qualifier name.
ANYDAY HOURLY MONTHLY ROUND WEEKDAYS
DAILY LESS n UNITS NOW STARTING WEEKENDS
EVERY n UNITS MIDDAY OVERDUE n TODAY YEARLY
EXCEPT MIDNIGHT PLUS n UNITS TOMORROW YESTERDAY
ANYDAY specifies that there is no day of the week restriction. DAILY means 'EVERY 1 DAY', which therefore includes weekends and holidays. EVERY n UNITS requests a recurrence of the Event at every n unit of time. The units can be any of SECONDS, MINUTES, HOURS, DAYS, WEEKS, MONTHS, or YEARS, while n can be any number up to 32500. An example of this is 'EVERY 1 HOUR ROUND LESS 5 MINUTES'. This requests an Event at five minutes before the hour, every hour. Note that the five minutes are subtracted from the base time (every hour, on the hour). If the five minutes were subtracted from the interval, the Event would occur every 55 minutes. EXCEPT may be used to exclude specific days of the week from the activity list.
For example, 'ANYDAY EXCEPT SAT, SUN' is equivalent to 'WEEKDAYS';
‘WEEKDAYS EXC WED' would limit activity to Monday, Tuesday, Thursday and Friday.
HOURLY means 'EVERY 1 HOUR', LESS n UNITS specifies a value to be subtracted from a base time to produce an execution time. The PLUS n UNITS phrase works in a similar way. MIDDAY means 12.00 noon. MIDDAY means 12.00 noon. MIDNIGHT this means 24.00, midnight. 24.00 is normally recognized as being the same as 00.00. So if you specify 'MONDAY AT 24.00', it will be stored as '00.00 TUESDAY'. However, by specifying 'MIDNIGHT' rather than '24.00', the time is associated with the previous day. That is, 'MIDNIGHT MONDAY' is considered as being the end of Monday and not the start of Tuesday. This can be important when you specify 'MIDNIGHT WEEKDAYS' which is different from '24.00 WEEKDAYS'. The former translates to one minute after 23.59 on Monday, Tuesday, Wednesday, Thursday and Friday while the latter corresponds to 00.00 on the same days. MONTHLY is a more concise way of saying 'EVERY 1 MONTH'. NOW means at the moment you specify the schedule. This is useful when you need up-to-the-minute information when obtaining a report,
For example. You could request a report from any time in the past OVERDUE(n) specifies the number of overdue occurrences of an activity to be initiated. For example, imagine that you want something to be started at 6pm every day. If the system happens to go down at 5.45pm and is not brought up again until 6.30pm, the activity would be considered to be overdue.
Specifying 'OVERDUE(0)' requests that the overdue activity is ignored. The next scheduled activity would take place when the system is brought back up again. If the system stays down until 6.30pm the next day (for instance, over a holiday), two scheduled activities would have been missed. However, only one would be initiated at start-up time. You can specify whatever overdue count you need to allow more than one missed activity to be performed. PLUS n UNITS specifies a value to be added to a base time to produce an execution time. The LESS n UNITS phrase works in a similar way.
ROUND this word can be used together with the EVERY n UNITS phrase. It specifies that the computed time is an integral multiple of the units parameter. For example, specifying 'EVERY 1 HOUR ROUND' requests every hour at the hour mark. 'EVERY 6 HOURS ROUND' requests the times 00.00, 06.00, 12.00 and 18.00.
If you specify 'EVERY 5 HOURS ROUND', you will get the next hour that is an integral multiple of five hours from 00.00 on 1st January 1900. STARTING this allows you to split the schedule specification into two parts. The first part is an algorithm, and the second part is the starting time and date. Imagine, for example, that you want to produce a schedule that executes every Monday and Tuesday, but you do not want it to start until after the third Wednesday from today. You can do this by specifying 'SCHEDULE MON TUES AT 6PM STARTING WEDS(3)'.
The word STARTING should separate the two parts of the schedule specification so that they do not become confused. The time or date to the left of STARTING should be when you want the Event to execute. The time or date to the right of STARTING should be when you want the first execution of the Event to occur. Use an actual date or time for STARTING.A repetition, such as 'EVERY 5 MINUTES' or 'DAILY' is not valid. TODAY specifies 00.00 on that day. TOMORROW specifies 00.00 on the following day. WEEKDAYS requests that the scheduled actions occur only on weekdays. A weekday, of course, is any day from Monday through to Friday.
WEEKENDS specifies that the scheduled actions occur only on Saturday and Sunday. YEARLY means 'EVERY 1 YEAR', YESTERDAY specifies 00.00 on the previous day.
DATA SET TRIGGERING
Rather than setting up a specific schedule in which you state a time and date, you can request that an Event is triggered on the creation or closure of a data set. To do this, you use the DSTRIG subcommand when you are defining an Event (see the tutorial section called 'COMMANDS'). The data set triggering facility can optionally detect data set renames.
There are several other options which offer control over data set triggering. You can specify a count field which requests that a trigger occurs on every nth closure or rename of a data set. Several data set triggering statements can be specified for any Event, and each can maintain a separate count. Another option is the restriction to specific data sets created by a particular job.
The trigger actually occurs at the time the data set is closed. Only non-abend closes are eligible for data set triggering. A trigger does not take place if a data set is being closed during the abnormal termination of a task or job step.
Example:
The data set creation trigger can be restricted to data sets created by a particular job. This is done by using the JOB keyword:-DSTRIG.USER1.DUMP- JOB (USER01-) will request the triggering of the Event whenever a job with a name beginning 'USER01' creates a data set with a name beginning with 'USER1.DUMP' If the job 'USER02' creates a data set 'USER1.DUMPA', the trigger will not take place because the job name mismatches. (More examples are shown in the 'COMMANDS' section of the tutorial.)
The DSTRIG statement should be entered in an Event definition. It will be ignored outside of an Event definition.
SCHEDULE EXAMPLES
Any of the following statements can be entered to request a date of 17th March 1996.
17th march 96
17mar96
mar1796
mar171996
1996 march 17th
1996 mar17
To specify 6.50pm EST on 17th March 1996, any of the following formats are fine, assuming that your current time zone is Eastern Standard Time.
18.50 17mar96
6.50PM 17TH MAR 1996
11.50 pm gmt on mar 17 1996
17th march 1996 17.50 cst
To get the fifth Monday after October 1st 1995, specify:
monday(5) oct 1st 1995 OR monday oct 1st 1995 plus 4 weeks.
Now assume that you want to schedule something on the first Monday of each month, starting in January 1996.
monday(1) monthly jan 96 OR monday(1) monthly starting 1st jan 1996
To schedule an Event at 15 minutes to the hour, every hour:
00.45 every hour OR 00.45 every 60 minutes OR hourly round less 15 minutes.
Note that with the last specification, an actual start time is not necessary. The next hour mark would be used. If a starting time was not entered for the first two examples, the omission of the word round would cause the base time to be the time at which the request was entered.
For this example, suppose that you wanted to schedule an Event to occur at 15 minutes to the hour, every hour, but only on weekdays. Specify 00.45 every hour weekdays OR 00.45 every 60 minutes anyday except sat sun OR hourly round less 15 minutes mon tue wed thur fri OR every 1 hour round except weekends less 15 minutes
Note that when using less 15 minutes, activity would be scheduled at 23.45 on Sunday, even though weekends are excluded. This is because the base time of 00.00 on Monday would be used. When you subtract 15 minutes from 00.00, you get 23.45 on the previous day.
The Monday before Christmas every year could be selected either of the following ways:
mon 25th december yearly less 1 week 25dec every year less7days monday
There is no specific phrase which directly generates the last day of each month, but you can easily do it by using the LESS phrase.
1st monthly less 1 day
This next example would produce the last Monday of each month:
1st monday monthly less seven days.
The examples included in the following pages will give you an idea of how to schedule Events using the various schedule qualifiers which are provided. You can work through the examples in sequence.
Any of the following statements can be entered to request a date of 17th March 1996.
17th march 96 or 17mar96 or mar1796 or mar171996 or 1996 march 17th or 1996 mar17
To specify 6.50pm EST on 17th March 1996, any of the following formats are fine, assuming that your current time zone is Eastern Standard Time. 18.50 17mar96, 6.50PM 17TH MAR 1996, 11.50 pm gmt on mar 17 1996, 17th march 1996 17.50 cst
To get the fifth Monday after October 1st 1995, specify:
monday(5) oct 1st 1995 OR monday oct 1st 1995 plus 4 weeks.
Now assume that you want to schedule something on the first Monday of each month, starting in January 1996.
monday(1) monthly jan 96 OR monday(1) monthly starting 1st jan 1996
To schedule an Event at 15 minutes to the hour, every hour:
00.45 every hour OR 00.45 every 60 minutes OR hourly round less 15 minutes.
Note that with the last specification, an actual start time is not necessary. The next hour mark would be used. If a starting time was not entered for the first two examples, the omission of the word round would cause the base time to be the time at which the request was entered.
LIST
List one or more Events
The LIST subcommand allows you to list one or more Event names or definitions. You can work through the following topics in sequence or select them by number.
1 - parameters
2 - general information
3 - example
LIST Parameters: ABBREVIATION: L
REQUIRED PARAMETERS: EVENT(eventid) | -
|
OPTIONAL PARAMETERS: ALL | LEVEL(groupprefix*/levelname)
PRINT(dsname) | ALL
| SYSTEM
| TIMESEQ
| PRINT(dsname)
Default parameters are marked by an asterisk (*) eventid specifies the name of an Event to be displayed.
ALL requests that all available information on the Event(s) is displayed. If this parameter is omitted, the display is limited to the next execution time. The information displayed with the ALL option is enough to redefine the Event in its entirety.
dsname specifies the name of a data set to receive the output. The record format of the data set will be preserved. The product can write fixed, variable or undefined records, blocked or unblocked. This option is useful if you want to change an Event definition. The product writes the definitions into a data set, which you can then modify with an editor. Definitions are reloaded by using the LOAD subcommand.
groupprefix is the current group prefix. This is the default value. Levelname specifies a generic level of the Events to be displayed. You can enter up to 24 characters in the level name. All Events whose names begin with the specified string will be displayed.
The level name can contain asterisks and a hyphen anywhere but in the prefix.
SYSTEM requests that the ID of the system which is to execute the Event is included on the display. TIMESEQ requests that the Event names are to be displayed in execution time sequence order, rather than alphanumeric collating sequence. The level name can contain one or more asterisks and a hyphen.
An asterisk indicates that any character in the asterisk location will act as a match. A hyphen indicates that any character in that or subsequent character positions will be considered a match.
If the level name contains a period, the part to the left of the period will specify the prefix (group or userid). The part to the right of the period will specify the descriptive name. If a prefix name is specified in the level name, it cannot contain asterisks or a hyphen. If the level name does not contain a period, it is assumed to be a prefix if:
1. it contains eight characters or less and
2. it does not contain any asterisks or a hyphen.
Otherwise it is assumed to be a descriptive name.
Several formats of level name can be used.
XXX- All entries in the current group whose names begin with XXX
XYZ All entries in group XYZ.
XYZ.**A- All entries in group XYZ whose names have the letter A in character position three.
To display the names and next executions times of all Events defined under the current group prefix: ESP --> LIST
To display the complete definitions of all Events defined to the group PRODGRP and to write the results to a data set called 'ESP.EVENTS', enter the following:
ESP --> L lev(prodgrp) all print('ESP.events')
To display the names of all Events beginning with 'BKUP' defined to the group USER1, specify the following: ESP --> LIST lev(user1.bkup-)
EVENT CONTROL SUBCOMMANDS
These subcommands provide you with control over an Event when you have already defined it. They are used outside an Event definition. A full description of each subcommand is provided as well as examples to give you an idea of how you might use the subcommand.
In the subcommand parameters
- the parameters which are required are shown highlighted
- the optional parameters are shown unhighlighted
- the default values are marked with an asterisk
- if there is more than one parameter and a vertical bar appears between any of them, you can only use one of the options, not all of them.
To view a subcommand description, select it by name.
ALTEVENT HOLD RELEASE TRIGGER
DELETE LIST RESUME
EVENT LOAD SUSPEND
ALTEVENT: Alter attributes of an Event
The ALTEVENT subcommand can be used to alter certain characteristics of an Event. You can work through the following topics in sequence or select them by number.
1 - parameters
2 - general information
3 - example
ALTEVENT Parameters
SUBCOMMAND NAME: ALTEVENT
REQUIRED PARAMETERS: eventid
OPTIONAL PARAMETERS: CLASS(classname)
CALENDAR(cal1)
EVENTSET(evdsid)
SYMLIB(sym1)
SYSTEM(sysid)
ALTEVENT Parameters
eventid is an Event identifier. It may contain asterisks and hyphens when a group of events are to be altered at one time.
classname specifies a new schedule class, up to eight alphanumeric characters, the first of which is alphabetic. cal1 specifies a calendar name, of up to eight characters, the first of which is alphabetic. cal2 specifies a calendar name, of up to eight characters, the first of which is alphabetic.
evdsid specifies the ID of an Event data set. This parameter is restricted to users with the SPECIAL attribute and is required if the Event prefix contains an asterisk or hyphen.
sym1-sym3 specifies one, two or three replacement symbol library names.
An asterisk is permitted instead of a name.
sysid specifies the system ID of a subsystem.
oldsys is a system ID. It may contain asterisks and a hyphen.
It limits changes to Events to be executed on the specified
system ID.
ALTEVENT General Information:
The ALTEVENT command can be used to change certain attributes of one or more Events. When the name contains asterisks or a hyphen, all matching entries will be altered. If you are unsure of which Events a particular command will affect, use a LIST command to test the specified mask.
You can use the oldsys parameter to change Events queued to a specific system or systems. You can use ALTEVENT to add or change SYMLIB entries in already existing events. If you use ALTEVENT to alter the system ID, the schedule will only be altered at the next schedule scan. If the Event is already scheduled on another system, it will execute on that system. When the next day's schedule is built, the new system ID will be taken into account. In this first example, ALTEVENT is being used to alter all Events in the group 'MYGROUP' currently queued to systems beginning tes to execute on the system PROD. ESP --> ALTEVENT mygroup.-sys(prod tes-)
To use the subcommand to add or change SYMLIB entries in existing Events: ESP
← ALTEVENT mygroup.- symlib(syssym1,mysym)
If you want to change the second or third symlib without affecting an intervening one, specify an asterisk in the place of the unaffected symlib. This next example would add or change the third symlib entry for all Events in group PROD. If any of the Events affected have two or less symlibs, null entries will be generated in the intervening gaps.
ESP --> ALTEVENT prod.- sym(* * prodsyms)
EVENT: Start Event definition. The EVENT subcommand starts an Event definition.
You can work through the parameters available with the EVENT subcommand by pressing the ENTER button.
HOLD: Hold Event processing. When it is used outside of an Event definition, the HOLD subcommand postpones the execution of an Event until you release it. You can work through the following topics in sequence or select them by number.
1 - parameters
2 - general information
3 - example
LIST: List one or more Events. The LIST subcommand allows you to list one or more Event names or definitions. You can work through the following topics in sequence or select them by number.
1 - parameters
2 - general information
3 - example
RELEASE: Release an Event for processing
The RELEASE subcommand decrements the hold count associated with an Event. When the hold count reaches zero, the Event will be eligible for execution. You can work through the following topics in sequence or select them by number.
1 - parameters
2 - general information
3 - example
RELEASE Parameters
SUBCOMMAND NAME: RELEASE
REQUIRED PARAMETERS: eventid
OPTIONAL PARAMETERS: NONE
eventid is the name of an Event to be released.
RELEASE General information:
The operand field should contain the name of an Event. The specified Event will have its hold count decremented immediately. See the subcommand 'HOLD' for an explanation of the difference between the held and suspended states. eventid is a valid Event name.
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related searches
- email marketing platform comparison
- salesforce platform app builder questions
- salesforce platform developer 2 certificati
- vanguard investment platform transition
- vanguard transition platform negatives
- salesforce lightning platform starter
- erp platform list
- online learning platform | kids learning games | sumdog
- salesforce lightning platform review
- crm platform definition
- ecommerce platform reviews
- enterprise document management system edms