Reserved variable names

<< Click to Display Table of Contents >>

Navigation:  User guide > Variables >

Reserved variable names

The following variable names are reserved. The values of these variables are used in data stages for various specific purposes, detailed below. With the exception of $IOBS, these variables are not written to the IDF and are therefore not allowed in other stages.

The values of these variables are preserved from record to record except as otherwise stated.

$IOBS

This is an ivar containing the record number when the SERIAL NUMBER command is used. This variable is written to the IDF. The value is changed whenever the first card of a new record is read from input stream A.

$XIERR

This is an ivar containing a data error count, incremented whenever a CK (check) fails or an EL (edit and list) command is executed. It can also be incremented by a HOLD command. If it is not zero when a record is to be written to the IDF, the record will not be written to the IDF. The value is set to zero after the WRITE command is executed and at START DATA. You may wish to set it to zero after listing or otherwise using it to disable it from preventing an IDF write operation.

$XRPTJH

This is a cvar containing the header to be used in the Report file. This variable can contain up to 120 characters only. The contents of this cvar replace the listing header from the Control Stage.

$XRPTJF

This is a cvar containing the footnote to be used in the Report file. This variable can contain up to 120 characters only.

$XRPTPG

This is an ivar containing the page number in the Report file. This ivar is incremented each time a new page is started in the Report file.

$XRPTLN

This is an ivar containing the line number in the Report file. This ivar is incremented each time a new line is output to the Report file. It is set to zero when a page is thrown in the Report file. You can force a new page to be started by setting this variable to a large number.

$XERRMS

This is an ivar containing the number of execution errors caused by multiple values found in an svar definition under format EMS.

$XERRDZ

This is an ivar containing the number of execution errors caused by attempts to divide by zero.

$XERRMK

Obsolete.

$XERRET

This is an ivar containing the number of execution errors caused by attempts to generate too many data locations using an expansion definition.

$XERRNT

This is an ivar containing the number of execution errors caused by attempts to store a number too big for a field.

$XERRRI

This is an ivar containing the number of execution errors caused by invalid attempts to convert double precision numbers (in wvars or table cells) to ivars.

$XCNTCA

This is an ivar containing the number of lines read from input stream A.

$XCNTCB

This is an ivar containing the number of lines read from input stream B.

$XCNTPA

This is an ivar containing the number of lines punched to output stream A.

$XCNTPB

This is an ivar containing the number of lines punched to output stream B.

$XCNTWA

This is an ivar containing the number of WRITE commands accepted ($XIERR was not zero). This can be used to create a permanent sequence number in the IDF:

di $seq = $xcntwa+1, 

$XCNTWR

This is an ivar containing the number of WRITE commands rejected.

$XCNTSD

This is an ivar containing the number of times START DATA has been executed. This can also be used to generate a sequence number.