6 z/OS上のIMSからUNIX上のOracle Tuxedo Application Runtime for IMS UsersへのCOBOLアプリケーションの移行

z/OS上のIMSの制御の下に実行されているCOBOLアプリケーションを移行するには、次のステップを実行する必要があります。

  1. ART Workbenchを使用してCOBOLソース・コードを変換します
  2. z/OS上のIMSマクロに従って、Tuxedo ART for IMSの構成ファイルをカスタマイズします。
  3. Tuxedo ART for IMSサーバーで構成されているOracle Tuxedoアプリケーションを定義および起動し、3270端末上でトランザクションを送信することで、目的のCOBOLアプリケーションを実行するか、ARTバッチ・ランタイムによってJOBを実行します。

6.1 COBOLプログラムの変換

z/OS上のIMSからのCOBOLソース・プログラムは、最初にART Workbenchによって変換する必要があります。変換後、変換されたソース・プログラムはMicro Focus COBOLまたはCOBOL-ITコンパイラで.gntファイルにコンパイルできます。COBOLソース・プログラムの変換の詳細は、ART Workbenchのドキュメントを参照してください。COBOLソース・プログラムのコンパイルの詳細は、Micro Focus COBOLまたはCOBOL-ITのドキュメントを参照してください。

たとえば、2つのCOBOLソース・プログラムが変換され、コンパイルされます。

DFSIVAP1.cbl (DFSIVAP1.gntにコンパイル)は、MPPプログラムです

DFSIVAP2.cbl (DFSIVAP2.gntにコンパイル)は、BMPプログラムです

.gntファイルは、$COBPATH (Micro Focus COBOL)または$COB_LIBRARY_PATH (COBOL-IT)の下に置く必要があります。

6.2 IMSランタイムでのCOBOLプログラム・デバッグの実装

この項の内容は次のとおりです。

6.2.1 ユースケース1

2人のユーザーが2つのMF BMP COBOLプログラムをそれぞれデバッグします。

ユーザーAがCOBOL Program1をデバッグし、ユーザーBがCOBOL Program2をデバッグする場合、次のステップを実行します。

  1. COBOLデバッグ情報を次のようにimsdebug.desc構成ファイルに追加します。
    [cobol]
    USER=A
    APPNAME=program1
    DEBUGID=myDebugID1
    [cobol]
    USER=B
    APPNAME=program2
    DEBUGID=myDebugID2
    
  2. ART IMSサーバーを起動します。

    ユーザーAおよびBは、animユーティリティを起動する同じLinuxアカウントで独自のART IMSサーバーを起動します。animユーティリティによって指定されるDEBUGIDのみがデバッグされます。

  3. animコマンドラインを入力します。

    ユーザーAは、端末からanim %XmyDebugID1というコマンドラインを入力します。

    ユーザーBは、端末からanim %XmyDebugID2というコマンドラインを入力します。

  4. COBOLプログラムを起動してデバッグします。

6.2.2 ユースケース2

1人のユーザーが1つのトランザクション内のすべてのCIT COBOLプログラムをデバッグします。

ユーザーCがトランザクションtranACOBOL Program1およびProgram2をデバッグする場合、次のステップを実行します。

  1. COBOLデバッグ情報を次のようにimsdebug.desc構成ファイルに追加します。
    [cobol]
    USER=C
    TRANNAME=tranA
    DEBUGID = 111
  2. deetコマンドラインを入力します。

    ユーザーCは、端末からDeet -p 111というコマンドラインを入力し、デバッグします。

    ノート:

    デバッグが完了したらデタッチする必要があります。

6.3 構成ファイルのカスタマイズ

Tuxedo ART for IMSでz/OS上のIMSから移行されたCOBOLアプリケーションを実行するには、いくつかの重要な構成ファイルを、そのCOBOLアプリケーションに関連するIMSマクロに基づいてカスタマイズする必要があります。

MPPプログラムを実行するには、リスト1に示すプログラムに対応するトランザクション・コードが必要です。

