Previous Topic: TABLENext Topic: USER


TASK

TASK statements are used to document teleprocessing system tasks. Optional clauses define the program invoked by the task and the task's priority and maximum-wait interval.

Note: It is recommended that you maintain TASK definitions using the system generation compiler, not the DDDL compiler. If a system generation component is processed by the DDDL compiler, only dictionary security is checked, not system generation security. For more information on using the system generation compiler, refer to CA IDMS System Generation Guide.

If the SET OPTIONS statement specifies SECURITY FOR IDMS-DC IS ON, the user must be assigned the proper authority to issue TASK statements.

Syntax

TASK statement

►►─┬─ ADD ─────┬─ TASk name is task-name ─────────────────────────────────────►
   ├─ MODify ──┤
   ├─ REPlace ─┤
   └─ DELete ──┘

 ►─┬────────────────────────────────────────────┬─────────────────────────────►
   └─ Version is ─┬─ version-number ──────────┬─┘
                  └─┬─────────┬─┬───────────┬─┘
                    └─ NEXt ──┘ ├─ HIGhest ─┤
                                └─ LOWest ──┘

 ►─┬─────────────────────────────────────────────────────────┬────────────────►
   └─┬─ PREpared ─┬─ by user-id ──┬────────────────────────┬─┘
     └─ REVised ──┘               └─ PASsword is password ─┘
 ►─┬───────────────────────────────────────────────┬──────────────────────────►
   └─┬────────┬─ DEScription is description-text ──┘
     └─ task ─┘

   ┌─────────────────────────────────────────────────────────────────┐
 ►─▼─┬─────────────────────────────────────────────────────────────┬─┴────────►
     └─┬─ INClude ◄ ─┬─ USEr is user-id ──┬──────────────────────┬─┘
       └─ EXClude ───┘                    └─ user-specification ─┘

(for complete user-specification syntax, see USER clause)
 ►─┬──────────────────────────────────────────────────────┬───────────────────►
   └─ PUBlic access is ─┬───────────┬─ for ─┬─ ALL ◄ ───┬─┘
                        └─ ALLOwed ─┘       ├─ NONe ────┤
                                            ├─ UPDate ──┤
                                            ├─ MODify ──┤
                                            ├─ REPlace ─┤
                                            ├─ DELete ──┤
                                            └─ DISplay ─┘

   ┌──────────────────────────────────────────────────────────────────────────
 ►─▼┬─────────────────────────────────────────────────────────────────────────►─
     └┬ INClude ◄ ─┬ WIThin SYStem system-name ┬──────────────────────────────┬
      └ EXClude ───┘                           └ Version is ┬ version-number ┬┘
                                                            ├─ HIGhest ──────┤
                                                            └─ LOWest ───────┘
  ──────────────────────────────────────────────────────────────────────────┐
─►─────────────────────────────────────────────────────────────────────────┬┴─►
  ─┬──────────────────────────────────────────────────────────────────────┬┘
   └─ invokes PROgram program-name ─┬───────────────────────────────────┬─┘
                                    └─ Version is ─┬─ version-number ─┬─┘
                                                   ├─ HIGhest ────────┤
                                                   └─ LOWest ─────────┘

 ►─┬────────────────────────────────────────┬─────────────────────────────────►
   └─ TASk PRIority is ─┬─ 100 ◄ ─────────┬─┘
                        └─ task-priority ─┘
 ►─┬──────────────────────────────────────────────────────┬───────────────────►
   └─ INActive task INTerval is ─┬─ OFF ◄ ──────────────┬─┘
                                 └─ inactive-wait-time ─┘

   ┌───────────────────────────────────────────────────────────────────────┐
 ►─▼─┬────────────────────────────────────────────────────────────────────┬┴──►
     └┬ INClude ◄ ─┬ class-name is attribute-name ─┬─────────────────────┬┘
      └ EXClude ───┘                               └─ TEXt is user-text ─┘
 ►─── EXTernal WAIt is ─┬──────────────────────┬──────────────────────────────►
                        ├─ external-wait-time ─┤
                        ├─ SYStem ─────────────┤
                        └┬─ FORever ─┬─────────┘
                         └─ NO ──────┘

   ┌──────────────────────────────────────────────────────────────────────────
 ►─▼─┬────────────────────────────────────────────────────────────────────────►─
     └─ DC option is ─────────────────────────────────────────────────────────
  ───────────────────────────────────────────────────────────────────────┐
─►─────────────────────────────────────────────────────────────────────┬─┴────►
  ─┬─ invokes PROgram program-name ─┬──────────────────────────────┬─┬─┘
   │                                └─ Version is version-number ──┘ │
   ├─┬─ ENAbled ◄ ─┬─────────────────────────────────────────────────┤
   │ └─ DISabled ──┘                                                 │
   ├─┬─ EXTernal ◄ ─┬────────────────────────────────────────────────┤
   │ └─ INTernal ───┘                                                │
   ├─┬─ NOInput ◄ ─┬─────────────────────────────────────────────────┤
   │ └─ INPut ─────┘                                                 │
   └─┬─ NOMap ◄ ─┬───────────────────────────────────────────────────┘
     └─ MAP ─────┘
   ┌───────────────────────────────────────────────────────────────┐
 ►─▼─┬───────────────────────────────────────────────────────────┬─┴──────────►
     │                            ┌────────────────────┐         │
     └─ EDIt ─┬─ COMments ────┬───▼─ edit-instruction ─┴─ QUIT ──┘
              ├─ DEFinition ──┤
              └─ comment-key ─┘

   ┌──────────────────────────────────────────────────┐
 ►─▼─┬─────────────────────────────────────────────┬──┴───────────────────────►◄
     └─┬─ COMments ─────┬── is ─┬─ NULl ─────────┬─┘
       ├─ DEFinition ───┤       └─ comment-text ─┘
       └─ comment-key ──┘

DISPLAY/PUNCH TASK statement (for a single task)

►►─┬─ DISplay ─┬─ TASk name is task-name ─────────────────────────────────────►
   └─ PUNch ───┘

 ►─┬───────────────────────────────────┬──────────────────────────────────────►
   └─ Version is ─┬─ version-number ─┬─┘
                  ├─ HIGhest ────────┤
                  └─ LOWest ─────────┘

 ►─┬──────────────────────────────────────────────────┬───────────────────────►
   └─ PREpared by user-id ─┬────────────────────────┬─┘
                           └─ PASsword is password ─┘
   ┌──────────────────────────────────────────────────────────┐
 ►─▼─┬──────────────────────────────────────────────────────┬─┴──────────────►
     │                  ┌─────────────────────────────────┐ │
     └─┬─ WITh ──────┬──▼──┬─ ALL ──────────────────────┬─┴─┘
       ├─ ALSo WITh ─┤     ├─ ALL COMment TYPes ────────┤
       └─ WITHOut ───┘     ├─ ATTributes ───────────────┤
                           ├─ COMments ─────────────────┤
                           ├─ DEFinitions ──────────────┤
                           ├─ DETails ──────────────────┤
                           ├─ HIStory ──────────────────┤
                           ├─ NONe ─────────────────────┤
                           ├─ PROgrams ─────────────────┤
                           ├─┬─ SYStems ────┬───────────┤
                           │ └─ SUBSYstems ─┘           │
                           ├─ USErs ────────────────────┤
                           └─┬─ USEr DEFINED COMments ─┬┘
                             └─ UDCs ──────────────────┘
 ►─┬──────────────────────────────────────────────────────────────────────────►─
   └─ TO ─┬─ SYSpch ──────────────────────────────────────────────────────────
          └─ MODule module-name ─┬───────────────────────────────────┬────────
                                 └─ Version is ─┬─ version-number ─┬─┘
                                                ├─ HIGhest ────────┤
                                                └─ LOWest ─────────┘

─►──────────────────────────────────────────────────────────────────────────┬─►
  ─────────────────────────────────────────────────────────────────────────┬┘
  ─┬──────────────────────┬┬──────────────────────────────────────────────┬┘
   └ LANguage is language ┘└ PREpared by user-id ┬───────────────────────┬┘
                                                 └ PASsword is password ─┘
 ►─┬──────────────────────┬──┬─────────────────────┬──────────────────────────►◄
   └─ VERB ─┬─ DISplay ─┬─┘  └─ AS ─┬─ SYNtax ───┬─┘
            ├─ PUNch ───┤           └─ COMments ─┘
            ├─ ADD ─────┤
            ├─ MODify ──┤
            ├─ REPlace ─┤
            └─ DELete ──┘

DISPLAY/PUNCH TASK statement (for multiple tasks)

►►─┬─ DISplay ─┬─┬─ ALL ──────────────────────────┬─ TASks ───────────────────►
   └─ PUNch ───┘ └─┬─ FIRst ─┬─┬─ 1 ◄ ──────────┬─┘
                   ├─ NEXt ──┤ └─ entity-count ─┘
                   ├─ LASt ──┤
                   └─ PRIor ─┘

 ►─┬──────────────────────────────────────────────────┬───────────────────────►
   └─ PREpared by user-id ─┬────────────────────────┬─┘
                           └─ PASsword is password ─┘

 ►─┬─────────────────────────────────┬────────────────────────────────────────►
   └─ WHEre conditional-expression ──┘

(for complete conditional-expression syntax, see WHERE clause)
 ►─┬──────────────────┬───────────────────────────────────────────────────────►
   └─ BY ─┬─ SET ◄ ─┬─┘
          └─ AREa ──┘

 ►─┬──────────────────────────────────────────────────────────────────────────►─
   └─ TO ─┬─ SYSpch ──────────────────────────────────────────────────────────
          └─ MODule module-name ─┬───────────────────────────────────┬────────
                                 └─ Version is ─┬─ version-number ─┬─┘
                                                ├─ HIGhest ────────┤
                                                └─ LOWest ─────────┘
