Sun Logo


Sun Mainframe Transaction Processing Software Developer's Guide

Release 8.0.1

816-5329-11



Contents

Figures

Tables

Code Samples

Preface

1. Development System

Starting the Development System

Development System Main Menu

Development System Restrictions

Sun MTP Standards

Screen Formats

Function Keys

Data Validation

File Identifiers

2. File Editor

Starting the File Editor and Selecting a File

procedure iconsmall spaceTo Start the File Editor and Select a File

Display Criteria Fields

File Information Fields

File Editor Function Keys

3. UNIX File Utilities

UNIX File Utilities Menu

procedure iconsmall spaceTo Display the File Utilities Menu

procedure iconsmall spaceTo Apply an Option

Using the File Utilities

Browse Option (B)

Copy Option (C)

Rename Option (R)

Search Option (S)

Concatenate Option (A)

Print Option (P)

Delete Option (D)

4. Compatibility With IBM CICS

Sun MTP and IBM CICS Differences

Absolute Addressing

Assignment of Terminal Identifiers

Byte Ordering

Base Locator Linkage (BLL) and Pointer Variables for COBOL

Calling C Subroutines From COBOL Programs

Supported ISC Functions

Index Initialization

COBOL Programs

PL/I and C Programs

Levels of Support for CICS Commands

Supported CICS Commands

ABEND

ADDRESS

ALLOCATE (APPC mapped)

ASKTIME

ASSIGN

BIF DEEDIT

CANCEL

CHANGE PASSWORD

COLLECT STATISTICS

CONNECT PROCESS

CONVERSE (APPC)

CONVERSE (LUTYPE2/LUTYPE3)

DELAY

DELETE

DELETEQ TD

DELETEQ TS

DEQ

DUMP

ENDBR

ENQ

ENTER

EXTRACT ATTRIBUTES

EXTRACT CERTIFICATE

EXTRACT PROCESS

FORMATTIME

FREE

FREEMAIN

GETMAIN

HANDLE ABEND

HANDLE AID

HANDLE CONDITION

IGNORE CONDITION

INQUIRE CONNECTION

INQUIRE FILE

INQUIRE PROGRAM

INQUIRE REQID

INQUIRE SYSTEM

INQUIRE TASK

INQUIRE TASK LIST

INQUIRE TDQUEUE

INQUIRE TERMINAL

INQUIRE TRANCLASS

INQUIRE TRANSACTION

ISSUE ABEND

ISSUE CONFIRMATION

ISSUE DISCONNECT

ISSUE ERASEAUP

ISSUE ERROR

ISSUE PRINT

ISSUE SIGNAL

JOURNAL

LINK

LOAD

POP HANDLE

POST

PURGE MESSAGE

PUSH HANDLE

READ

READNEXT

READPREV

READQ TD

READQ TS

RECEIVE (APPC)

RECEIVE (LUTYPE2/LUTYPE3)

RECEIVE MAP

RELEASE

RESETBR

RETRIEVE

RETURN

REWRITE

SEND (APPC mapped)

SEND (LUTYPE2/LUTYPE3)

SEND CONTROL

SEND MAP

SEND PAGE

SEND TEXT

SEND TEXT MAPPED

SEND TEXT NOEDIT

SET CONNECTION

SET FILE

SET PROGRAM

SET TDQUEUE

SET TERMINAL

SET TRANCLASS

SET TRANSACTION

SIGNOFF

SIGNON

START

STARTBR

SUSPEND

SYNCPOINT

TRACE

UNLOCK

VERIFY PASSWORD

WAIT CONVID

WAIT EVENT

WAIT JOURNAL

WRITE

WRITE OPERATOR

WRITEQ TD

WRITEQ TS

XCTL

Proprietary Command

LEXECTERM

Supported BMS Functions

Extended Attributes

Alternate Screen Sizes

Determining the Screen Size

Specifying a BMS Suffix

Supported EIB Fields

5. Compiling COBOL and PL/I Programs and Assembling Maps

Compilation Menu Functions

Displaying the Compilation Menu

procedure iconsmall spaceTo Display the Compilation Menu

procedure iconsmall spaceTo Select Files

COBOL Copylib Settings

procedure iconsmall spaceTo Display the Copylib Settings Screen

Compiling COBOL Programs

Using the Compilation Menu

procedure iconsmall spaceTo Display the Set Compiler Options Screen

COBOL Compiler Options

procedure iconsmall spaceTo Compile the Program

Using the Command-Line Interface

Translating Programs

Compiler Directives

Using Scripts and Makefiles to Compile

Compiling COBOL Programs to .gnt for Production Systems

Compiling Online PL/I Programs

procedure iconsmall spaceTo Display the Set PL/I Compiler Options Screen