リスト1 imstrans.descの例

[imstran]
name=TRAN1
response=no
edit=ULC
appname=DFSIVAP1
class=1

トランザクション・コードTRAN1は、アプリケーションDFSIVAP1に対応しています。

各COBOLアプリケーションは、それがMPPとBMP (BMPT)のどちらのプログラム(TPまたはBATCH)であるかを識別するそれ自体の定義を持っている必要があります。次のリストに、2つのアプリケーションを定義するimsapps.descの例を示します。

リスト2 2つのアプリケーションを定義するimsapps.desc

[imsapp]
name=DFSIVAP1
type=TP

[imsapp]
name=DFSIVAP2
type=BATCH

IMSでアプリケーションを実行するには、1つのPSBが必要です。Tuxedo ART for IMSでは、アプリケーションのPSBマクロは.psb構成ファイルにマップされます。MPPプログラムの場合、その.psbファイルの接頭辞はアプリケーション名、つまり、$appname.psbである必要があります。BMPおよびBMPTプログラムの場合、その.psbファイルの接頭辞はIMSアプリケーションのネーミング・ルールに従った任意の名前にすることができます。DFSIVAP1およびDFSIVAP2.psbファイルを、次に示します。1つのI/O PCBおよび.psbに定義されているPCBは、COBOLプログラムが起動されたときにそのパラメータとしてそのプログラムに渡されます。

リスト3 DFSIVAP1およびDFSIVAP2 .psbの例

DFSIVAP1.psb
[imspcb]
modify=yes
express=no

[imspcb]
modify=yes
express=no

DFSIVAP1.psbから、アプリケーションDFSIVAP1には、1つのI/O PCBと2つの代替PCBがその引数として必要であることがわかります。

リスト4 2つの代替PCBを持つDFSIVAP1

DFSIVAPX.psb
[imspcb]
type=GSAM
name=DFSIVD5I
procopt=G

[imspcb]
type=GSAM
name=DFSIVD5O
procopt=LS

[imspcb]
type=GSAM
name=TSTIVD5O
procopt=LS

DFSIVAPX.psbから、アプリケーションDFSIVAP2には、1つのI/O PCBと3つのGSAM PCBが必要であることがわかります。

詳細は、『Oracle Tuxedo Application Runtime for IMSリファレンス・ガイド』を参照してください

6.4 Oracle Tuxedoアプリケーションの定義

Tuxedo ART for IMSでIMS COBOLアプリケーションを実行するには、次のサーバーをTuxedoアプリケーションで起動する必要があります。

ARTICTL - 3270端末との接続を担当するサーバー

ARTIMPP - MPPアプリケーションの実行を担当するサーバー

ARTIBMP - BMPアプリケーションの実行を担当するサーバー

詳細は、Oracle Tuxedoドキュメントのファイル形式、データ記述方法、MIBおよびシステム・プロセスのリファレンスの第5項UBBCONFIG(5)および『Oracle Tuxedo Application Runtime for IMSリファレンス・ガイド』のTuxedo ART for IMSサーバー・パラメータに関する項を参照してください

6.5 MPP COBOLプログラムの実行

MPPプログラムDFSIVAP1を実行するには、3270端末を開き、UBBCONFIGファイルで定義されているホスト名およびポートを使用してARTICTLサーバーに接続し、画面を書式設定して、トランザクション・コードTRAN1を入力します。DFSIVAP1.gntがARTIMPPサーバーによって起動されます。

6.6 BMP COBOLプログラムの実行

BMPプログラムDFSIVAP2を実行するには、ユーザーは、ART Workbenchによってz/OS上の対応するJCLをシェル・スクリプトに変換し、それをJOBとしてART Batchランタイムによって実行できるようにする必要があります。そのJOBによって、ユーティリティDFSRRC00が起動され、ARTIBMPサーバーによって公開されている特定のサーバーが起動され、それによってリクエストされたCOBOLアプリケーションが起動されます。詳細は、ART Workbenchのドキュメントを参照してください。