─►──────────────────────────────────────────────────────────────────────────┬─►
  ─────────────────────────────────────────────────────────────────────────┬┘
  ─┬──────────────────────┬┬──────────────────────────────────────────────┬┘
   └ LANguage is language ┘└ PREpared by user-id ┬───────────────────────┬┘
                                                 └ PASsword is password ─┘

 ►─┬──────────────────────┬──┬──────────────────────────────────────┬─────────►◄
   └─ VERB ─┬─ DISplay ─┬─┘  └─ AS ─┬─ SYNtax ───┬──┬─────────────┬─┘
            ├─ PUNch ───┤           └─ COMments ─┘  └─ RECursive ─┘
            ├─ ADD ─────┤
            ├─ MODify ──┤
            ├─ REPlace ─┤
            └─ DELete ──┘

Parameters

TASk name is task-name

Identifies a new task to be established in the dictionary, or an existing task to be modified, replaced, deleted, displayed, or punched. Task-name must be a 1- through 8-character alphanumeric value.

within SYStem system-name

Associates the named task with the system identified by the 1- through 32-character system-name. The WITHIN SYSTEM clause is documentation only, unless the system generation compiler COPY facility is to be used to copy task occurrences from an IDD-built system. When the COPY facility is not used, functional task/system relationships are established and maintained by the system generation compiler.

invokes PROgram program-name

Identifies the initial program to be invoked by the teleprocessing monitor for the named task. Program-name must be the 1- through 8-character name of an existing program. This parameter associates an existing program with the task/system relationship. The INVOKES PROGRAM parameter is documentation only.

If INVOKES PROGRAM is specified, the named program must have been previously related to the system by means of the WITHIN SYSTEM clause of the PROGRAM statement.

If the INVOKES PROGRAM option is omitted, INCLUDE establishes a new task/system relationship and EXCLUDE removes the task/system relationship and any dependent task/program relationships.

TASk PRIority is 100/task-priority-number

Specifies a dispatching priority for the named task. Task-priority-number must be an integer in the range 1 through 255; the default for ADD is 100. In an environment, a high number indicates a high priority. Task priorities are used in combination with user and logical-terminal priorities to establish the run-time dispatching priority of the task.

INACtive task INTerval is

Specifies the time the named task can be permitted to wait for a resource before being terminated.

OFF

Specifies that the task will never terminate due to elapsed time. OFF is the default.

inactive-wait-time

Specifies that the task will terminate if the specified wait time is exceeded. Inactive-wait-time is specified in seconds and must be an integer in the range 1 through 32,767.

EXTernal WAIt is

Overrides the system generation statement EXTERNAL WAIT parameter specification for the named program.

External-wait-time

Specifies the amount of time, in wall-clock seconds, the system is to wait for the program to issue a database request before abnormally terminating the program. External-wait-time must be an integer in the range 0 through 32,767.

SYStem

Directs the system to use the external wait time specified in the SYSTEM statement. A value of 0 is synonymous with SYSTEM.

FORever/NO

Directs the system not to terminate the program based on an external wait time.

DC option is

Documents the information used to define the named task during system generation.

INVOKES PROGRAM program-name

Identifies the initial program to be invoked by DC/UCF for the task. Program-name must reference an existing program. This parameter is required for DC/UCF tasks.

ENAbled

Automatically enables the task at system startup. ENABLED is the default.

DISabled

Disables the task until it is enabled explicitly by an operator command during system execution.

EXTernal

Specifies that the task can be invoked externally from a terminal. EXTERNAL is the default.

INTernal

Specifies that the task can be invoked only by means of a DC RETURN from an executing program.

NOInput

Specifies that the task's terminal input buffer is to contain only the task code. NOINPUT is the default.

INPut

Specifies that the task's terminal input buffer can contain data in addition to the task code. INPUT must be specified if the task's initial program reads the input line.

NOMap

Specifies that a map is not invoked. NOMAP is the default.

MAP

Specifies that tasks defined to write maps to user terminals can perform that function exclusively. DC/UCF displays a map automatically at the user terminal and eliminates the need for a program to perform this I/O function.

WITh/ALSo WITh/WITHOut

Includes or excludes the specified options when the named task is displayed or punched. Detailed information for each DISPLAY/PUNCH option is under SET OPTIONS Syntax. The option that is listed below presents special considerations for this entity type.

DETails

Includes the DESCRIPTION, TASK PRIORITY, INACTIVE TASK INTERVAL, and DC OPTION specifications.

Usage

If you specify REPLACE

If you specify REPLACE, the DDDL compiler initializes to defaults and/or excludes the following:

Task/system relationships established by the system generation compiler are not affected.

Example

The following ADD statement defines the task RESER9 within the system RES and associates the program RES1054 with the task/system relationship. Additional clauses supply priority and wait-time-before-termination specifications.

add task name is reser9
    task description is 'reserve interaction'
    within system res
    invokes program res1054
    task priority is 215
    inactive interval is 5.

The following MODIFY statement disassociates the task from the system RES; the DC OPTION clauses establish the task's initial program and identify the task as part of a continuing transaction for use by a DC/UCF system.

modify task name is reser9
    exclude within system res
    dc option is invokes program res1054
    dc option is transaction nostart.