Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

obj_type=KC_TACCLASS

This operation relates to a UTM application TAC class.

In the identification area you must pass the number of the TAC class (field kc_name2 of the union kc_id_area). In the data area you must pass the data structure kc_tacclass_str with the new values of the properties.

  • Possible modification

    You can increase or decrease the number of processes which may simultaneously process jobs for transaction codes of the TAC class. To do this, you can:

    • Specify the number of processes in absolute terms (tasks), i.e.:

      you specify the number of processes which may simultaneously perform jobs for this TAC class. If the number is specified in absolute terms, the number of processes is independent of the currently set total number of processes in which the application program is running. This applies provided that the current total number of process in the application is no less than the number of processes set for the TAC class. If this is case, the number of processes is reduced accordingly.

    • Specify the number of processes in relative terms (tasks_free), i.e.:

      you specify the number of processes which must remain free to process jobs for transaction codes of other TAC classes. If the number is stated in relative terms, the number of processes for this TAC class is determined by the currently set total number of application processes. If the total number of processes is reduced, then the maximum number of processes which process jobs for the TAC class is also reduced implicitly. Similarly, if the total number is increased, the number of processes for this TAC class is also increased implicitly.

    The number of processes of a TAC class can only be modified, if the application was generated without priority control, i.e. if the KDCDEF generation does not contain a TAC-PRIORITIES statement.

    For this modification, you must specify the following in the structure kc_tacclass_str:

    Field name      

    Meaning

    tasks

    Specify in tasks the maximum number of processes which may simultaneously perform jobs for transaction codes of the TAC class. A relative statement previously made by tasks_free for this TAC class is deactivated.

    Minimum value of tasks:
    For dialog TAC classes (TAC classes 1-8), tasks must be >= '1', as dialog services would otherwise be locked and users would have to wait at the terminal until the processes were released again.
    For asynchronous TAC classes (classes 9-16) tasks may be >= '0'.

    Maximum value: see table.
    If the value specified for tasks is greater than the total number of processes for the application, then UTM automatically reduces the value to this number.

    tasks_free

    Specify the following in tasks_free:

    • for dialog TAC classes:
      the minimum number of processes which are to be kept free to process jobs for other TAC classes.
      If the number of processes in tasks_free becomes greater than the total number of processes available to the application program, then one process nevertheless remains available to this TAC class to process its transaction codes.

    • for asynchronous TAC classes:
      the minimum number of processes which are to be kept free to process transaction codes of other asynchronous TAC classes.
      If the number of processes in tasks_free becomes greater than the total number of processes which may simultaneously be used for asynchronous processing, then no further jobs are performed on transaction codes of this TAC class.

    Minimum value: '0'
    Maximum value: see table.

    tasks and tasks_free must not be specified together in a single KC_MODIFY_OBJECT call.

    The permitted maximum value for tasks and tasks_free is determined by the following factors:

    • whether or not program units with blocking calls (pgwt='Y') can run in the TAC class.

    • by the values for TASKS, TASKS-IN-PGWT and ASYNTASKS generated statically in the KDCDEF control statement MAX.

    The following table contains the maximum permitted values for tasks and tasks_free. If you specify greater values, the KC_MODIFY_OBJECT call is rejected

    TAC class                                   

    Content of pgwt

    Permitted maximum value for tasks

    Permitted maximum value for tasks_free

    1 - 8 (dialog TACs)

    'N'

    TASKS *)

    TASKS - 1 *)

    'Y'

    TASKS-IN-PGWT *)

    TASKS - 1 *)

    9 - 16 (asynchronous TACs)

    'N'

    ASYNTASKS *)

    ASYNTASKS *)

    'Y'

    the smaller of the values:
    ASYNTASKS, TASKS-IN-PGWT*)

    ASYNTASKS *)

    *)  As statically generated in the KDCDEF control statement MAX

    Period of validity / transaction management: Type A ("KC_MODIFY_OBJECT - Modify object properties and application parameters")

  • Reset the statistical values “Average wait time of the jobs in the job queues” and “Number of wait situations”. These two values can only be reset together.

    The values can be reset either for the TAC class specified in the Id area or for all the TAC classes:

    • If the values are to be reset for all TAC classes then binary zero must be specified in the Id area. In this case, tasks and tasks_free must not be modified.

    • If only a specific TAC class is to be modified then avg_wait_time_msec and nr_waits can be specified together with tasks and tasks_free

    Specify the following in the kc_tacclass_str data structure:

    Field name                         

    Meaning

    avg_wait_time_msec[10]

    Contains the average wait time of the jobs in the job queues assigned to the transaction codes of this TAC class. The unit of the avg_wait_time_msec value is milliseconds.

    If there is no process available for the TAC class, UTM accepts jobs for the TAC class (with free processes that “cannot” process jobs to this TAC class) and stores them temporarily in the KDCFILE.
    This is always the case when there are jobs pending for TAC classes of a higher priority (in the case of priority control) or when the number of processes is limited and the maximum permitted number of processes is already processing transaction codes of the TAC class (see tasks, tasks_free).

    The time between the acceptance of a job and the start of its processing is the wait time displayed here.
    You can reset this value to '0'.

    nr_waits[10]

    Number of wait situations taken into account for the calculation of the value avg_wait_time_msec.
    You can reset this value to '0'.

    nr_calls[10]

    Number of proram unit runs for this TAC class.

    Period of validity / transaction management: type GIR ("KC_MODIFY_OBJECT - Modify object properties and application parameters")