Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Determining the variant of the accounting procedure

You must first determine if you want to use fixed prices, the utilization or a combination of these two variants for accounting purposes. Your decision depends on if you want to offer certain services of the application at fixed prices or if you want to charge for the actual resource utilization.

Fixed-price accounting

In fixed-price accounting, a program unit run costs a constant number of accounting units. These values are based on the values determined in the calculation phase. This makes fixed-price accounting the simplest solution.

You specify the number of accounting units in the KDCDEF generation in the TAC statement in the TACUNIT operand, see the openUTM manual “Generating Applications”.

TAC tacname,PROGRAM=progname,TACUNIT=number_of_accounting_units

The value specified in TACUNIT is added to the user-specific accounting unit counter for every transaction code called by the user.

You can also provide some services (e.g. informational functions) free of charge when using fixed-price accounting. You must generate the corresponding transaction codes as follows to do this:

TAC ... TACUNIT=0

With distributed processing, the same applies to the LTAC statement and the LTACUNIT operand, see section "Accounting with distributed processing".

You must set the weights for the resources to 0 (default value) in the KDCDEF statement ACCOUNT when using fixed-price accounting.

Utilization-based accounting

In this variant the user is charged for the utilization of resources that are determined in the current accounting phase. You must specify weights for the individual resources. A weight is a factor that is multiplied with the number of units used. You can use the utilization data that you received in the calculation phase to help you choose the weights.

The weights are defined for each application in the KDCDEF statement ACCOUNT, i.e. they are valid for all program unit runs.

The determination of the weights is inevitably subjective and depends on the installation environment. You can assign weights to the following resources:

  • CPU utilization (ACCOUNT operand CPUUNIT)

  • I/O to background memory (ACCOUNT operand IOUNIT)

  • printer output (ACCOUNT operand OUTUNIT) (Unix and Linux systems)

      More details can be found in the openUTM manual “Generating Applications”.

Example for the KDCDEF generation of this variant

ACCOUNT ACC=ON,CPUUNIT=15,IOUNIT=5,OUTUNIT=20

TAC tacname,PROGRAM=progname,TACUNIT=0

TAC ....

The following sum is then added to the accounting unit counter of the user for each transaction code call:

15 * CPU utilization + 5 * I/O utilization + 20 * printer output utilization

Combination of fixed-price and utilization-based accounting

You can also combine the two variants above for your accounting purposes by specifying a certain fixed price for calling a transaction code and then also charging for the utilization of resources (e.g. the CPU utilization).

The following sum is created and added to the accounting unit counter of the user in the accounting phase when a transaction code is called:

TACUNIT (fixed price for calling a program unit)
+ CPUUNIT * CPU utilization + IOUNIT* I/O utilization
+ OUTUNIT * printer output utilization

Example for the KDCDEF generation of this variant

ACCOUNT ACC=ON,CPUUNIT=15

TAC tacnam1,PROGRAM=progname1,TACUNIT=1
TAC tacnam2,PROGRAM=progname2,TACUNIT=2

:

: