DIV statement

The DIV statement defines device formats within a DIF or DOF. The formats are identified as input, output, or both input and output, and can consist of multiple physical pages. For DEV TYPE=SCS1, SCS2, or DPM-AN, two DIV statements can be defined: DIV TYPE=OUTPUT and DIV TYPE=INPUT. For all other device types, only one DIV statement per DEV is allowed.

Format for DEV TYPE=SCS1, or SCS2 and DIV TYPE=INPUT

Read syntax diagramSkip visual syntax diagramlabelDIVTYPE=INPUT,OPTIONS=MSGDPAGE

Format for DEV TYPE=3270 or 3270-An

Read syntax diagramSkip visual syntax diagramlabelDIVTYPE=INOUTOUTPUT

Format for DEV TYPE=FIN

Read syntax diagramSkip visual syntax diagramlabelDIVTYPE=INPUT,OPTIONS=MSGDPAGE

Format for DEV TYPE=SCS1, SCS2, 3270P, FIDS, FIDS3, FIDS4, FIDS7, FIJP, FIPB, or FIFP and DIV TYPE=OUTPUT

Read syntax diagramSkip visual syntax diagramlabelDIVTYPE=OUTPUT────,COMPR=FIXEDSHORTALL

Format for DEV TYPE=DPM-An

Read syntax diagramSkip visual syntax diagramlabelDIVTYPE=INPUTAOUTPUTB
A
Read syntax diagramSkip visual syntax diagram,RCDCTL=(256nnnnn,NOSPAN),NULL=KEEPDELETE,OPTIONS=(FLDEXITNOFLDEXIT,SEGEXIT,NOSEGEXIT,MSG,DPAGE,NODNM)
B
Read syntax diagramSkip visual syntax diagram,RCDCTL=(256nnnnn,SPAN,NOSPAN),HDRCTL=(FIXEDVARIABLE,7, nn),OPTIONS=(MSGDPAGEPPAGE,SIM,NOSIM2,DNM),COMPR=FIXEDSHORTALL

Format for DEV TYPE=DPM-Bn

Read syntax diagramSkip visual syntax diagramlabelDIVTYPE=INPUTAOUTPUTB
A
Read syntax diagramSkip visual syntax diagram,RCDCTL=(256nnnnn,NOSPAN),OPTIONS=(FLDEXITNOFLDEXIT,SEGEXIT,NOSEGEXIT,MSG,DPAGE,DNM,NODNM),DPN=dfldname,RDPN=dfldname,RPRN=dfldname
<B>
Read syntax diagramSkip visual syntax diagram,RCDCTL=(256nnnnn,NOSPAN),OPTIONS=(,MSG,DPAGE,PPAGE,SIM,NOSIM2,DNM,NODNM),DPN=(' literal', dfldname),PRN=(' literal', dfldname),RPRN=(' literal', dfldname),OFTAB=(X'hh'C'c',MIX,ALL),COMPR=FIXEDSHORTALL

Parameters

label
A one- to eight-character alphanumeric name that is specified to uniquely identify this statement.
TYPE=
This describes the format as input, output, or both.
INOUT
Describes an input and output format.
INPUT|OUTPUT
Describes an input-only format (INPUT) or an output-only format (OUTPUT). Certain DEV statement keywords can be used. For example:
  • Specifying WIDTH=80 for DEV TYPE=SCS1 indicates that fields can be printed in columns 1 through 80 on output and received from columns 1 through 80 on input.
  • Specifying WIDTH=80 for DEV TYPE=SCS2 indicates that both the card reader and card punch have the same number of punch positions.
  • Specifying WIDTH=80 and HTAB=(SET,5) for DEV TYPE=SCS1 indicates that fields can be printed in columns 5 through 80 on output and received from columns 5 through 80 on input. In this case DFLD POS=(1,5) or POS=5 on input is the same as if you specified column 1 and a left margin position at 1.

    You enter data the same way, regardless of where the left margin is currently set.

