IPSB SECTION

The IPSB SECTION relates the IPSB to a particular PSB expected by the DL/I application program in a native DL/I environment. The IPSB section contains one statement--the IPSB statement. This statement identifies the IPSB and specifies global information related to the corresponding PSB.
idms19
The IPSB SECTION relates the IPSB to a particular PSB expected by the DL/I application program in a native DL/I environment. The IPSB section contains one statement--the IPSB statement. This statement identifies the IPSB and specifies global information related to the corresponding PSB.
The information supplied in the IPSB SECTION corresponds to the information that is specified to DL/I by the PSBGEN statement in the PSB phase. The PSBGEN statement is located at the end of the PSB.
Syntax
►►─── IPSB SECTION ── . ─────────────────────────────────────────────────────►    ►─── IPSB name is ipsb-name ────── of SUBSchema subschema-name ─────────────►    ►─┬──────────────────────────────┬──────────────────────────────────────────►    └─ LANGuage is ──┬─ CObol ◄ ───┤                     ├─ PL/i ──────┤                     └─ ASsembler ─┘    ►─┬───────────────────────────────────────────────┬─────────────────────────►    └─ MAXimum IOAREA size is maximum-io-area-size ─┘    ►─┬────────────────────────────────────────┬────────────────────────────────►    └─ MAXimum SSA size is maximum-ssa-size ─┘    ►─┬─────────────────────────────────────┬───────────────────────────────────►◄    └─ COMPATibility is ─┬─ yes ──┬─── . ─┘                         └─ no ◄ ─┘
Parameters
  • IPSB SECTION
    IPSB SECTION must be the first entry in the IPSB section, followed by one IPSB statement.
  • IPSB name is
    ipsb-name
    Identifies the IPSB being generated.
    Ipsb-name
    is the 1- to 8-character PSB name used by the application program in a native DL/I environment. When the IPSB is link edited, the load module or phase name is the same as the
    ipsb-name
    .
  • of SUBSchema
    subschema-name
    Identifies the subschema to be used by the CA IDMS DLI Transparency run-time interface.
    Subschema-name
    is the 1- to 8-character name of the subschema used by CA IDMS DLI Transparency to access the CA IDMS/DB database.
  • LANGuage IS
    CObol/ PL/i /ASsembler
    Specifies the programming language of the application program using this IPSB. The language specified in the LANGUAGE parameter of the PSBGEN statement must be entered. The default is COBOL.
  • MAXimum IOAREA size is
    maximum-io-area-size
    Specifies the amount of space to be allocated for the application program's I/O area.
    If this clause is omitted, the compiler calculates this size as the total length of all sensitive segments in the longest possible path call issued by programs using this IPSB. Include this clause if a value is specified in the IOASIZE parameter of the PSBGEN statement.
    If the parameter is missing from the PSBGEN statement, the compiler calculates the space to be allotted for the application program's I/O area. Refer to the appropriate DL/I documentation for further details on I/O area allocation.
  • MAXimum SSA size is
    maximum-ssa-size
    Specifies the maximum total length of all segment search argument (SSA) strings to be used in a given DL/I call issued by programs using this IPSB.
    If this clause is omitted, the compiler calculates the size as 280 times the maximum number of levels associated with any PCB statement within this IPSB. Include this clause if a value is specified in the SSASIZE parameter of the PSBGEN statement.
    If this parameter is missing from the PSBGEN statement, the compiler calculates the maximum SSA size. Refer to the appropriate DL/I documentation for further details on SSA size specification.
  • COMPATibility is yes/no
    Specifies whether the application program expects to find an I/O PCB in the PSB.
    The default is NO.
    If YES is specified, the CA IDMS DLI Transparency run-time interface creates a dummy I/O PCB as the first PCB. Note that you do not define this dummy I/O PCB, nor is it to be used by the application program. You should include this clause if CMPAT=YES is specified in the PSBGEN statement; otherwise, the compiler uses the default.
Usage
The PSBGEN statement in this example serves as the source for the IPSB SECTION.
In this example, the IPSB has a name of PSB1 and relates to DL/I requests to structures in the CA IDMS/DB subschema SUBSCH1. As indicated in the PSBGEN statement:
  • The application program is written in COBOL
  • I0SIZE=2000
  • SSASIZE=1500
  • CMPAT=NO
The PSBGEN statement values above correspond in the IPSB SECTION to:
  • IOAREA SIZE IS 2000
  • MAX SSA SIZE IS 1500
  • COMPATIBILITY IS NO
               DL/I PSBGEN Statement    PSBGEN  LANG=COBOL,PSBNAME=PSB1,MAXQ=0,CMPAT=NO,IOSIZE=2000,              SSASIZE=1500                  CA IDMS DLI Transparency IPSB Section    IPSB SECTION.      IPSB NAME IS PSB1 OF SUBSCHEMA SUBSCH1      LANG IS COBOL MAX IOAREA SIZE IS 2000      MAX SSA SIZE IS 1500 COMPATIBILITY IS NO.
Figure 34. Sample DL/I PSBGEN and IPSB SECTION