IMS V7 Appl Programming DB

Download IMS V7 Appl Programming DB

Post on 11-Apr-2015

1.064 views

Category:

Documents

2 download

Embed Size (px)

TRANSCRIPT

IMS Version 7

Application Programming: Database Manager

SC26-9422-02

IMS Version 7

Application Programming: Database Manager

SC26-9422-02

Note Before using this information and the product it supports, be sure to read the general information under Notices on page xvii.

Third Edition (March 2003) (Softcopy Only) This edition replaces and makes obsolete the previous edition, SC26-9422-01. This edition is available in softcopy format only. The technical changes for this edition are summarized under Summary of Changes on page xxv. The technical changes for this edition are indicated by a number to the left of the change. Copyright International Business Machines Corporation 1974, 2003. All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

ContentsFigures . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Programming Interface Information . . . . . . . . . . . . . . . . . xix Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . xix Product Names . . . . . . . . . . . . . . . . . . . . . . . . . xx Preface . . . . . . . . Summary of Contents . . . Prerequisite Knowledge . . Terminology . . . . . . . Syntax Diagrams . . . . . How to Send Your Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi . xxi . xxi . xxi . xxii . xxiv . . . . xxv xxv xxv xxv

Summary of Changes . . . . . . . . . . . . . . Changes to the Current Edition of this Book for IMS Version 7 Changes to This Book for IMS Version 7 . . . . . . . . Library Changes for IMS Version 7 . . . . . . . . . .

Part 1. Writing Application Programs. . . . . . . . . . . . . . . . . . . . . . 1Chapter 1. How Application Programs Work with the IMS Database Application Program Environments . . . . . . . . . . . . . . The Application Programming Interface . . . . . . . . . . . . The DB/DC Environment . . . . . . . . . . . . . . . . . The DBCTL Environment . . . . . . . . . . . . . . . . The DB Batch Environment . . . . . . . . . . . . . . . . Getting Started with DL/I . . . . . . . . . . . . . . . . . . Getting Started with DL/I (for CICS Online Users) . . . . . . . . Getting Started with DL/I with the ODBA Interface . . . . . . . . Using DL/I Calls . . . . . . . . . . . . . . . . . . . . DB Call Functions . . . . . . . . . . . . . . . . . . . System Service Call Functions . . . . . . . . . . . . . . Status Codes, Return Codes, and Reason Codes . . . . . . . Exceptional Conditions . . . . . . . . . . . . . . . . . High Availability Large Databases . . . . . . . . . . . . . Error Routines . . . . . . . . . . . . . . . . . . . . DL/I and Your Application Program . . . . . . . . . . . . DBDs and PSBs . . . . . . . . . . . . . . . . . . . SSAs and Command Codes . . . . . . . . . . . . . . . Sample Hierarchies . . . . . . . . . . . . . . . . . . . Medical Database Example . . . . . . . . . . . . . . . Bank Account Example . . . . . . . . . . . . . . . . . SSA Overview . . . . . . . . . . . . . . . . . . . . . Unqualified SSAs . . . . . . . . . . . . . . . . . . . Qualified SSAs . . . . . . . . . . . . . . . . . . . . Guidelines for Using SSAs . . . . . . . . . . . . . . . SSAs and Command Codes . . . . . . . . . . . . . . . Command Codes . . . . . . . . . . . . . . . . . . . . General Command Codes for DL/I Calls . . . . . . . . . . DEDB Command Codes for DL/I . . . . . . . . . . . . . Copyright IBM Corp. 1974, 2003

Manager 3 . . . . 3 . . . . 3 . . . . 4 . . . . 4 . . . . 5 . . . . 6 . . . . 7 . . . . 8 . . . . 10 . . . . 10 . . . . 11 . . . . 11 . . . . 12 . . . . 12 . . . . 12 . . . . 12 . . . . 13 . . . . 13 . . . . 14 . . . . 14 . . . . 16 . . . . 18 . . . . 18 . . . . 18 . . . . 20 . . . . 21 . . . . 22 . . . . 23 . . . . 33

iii