RCDCTL=
Creates record definitions even if RCD statements are used in the same format definition. RCDCTL is valid only if MODE=RECORD is specified on the DEV statement.
The first data field is the first field of the message for OPTIONS=MSG. The first data field is the first field of the DPAGE or PPAGE for OPTIONS=DPAGE and PPAGE, respectively. If the first data field does not fit in the same record as the output message header, and if OPTIONS=DPAGE or PPAGE has been specified, the first data record will be sent in the next transmission. The output message header will be transmitted by itself (as is always the case for OPTIONS=MSG).
256
The maximum length of an input or output transmission. The value 256 is valid only for DEV TYPE=DPM-An or DPM-Bn.
nnnnn
The maximum length of an input or output transmission. A value is valid only for DEV TYPE=DPM-An or DPM-Bn. The length cannot be greater than 32000 or less than the length of the message output header.

When TYPE=OUTPUT is specified, nnnnn is less than or equal to the output buffer size specified in the OUTBUF= macro at IMS system definition. If nnnnn is greater than the OUTBUF= value specified, one record can require multiple output transmissions and can produce undesirable results in the remote program. If fields do not exactly fit in the defined records, and NOSPAN has been specified, records might not be completely filled.

SPAN
Specifies that fields can span records.

When TYPE=OUTPUT is specified you can specify SPAN only with DEV TYPE=DPM-An. Fields can span a record boundary but not a PPAGE boundary. The remote program must include logic to associate the partial fields or deal with them separately.

NOSPAN
Specifies that fields cannot span records. Every field is contained within a record and no field has a length greater than the value specified. NOSPAN is the default.
NULL=
Specifies how MFS is to handle trailing nulls. NULL= is valid only for DEV TYPE=DPM-An and TYPE=INPUT.
KEEP
Directs MFS to ignore trailing nulls.
DELETE
Directs MFS to search for and replace trailing nulls. MFS searches input message fields for trailing nulls or for fields that are all nulls, and replaces the nulls with the fill character specified in the message definition.
OPTIONS=
Specifies formatting and mapping of data.
DNM
Specifies the data name.
  • For TYPE=INPUT:
    • DNM can be specified only for DEV TYPE=DPM-Bn. A specific DPAGE is selected to map the current or only data transmission when the DPAGE data name is supplied as the DSN parameter in the message header, and the DPAGE data name matches a defined DPAGE data name. If these conditions are not met, the last defined DPAGE name is used to map the data, unless the DPAGE is defined as conditional.
  • For TYPE=OUTPUT:
    • DNM can be specified for DEV TYPE=DPM-An or DPM-Bn.

      For DEV TYPE=DPM-An, use DNM with the FORS keyword on the DEV statement to specify a literal in the message header. See the topic "Message Processing" in IMS Version 15.4 Application Programming. This parameter is optional.

      For DEV TYPE=DPM-Bn, MFS includes the following in the DD header:

      • The FMT name if OPTIONS=MSG
      • The DPAGE name if OPTIONS=DPAGE
      • The PPAGE name if OPTIONS=PPAGE
NODNM
Specifies that there is no data name.
  • For TYPE=INPUT:
    • NODNM can be specified for either DEV TYPE=DPM-An or DPM-Bn. MFS selects a specific DPAGE by performing a conditional test on the data received and the COND= parameter.
  • For TYPE=OUTPUT:
    • NODNM can be specified only for DEV TYPE=DPM-Bn. If NODNM is specified, no data structure name (DSN) is supplied in the DD header.
DPAGE
Specifies different ways of receiving and transmitting data, depending on the device type and whether TYPE=INPUT or TYPE=OUTPUT:
  • For TYPE=INPUT:
    • For SCS1, SCS2, or FIN, or for DEV TYPE=DPM-An or DPM-Bn, DPAGE specifies that an input message can be created from multiple DPAGEs.

      If multiple DPAGE input is not requested in MFS definitions, messages cannot be created from more than one DPAGE.

      If a single DPAGE is transmitted and contains more data than defined for the DPAGE selected, or multiple pages are transmitted, the input message is rejected and an error message is sent to the other subsystem.

  • For TYPE=OUTPUT:
    • For DEV TYPE=DPM-An or DPM-Bn, DPAGE specifies that IMS transmits all DFLDs that are grouped in one page together. The logical page is transmitted in one or more records. If PPAGE statements are defined with the DPAGE, each PPAGE statement begins a new record. An additional logical page is sent when a paging request is received from the remote program. Each logical page is preceded by an output message header, and the label on the DPAGE is placed in the header. For DEV TYPE=DPM-Bn, the data structure name is optional in the DD header and depends on the specification of DNM or NODNM.
