its address and that of entry DMSBTPLM are stored in ABATABND and the ABATLIftT respectively, in the NUCON area of the CftS nucleus. If the ABEID entry point is not found in the tables, error message is typed and the batch console returns to the CMS interactive
environment.
The BATLOAD flag is set off to show thatDftSBTP has been loaded, the BATNOlX flag is set on to prevent user job execution until DMSBTP encounters a /JOB card and finally, control is returned to the command processor DftSINT. If an error message is issued, DMSERR is called to type the message,
and theBATRUN and BATLOAD flags are set off before control is returned
toCMS. This allows the normal CMS interaction to resume. The processoL .ouule DMSBTP simulates the of the CftS console read module DMSCRD. This is accomplished by issuing reads to
the virtual card reader, formatting the card-image record toresemble a
console record and returning control toCMS to process the command (or
data) request.DMSBTP also performs reads to the console stack if the
stack is not eapty, checks for and processes the /JOB card, ensuring
that it is the first record in the user job, traps all CP co•• ands to
.aintain system integrity andperforms job initialization, cleanup, and
jobrecovery_ Upon receiving control, DMSBTP checks the BATCPEX flag in NUCON. If
the flag is set on, control was received fromDftSCPF and a branch is
.ade to theCP trap routine to verify that the command is allowable
under batch. The function of that routine is described later. If theBATCPEX flag is off, control was received from DftSCRD (console read module) and DMSBTP checks for finished reads in the real batch console
stack. If thenumber of finished reads is not zero, control is returned
toDMSCRD to process the real console finished (stacked) reads. If the
nuaber of finished reads is zero, a record is readfrom the batch
virtual card reader into the CARD buffer via anSVC call to CARDBD (tMSCIO). The record in CARD buffer is typed on the console via the iRTERft macro. If the BATMOVE flag is set on (MOVEFILE executing from
the console), the records in the file are not typed on the console.
The record in the reader buffer is scanned to compute its length with
trailing blanks deleted. It is thenaoved to the CftS console read
buffer and thecomputed length is stored in the original DftSCRD parameter list, whose address is passed by DftSCRD when it initially
passes control toDMSBTP. If the first user record is not a /JOB card, error message DMSBTP10SE is typed and normal cleanup is performed with the BATTERft flag set on.
This flag prevents another initial program load, since it is not needed
at this time. Reads to the card reader are then issued until the next/JOB card is found.
If the first record is a/JOB card, DMSBTP branches to its /JOB card
processing routine which callsDMSSCNN via a EALB. A check is made fer
the existence of the userid and accountnumber on the card. If the
fields exist, aCP DIAGNOSE X'4C' is issued to start accounting
recording for that userid and account number. If an error is returnedfroa CP denoting an invalid userid, or if the userid or account number fields were missing on the /JOB card, error message DMSBTP106E is typed
and nor.a! cleanup is performed with theBATTERft flag set on. 2-150 IBft Vft/370 System Logic and Program Determination--Volume 2
environment.
The BATLOAD flag is set off to show that
and the
to
the virtual card reader, formatting the card-image record to
console record and returning control to
data) request.
stack is not eapty, checks for and processes the /JOB card, ensuring
that it is the first record in the user job, traps all CP co
.aintain system integrity and
job
the flag is set on, control was received from
.ade to the
under batch. The function of that routine is described later. If the
stack. If the
to
nuaber of finished reads is zero, a record is read
virtual card reader into the CARD buffer via an
the console), the records in the file are not typed on the console.
The record in the reader buffer is scanned to compute its length with
trailing blanks deleted. It is then
buffer and the
passes control to
This flag prevents another initial program load, since it is not needed
at this time. Reads to the card reader are then issued until the next
If the first record is a
processing routine which calls
the existence of the userid and account
fields exist, a
recording for that userid and account number. If an error is returned
and nor.a! cleanup is performed with the