PL/I Compiler Options

procedure iconsmall spaceTo Compile the Program

Assembling BMS Maps

Using the Compilation Menu

procedure iconsmall spaceTo Display the Set Assembler Options Screen

procedure iconsmall spaceTo Assemble the Map

Using the Command Line-Interface to Assemble Maps

6. Using PL/I Shared Libraries

Setting Up Shared Libraries

Naming Shared Libraries

Opening Shared Libraries

Link Line Examples for Building a Shared Library

PPT Pre-load Field

Using LOAD PROGRAM ENTRY With Shared Libraries

Using CEMT With Shared Libraries

Running a Different Version of the Same Shared Library

Building Shared Libraries

7. Using C Shared Objects

Shared Object Model for C Applications

Using the CICS API in C

Unsupported API Commands

Replacing Data Type Values in C

Translating C Programs

Limitations of the C Translator

Setting Up Shared Objects

Naming Shared Objects

Opening Shared Objects

Link Line Examples for Building a Shared Object

PPT Pre-load Field

Building the Shared Object

procedure iconsmall spaceTo Build a Shared Object

Assembling BMS Maps

Invoking C Programs

Using CEMT With Shared Objects

Running a Different Version of the Same Shared Object

8. Using Java Programs

Prerequisites for Using JCICS

Using the JCICS API

JCICS Application Architecture

Building JCICS Applications

Customizing the Classpath and Library Path

procedure iconsmall spaceTo Make the Classpath.appends and Libpath.appends Files Available

Defining Java Programs in the PPT

procedure iconsmall spaceTo Define the Java Program in the PPT

Starting a Region With JCICS Support

Required COBOL Version

procedure iconsmall spaceTo Start the Region

Adding JVM Startup Options

Restrictions and Limitations

Data Persistence

Threading Issues

9. Creating Maps and Mapsets Using the SGU

Starting the SGU

procedure iconsmall spaceTo Start the SGU

Maps Maintenance Menu

Creating a Mapset and Adding a Map

procedure iconsmall spaceTo Create a New Mapset

procedure iconsmall spaceTo Add a Map

Mapset Characteristics

Defining Extended Attributes for the Mapset

procedure iconsmall spaceTo Define Extended Attributes for a Mapset

Adding Map Names to the Mapset

procedure iconsmall spaceTo Add a New Map

Customizing Map Characteristics

procedure iconsmall spaceTo Customize Map Characteristics

Handling Rows and Columns

procedure iconsmall spaceTo Define Extended Attributes for a Map

Formatting a Screen

procedure iconsmall spaceTo Display the Formatting Help Screen

Attribute Identifiers

Field Attribute Defaults

procedure iconsmall spaceTo Shift a Line to the Right or Left

procedure iconsmall spaceTo Move or Copy the Current Line

procedure iconsmall spaceTo Delete or Insert Characters

Modifying Field Characteristics

procedure iconsmall spaceTo Modify Field Characteristics

Deleting a Map

procedure iconsmall spaceTo Delete a Map

Creating BMS Macro Instructions

procedure iconsmall spaceTo Create a .bms File

Displaying BMS Files

procedure iconsmall spaceTo Display the BMS Maintenance Menu

procedure iconsmall spaceTo Display Files in a Different Directory

Assembling a BMS Map

procedure iconsmall spaceTo Assemble a Map Using the SGU

procedure iconsmall spaceTo Assemble a Map Using kixbms

Creating an .sgu Mapset File

procedure iconsmall spaceTo Create an .sgu File Using the SGU

procedure iconsmall spaceTo Create an .sgu File Using kixbms

10. Accessing an RDBMS Using the SQL Interface

Application Design Techniques

Maintaining Database Integrity

Implementing Implicit Operations

Accessing More Than One RDBMS Within a Transaction

RDBMS Security Management

Oracle Security Considerations

DB2 Security Considerations

Sybase Security Considerations

Managing SQL Cursors

Using Multiple Executables

Compiling COBOL Programs

procedure iconsmall spaceTo Compile a COBOL Program

procedure iconsmall spaceTo Compile an Oracle COBOL Program

procedure iconsmall spaceTo Compile a DB2 COBOL Program

procedure iconsmall spaceTo Compile a Sybase COBOL Program

Compiling Oracle PL/I Programs

procedure iconsmall spaceTo Compile the Program

11. Communicating Through Sockets

TCP/IP Sockets

unikixsock Server Process

procedure iconsmall spaceTo Set Up the Socket Interface

Sending Messages

Receiving Messages

Secure Socket Layer

unikixssl Server Process

Sending Messages

Receiving Messages

SSL User Exit

Server Certificate Common Name Issues

12. Using MQSeries

Types of Applications Supported by MQSeries