Chapter 2. Defining Application Program Elements Formatting DL/I Calls for Language Interfaces . . . Application Programming for Assembler Language . . Format . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . Example DL/I Call Formats . . . . . . . . . Application Programming for C Language . . . . . Format . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . I/O Area . . . . . . . . . . . . . . . . Example DL/I Call Formats . . . . . . . . . Application Programming for COBOL . . . . . . . Format . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . Example DL/I Call Formats . . . . . . . . . Application Programming for Pascal . . . . . . . Format . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . Example DL/I Call Formats . . . . . . . . . Application Programming for PL/I . . . . . . . . Format . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . Example DL/I Call Formats . . . . . . . . . Relationship of Calls to PCBs . . . . . . . . . Specifying the I/O PCB Mask . . . . . . . . . Specifying the DB PCB Mask . . . . . . . . . Specifying the AIB Mask . . . . . . . . . . . Specifying the AIB Mask for ODBA Applications . . . AIB Examples . . . . . . . . . . . . . . Specifying the UIB (CICS Online Programs Only) . . Specifying the I/O Areas . . . . . . . . . . . Segment Search Arguments . . . . . . . . . . SSA Coding Rules . . . . . . . . . . . . SSA Coding Restrictions . . . . . . . . . . SSA Coding Formats. . . . . . . . . . . . GSAM Data Areas . . . . . . . . . . . . . GSAM DB PCB Masks . . . . . . . . . . . GSAM RSAs. . . . . . . . . . . . . . . Using the AIBTDLI Interface . . . . . . . . . . Overview . . . . . . . . . . . . . . . . Defining Storage for the AIB . . . . . . . . . Specifying the Language Specific Entry Point. . . . Assembler Language . . . . . . . . . . . C Language . . . . . . . . . . . . . . . COBOL . . . . . . . . . . . . . . . . Pascal . . . . . . . . . . . . . . . . . PL/I . . . . . . . . . . . . . . . . . . Interface Considerations . . . . . . . . . . PCB Lists . . . . . . . . . . . . . . . . . Format of a PCB List . . . . . . . . . . . Format of a GPSB PCB List . . . . . . . . . PCB Summary . . . . . . . . . . . . . . Using the AERTLDI interface . . . . . . . . . . Overview . . . . . . . . . . . . . . . . Defining Storage for the AIB . . . . . . . . . Using Language Environment . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39 39 40 40 41 42 42 42 43 44 45 45 45 46 47 48 48 49 50 50 50 51 52 52 53 57 59 61 63 64 67 67 68 69 69 72 72 72 73 73 73 73 74 74 75 75 75 75 76 76 77 77 78 78 78 79

iv

Application Programming: Database Manager

The CEETDLI interface to IMS . . . . . . . . . . . . . LANG= Option on PSBGEN for PL/I Compatibility with Language Environment . . . . . . . . . . . . . . . . . . . Special DL/I Situations . . . . . . . . . . . . . . . . . Application Program Scheduling against HALDBs . . . . . . Mixed-Language Programming . . . . . . . . . . . . . Using Language Environment Routine Retention . . . . . . Using the Extended Addressing Capabilities of MVS/ESA . . . Preloaded Programs . . . . . . . . . . . . . . . . . Chapter 3. Writing DL/I Calls for Database Management CIMS Call . . . . . . . . . . . . . . . . . . . Format . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . Usage . . . . . . . . . . . . . . . . . . . CLSE Call . . . . . . . . . . . . . . . . . . Format . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . Usage . . . . . . . . . . . . . . . . . . . DEQ Call . . . . . . . . . . . . . . . . . . . Format (Full Function) . . . . . . . . . . . . . Format (Fast Path DEDB) . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . Usage . . . . . . . . . . . . . . . . . . . Restrictions . . . . . . . . . . . . . . . . . DLET Call. . . . . . . . . . . . . . . . . . . Format . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . Usage . . . . . . . . . . . . . . . . . . . FLD Call . . . . . . . . . . . . . . . . . . . Format . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . Usage . . . . . . . . . . . . . . . . . . . FSAs . . . . . . . . . . . . . . . . . . . GN/GHN Call . . . . . . . . . . . . . . . . . Format . . . . . . . . . . . . . . . . . . . Parameters . . . . . . . . . . . . . . . . . Usage, Get Next (GN) . . . . . . . . . . . . . Usage, Get Hold Next (GHN) . . . . . . . . . . Usage, HDAM, PHDAM, or DEDB Datab