| Assembler Programs |
| IMS Problem Determination | |
This chapter provides an overview of the IMS/ESA features supported by
IMS Option. In general, the features described relate to the DL/I
programming language and general application considerations.
The following chapters provide additional product specifications:
In these chapters, when a feature is listed as supported, it means it
functions in IMS Option as documented by the manuals provided with IBM's
IMS/ESA version 4.1 manuals. Please contact your sales representative if
you have a question on any feature listed or missing from the IMS Option
manuals.
DL/I calls:
- GU, GHU, GN, GHN, GNP, GHNP
- ISRT, REPL, DLET
- Fast Path FLD, POS
- Gsam OPEN, CLSE
CICS DL/I calls:
SSAs:
- Up to 15 SSAs per call, each SSA limited to 4,000 bytes
- All SSA command codes except DEDB Subset Pointers and Set Lock "Q"
command code
- All SSA relational operators
- Up to 125 boolean operations each SSA
Dynamic rollback and database sharing with record level locking. See the
chapter IMS
Fileshare Databases for details.
Database access types:
- HIDAM, HDAM, HISAM, HSAM
- DEDB, MSDB
- GSAM, INDEX, LOGICAL
- SHSAM and SHISAM are processed as HSAM and HISAM
Database segment types:
- Uniquely keyed segments
- Non-uniquely keyed segments, - first, here and last rules
- Non-keyed segments - first, here and last rules
- Fixed and variable length segments
- Segments containing source data for secondary index segments
- Logical children and logical parents
- DEDB sequential dependents (SDEP) segments
Miscellaneous DL/I features:
- The optional "parm count" field is supported for all calls
- No limit to length of I/O area in path call
- The AIBTDLI call interface is supported, including the INQY
subfunction
- Support for all xxxTDLI call interfaces from 370 Assembler programs
with the Micro Focus Assembler Option
- Support for COBOL EXEC DL/I statements
- A CBLHSSR (High Speed Sequential Retrieval) interface is provided.
HSSR restrictions are not enforced
DL/I calls:
System service calls:
- CHKP, XRST, ROLL, ROLB and SYNC. See the chapter IMS
Syncpoint Coordination for details
- INIT call - always returns "spaces" in DB PCBs
Transaction types:
- Conversational
- Non-conversational
- Response mode
- Non-response mode
- Queue-driven BMP
- Batch programs - BMP and DLI
Deferred and Immediate message switches
3270 device support:
- Model 2, 3, 4 and 5
- 3270 keyboard: PF1-PF24, Clear Screen, PA1, Erase EOF
- 3270 printer emulation
MFS facilities:
- Logical and physical paging
- Multi-segmented messages
- Field exits
- Dynamic and default attributes, extended attributes and cursor
positioning
- Lower case to upper case translation
- MFS Language Control
- REXXTDLI and REXXIMS interfaces
- Printer Spool API
- A CBLHSSR entry point is provided but the HSSR batch utilities are
not provided.
- Application Command interface
- These system service calls can be issued by an application but do not
perform any action:
- CMD, GCMD, DEQ, GSCD, LOG, STAT, ROLS, SETS, SETU, AUTH
- GSAM support does not include Record Search Arguments (RSAs)
- IMS Option does
not support GSAM undefined length records
- When restarting a batch program, input GSAM databases are not
repositioned: the database position is at the start of the GSAM data
The following are TM/MFS features which are not supported:
- MFS Option 3 messages
- Bypass MFS system exits and MOD-names
- MFS input message Segment exits
- PA2 key message de-queue
- Restrictions of message switching between Trancodes with different
length SPAs not enforced
- Maximum length message inserted using TP PCB is 31,000 bytes
- Maximum length of message input or output with IO PCB is 12,000
bytes, including multiple segments of messages
- NRMP program types operate as if the processing limit were set to a
value of '1'
There are three product limitations:
- The L command code is supported when it appears in either or both of
the last two SSAs. When an L command code appears before the last two
SSAs, all SSAs following the SSA with the L command code are also
assumed to contain the L command code, except for the last SSA which is
processed as specified by the application. For insert calls, this does
not affect SSAs which describe the segments to be inserted.
- Replace calls which follow a partially successful Get Hold path call
return a DA status code when the SSAs above the level which was
successfully retrieved:
- Are unqualified
- Are qualified on other than a unique key
- Specify greater than or greater than or equal to relational
operators
- Are not provided
- A II status code is returned when inserting a
segment defined with a NOTWIN pointer (singly occurring). In this case,
the database position can be different than with IMS/ESA. If the
NOTWIN segment is defined with a sequence field, the database position
after a II status code is immediately before the NOTWIN segment which
already existed in the database. A 'get next' call returns this NOTWIN
segment occurrence. This occurs even when the sequence field in the I/O
area for the insert call was a higher value than the sequence field of
the existing NOTWIN segment. Also, the PCB key feedback returned with
the II status code contains the concatenated key up through the existing
NOTWIN segment. IMS/ESA performs slightly different processing when
inserting duplicate NOTWIN segments with a sequence field depending on
previous database position and the value of the sequence field in the
I/O area. NOTWIN segments with no sequence field defined are not
affected by this difference.
Copyright © 1999 MERANT International Limited. All rights reserved.
This document and the proprietary marks and names
used herein are protected by international law.
| Assembler Programs |
| IMS Problem Determination | |