Application Design Guidelines for MQSeries

Using the MQSeries Triggering Mechanism

Defining a Trigger Queue

Triggered Transaction Example

Securing Resources and Transactions

Configuring Sun MTP to Run MQSeries Applications

procedure iconsmall spaceTo Configure MQSeries

procedure iconsmall spaceTo Build Sun MTP to Use MQSeries

procedure iconsmall spaceTo Configure the Region to Use MQSeries

procedure iconsmall spaceTo Configure the Region to Use the MQSeries Triggering Mechanism

Preparing Your Applications

Running the MQSeries Sample Application

13. Using the MQ-JMS Bridge

How the MQ-JMS Bridge Works

Defining MQ-JMS Bridge Attributes

Configuring the Region

Defining the jms Group in the GCT

procedure iconsmall spaceTo Define the jms Group

procedure iconsmall spaceTo View MQ-JMS Bridge Program Information

procedure iconsmall spaceTo Associate a Transaction ID With the MQ-JMS Bridge Program

Specifying the MQ-JMS Bridge Properties

procedure iconsmall spaceTo Define the Property File

Application Mapping

Configuring the Classpath

Configuring the Library Path

Configuring the MQSERIES Environment Variable

Processing Flow

Debugging Information

Triggered transaction start Event

Get Trigger Msg Event

Target application Event

Receiver queue started Event

Process 'onMessage' Event

Unit-of-Work Commit complete Event

State of Receiver queue is now 'empty' Event

Close Receiver queue and wrap-up Event

Wrap-up successful Event

Running the MQ-JMS Bridge Sample Application

Using JMS and COBOL Applications

procedure iconsmall spaceTo Use the MQ-JMS Bridge to Trigger a COBOL Program

14. Debugging Online Programs

Using the Debug Facility

procedure iconsmall spaceTo Invoke the Debug Facility

CEDF Options

procedure iconsmall spaceTo Select a Debugging Mode

procedure iconsmall spaceTo Set Breakpoints During a Debug Session

Debug Processor Main Screen

procedure iconsmall spaceTo Display Main Storage

procedure iconsmall spaceTo Turn Off Debugging

Debugging COBOL Programs

Using Animator

procedure iconsmall spaceTo Debug Programs Using Animator

Using Remote Animator

procedure iconsmall spaceTo Debug Programs Using Remote Animator

Debugging C Language Programs

procedure iconsmall spaceTo Debug Programs

Debugging PL/I Programs

procedure iconsmall spaceTo Set Up CodeWatch

procedure iconsmall spaceTo Debug Programs

15. Batch Processing

Configuring the Batch Environment

Setting the KIXBTCH Environment Variable

Supporting Multiple $KIXBTCH Environments

Setting the VCT Batch Fields

Batch Tasks

Handling Errors in Batch Shell Scripts

Executing COBOL Batch Programs

Accessing Data Files From COBOL Batch Programs

procedure iconsmall spaceTo Process an ESDS File

Compiling Batch COBOL Programs

Executing Programs Using Standard Batch

procedure iconsmall spaceTo Execute a Program

Executing Programs From Sun MBM

Executing Batch Programs Using Online Transactions

Executing Batch Jobs With Multiple Steps

Passing Parameters to unikixvsam Programs

Setting Return Codes

Executing PL/I Batch Programs

Executing C Language Batch Programs

procedure iconsmall spaceTo Compile a C Language Batch Program

procedure iconsmall spaceTo Execute the Program

Using unikixbld to Access VSAM Files From a Batch Job

Using kixfile to Manage VSAM Datasets From a Batch Job

Using dfhusdup to Define and Report Resources

Sun MTP Batch Utilities That Do Not Affect VSAM Datasets

Statistical Information About VSAM Batch Jobs

Overriding the Batch Search Interval

Maintaining Data Consistency

VSAM RC

Limitations of VSAM RC

Application Design Issues

Changing Existing Batch Programs for VSAM RC

Programs Without API Locks

Programs With API Locks

Read-Locking Examples

Controlling Data Integrity

Using Recovery With Batch Jobs

Performing Fast Writes From a Batch Program

Debugging Batch COBOL Programs

procedure iconsmall spaceTo Compile a Program for Debugging

procedure iconsmall spaceTo Debug Using the VSAM Trace Facility

procedure iconsmall spaceTo Debug Using Animator

16. Accessing VSAM Files From External Programs

C-ISAM Interface

Supported Functions

Batch and Online Considerations

Recovery and C-ISAM

Functions Different From the C-ISAM Standard

Functions Unique to Sun MTP

Error Codes

Accessing VSAM Files Using C Programs

procedure iconsmall spaceCompiling the C Language Program

procedure iconsmall spaceTo Execute the C Program

Glossary

Index