FLDEXIT
Specifies that the exit routine in the MSG definition MFLD is to be called for DEV TYPE=DPM-An or DPM-Bn and TYPE=INPUT.

FLDEXIT is the default.

This parameter is valid only when DEV TYPE=DPM-An or DPM-Bn and TYPE=INPUT.

NOFLDEXIT
Specifies that the exit routine in the MSG definition MFLD is to be bypassed.
MSG
Specifies different ways of creating and transmitting messages, depending on the device and whether TYPE=INPUT or TYPE=OUTPUT:
  • For TYPE=INPUT:
    • For DEV TYPE=SCS1, SCS2, or FIN, or for DEV TYPE=DPM-An or DPM-Bn, MSG specifies that an input message can be created from a single DPAGE.
  • For TYPE=OUTPUT:
    • For DEV TYPE=DPM-An or DPM-Bn and TYPE=OUTPUT, MSG is the default and specifies that IMS transmits all the DFLDs within a message together as a single message group. The message is preceded by an output message header. All DFLDs are transmitted. For DEV TYPE=DPM-Bn, the data structure name is optional in the header.
PPAGE
Specifies that IMS transmits the DFLDs that are grouped in one presentation page (PPAGE) together in one chain. PPAGE is valid only when DEV TYPE=DPM-An or DPM-Bn and TYPE=OUTPUT. The presentation page is transmitted in a group of one or more records. An additional presentation page is sent when a paging request is sent to IMS from the remote program. Each presentation page is preceded by an output message header, and the label on the PPAGE statement is placed in the header. For DEV TYPE=DPM-Bn, the data structure name is optional in the DD header and depends on the specification of DNM or NODNM.
SEGEXIT
Specifies that the exit routine in the MSG definition SEG is to be called for DEV TYPE=DPM-An or DPM-Bn and TYPE=INPUT. SEGEXIT is the default.

This parameter is valid only when DEV TYPE=DPM-An or DPM-Bn and TYPE=INPUT.

NOSEGEXIT
Specifies that the exit routine in the MSG definition SEG is to be bypassed.
SIM
Specifies that MFS is to simulate attributes. This is valid only when DEV TYPE=DPM-An or DPM-Bn and TYPE=OUTPUT. SIM indicates that MFS is to simulate the attributes specified by the IMS application program and place the simulated attributes in corresponding DFLDs that are defined with ATTR=YES or YES,nn. The first byte of the field is used for the simulated attributes.

If the MFLD does not supply 3270 attribute information (by means of the ATTR=YES or YES,nn operand) for the corresponding DFLD specifying ATTR=YES or YES,nn, a blank is sent in the first byte of the field. The application designer of the remote program or ISC subsystem is responsible for interpreting the simulated attribute within the remote program or ISC subsystem.

SIM is the default of SIM/NOSIM2.

NOSIM2
Specifies that MFS sends a bit string that is 2 bytes long to the remote program or subsystem. This bit string is sent exactly as received from the IMS application program. 3270 extended bytes, if any (ATTR=YES,nn), are always sent as received from the application program and follow the 2-byte string of 3270 attributes.

If the MFLD does not supply attribute information, binary zeros are sent in the 2 bytes preceding the data for the field.

For more information on the ATTR parameter on the MFLD statement, see MFS Language utility (DFSUPAA0).

HDRCTL=
Specifies, for DEV TYPE=DPM-An and DIV TYPE=OUTPUT only, the characteristics of the output message header.
FIXED
Specifies that a fully padded output message header is to be sent to the remote program. The structure of the fixed output message header is the same for all DPM output messages that are built using this FMT definition. The base DPM output message header has a length of 7, and includes the version ID.
VARIABLE
Specifies that MIDNAME and DATANAME have trailing blanks omitted and their length fields adjusted accordingly. If MIDNAME is not used, neither the MIDNAME field nor its length is present.
nn
Specifies the minimum length of the header, that is, the base header without MFS fields. The default is 7, which is the length of the base message header for DPM. Specifying other than 7 can cause erroneous results in the remote program.
The parameters RDPN=, DPN=, PRN=, and RPRN= refer to both the ISC ATTACH function management header and the equivalent ISC SCHEDULER function management header.
RDPN=
For DIV TYPE=INPUT, the dfldname specification permits the suggested return destination process name (RDPN) to be supplied in the input message MFLD referencing this dfldname. If dfldname is not specified, no RDPN is supplied in the input message.
DPN=
For DIV TYPE=OUTPUT, the 'literal' specification requests MFS to use this literal as the DPN in the output ATTACH message header. literal cannot exceed eight characters, and must be enclosed in single quotes. If the dfldname is also specified, the data supplied in the MFLD referencing this dfldname is used as the DPN in the output ATTACH message header. If no output message MFLD reference to the dfldname exists, literal is used. If the data in the MFLD referencing the dfldname is greater than eight characters, the first eight characters are used.
PRN=
For DIV TYPE=INPUT, the dfldname specification permits the suggested primary resource name (PRN) to be supplied in the input message MFLD referencing this dfldname. If the dfldname is not specified, no PRN is supplied in the input message to the application program.

For DIV TYPE=OUTPUT, the 'literal' specification requests MFS to use literal as the PRN in the output ATTACH message header. literal cannot exceed eight characters and must be enclosed in single quotes. If the dfldname is also specified, the data supplied in the MFLD referencing this dfldname is used as the PRN in the output ATTACH message header. If no output message MFLD reference to the dfldname exists, 'literal' is used. If the data in the MFLD referencing the dfldname is greater than eight characters, the first eight characters are used.

RPRN=
For DIV TYPE=INPUT, the dfldname specification permits the suggested return primary resource name (RPRN) to be supplied in the input message MFLD referencing this dfldname. If dfldname is not specified, no RPRN is supplied in the input message to the application program.

For DIV TYPE=OUTPUT, 'literal' specification requests MFS to use literal as the suggested return primary resource name (RPRN) in the output ATTACH message header. literal cannot exceed 8 characters and must be enclosed in single quotes. If the dfldname is also specified, the data supplied in the MFLD referencing this dfldname is used as the RPRN in the output ATTACH message header. If no output message MFLD reference to the dfldname exists, 'literal' is used. If the data in the MFLD referencing the dfldname is greater than 8 characters, the first 8 characters are used.

OFTAB=
Directs MFS to insert output field tab separator characters in the output data stream for the message. If OPTIONS=DNM and OFTAB, then the OFTAB character is placed in the DD header and an indicator is set to MIX or ALL. If OPTIONS=NODNM, then no DD header is sent.
X'hh'
Specifies a hexadecimal character (hh) to be used as the output field tab separator character. X'3F' and X'40' are invalid.
C'c'
Specifies a character (c) to be used as the output field tab separator character. You cannot specify a blank for the character (C' ').

The character specified cannot be present in the data stream from the IMS application program. If it is present, it is changed to a blank (X'40').

If an output field tab separator character is defined, either MIX or ALL can also be specified. The default is MIX.

MIX
Specifies that the output field tab separator character is inserted into each individual field with no data or with data that is less than the defined DFLD length.
ALL
Specifies that the output field tab separator character is inserted into all fields, regardless of data length.
COMPR=
Directs MFS to remove trailing blanks from short fields, fixed-length fields, or all fields presented by the application program.

For DPM-An devices, trailing blanks are removed from the end of a segment if all of the following are specified:

  • FILL=NULL or FILL=PT
  • GRAPHIC=YES for the current segment being mapped
  • OPT=1 or OPT=2, in the MSG segment
If these conditions are met, trailing blanks are replaced as follows:
FIXED
Specifies that trailing blanks from fixed-length fields are replaced by nulls.
SHORT
Specifies that trailing blanks from fields shortened by the application are replaced by nulls.
ALL
Specifies that trailing blanks from all fields are replaced by nulls.

The trailing nulls are compressed at the end of the record. For more information on the FILL= operand of the MFLD statement, see MFS Language utility (DFSUPAA0).

For DPM-Bn devices, trailing blanks are removed if all of the following are specified:

  • OFTAB (on the current DIV statement), FILL=NULL, or FILL=PT
  • GRAPHIC=YES for the current segment being mapped
  • OPT=1 or OPT=2 in the MSG segment
If these conditions are met, trailing blanks are removed as follows:
FIXED
Specifies that trailing blanks are to be removed from fixed-length fields.
SHORT
Specifies that trailing blanks are to be removed from fields shortened by the application.
ALL
Specifies that trailing blanks are to be removed from all fields.