機械翻訳について

2 プロシージャ・ゲートウェイ管理ユーティリティ

手続き型ゲートウェイ管理ユーティリティ(PGAU)は、PGA管理者またはユーザーがリモート・トランザクション・プログラムと交換されるデータを定義するのを支援するユーティリティです。 「TIPの作成」「TIP内部」で説明されているPL/SQL Transaction Interface Packages (TIP)を生成し、通信プロトコルに応じて「クライアント・アプリケーション開発(SNAのみ)」または「クライアント・アプリケーション開発(TCP/IPのみ)」のいずれかを生成します。

トピック:

PGAUの概要

注意:

以前にSNAプロトコルを使用してゲートウェイ上に生成された既存のTIPがあり、新しいTCP/IP機能を利用する場合は、必須のNLS_LANGUAGEとSide Profile Settingsを使用してPGAUによってTIPを再生成する必要があります。 DEFINE TRANSACTIONコマンドで、適切なASCIIキャラクタ・セットを指定します。

これは、ゲートウェイがIMS Connect内の適切なユーザー出口が使用されていることを前提としているためです。これは、適切なASCIIキャラクタ・セットとEBCDICキャラクタ・セットの間で変換されます。

PGAUは、データ・ディクショナリPG DDを保持しています。これは、Oracleデータベース内の表の集合です。 これらの表には、リモート・トランザクション・データの定義と、そのデータがリモート・トランザクション・プログラムとどのように交換されるかが格納されています。 TIPとそれぞれのリモート・トランザクション・プログラムとの間の相関については、「"TIPとリモート・トランザクション・プログラムの通信の確保"」を参照してください。 PGのDDコンテンツは、この相関関係を定義します。

PGA管理者またはユーザーは、次のPGAUコマンド(文とも呼ばれます)を使用して、TIPとリモート・トランザクション・プログラム間の相関を定義します:

  • PGAU DEFINE DATA文。交換するデータを記述します。

  • PGAU DEFINE CALL文。交換シーケンスを記述します。

  • 先行するCALLコマンドとDATAコマンドをグループ化し、リモート・トランザクション・プログラムに固有のネットワーク名やロケーションなどの特定の局面を記述するPGAUのDEFINE TRANSACTION 文。

  • PGAU GENERATE文は、TIP/トランザクション相関がPG DDで定義された後で、PG管理者またはユーザーは、TIP指定を指定および作成するために使用します。 PG DDの定義を変更および削除するために必要な追加のPGAUコマンドは、「"PGAUコマンド"」で説明されています。

PGAUコマンドは、Procedural Gateway Definition Language (PGDL)として知られています。 PGDLへの言及は、本書で定義されているPGAUコマンドの集合に対するものです。

PGAUは、編集およびスプール機能とSQLコマンド発行機能を提供します。

注意:

一般的なデータベース管理では、SQL*PlusではなくPGAUを使用しないでください。

あるいは、PGAUコマンドを制御ファイルで提供することもできます。 コントロール・ファイルには、PG DDを操作したり、TIP仕様を生成するための1つ以上のPGAUコマンドが含まれています。

PGAUは、各操作でステータス・メッセージを発行します。 メッセージ・テキストは、グローバリゼーション・サポート・メッセージ・サポートによって提供されます。 PGAUは各コマンドを順番に処理します。 1つのコマンドでエラーが発生すると、PGAUはそのコマンドをスキップします。

PGAUを実行するには、「PG DD」表がすでに作成されている必要があります。 インストール・ガイドの通信プロトコルに対応するゲートウェイ構成セクションを参照してください。

COMMIT/ROLLBACK処理

次のセクションでは、COMMIT/ROLLBACK処理について説明します。

COMMIT処理

PGAUは COMMITコマンドを発行しません。 ユーザーとして、すべての変更が実装されたときにPG DDの変更がCOMMITに行われるのはあなたの責任です。 それ以外の場合は、OracleはPGAUセッションを終了するときに、デフォルトでCOMMITコマンドを発行します。 PG DDの変更をコミットしない場合は、終了する前に ROLLBACKコマンドを実行する必要があります。

ROLLBACK処理

PGAUはPG DDを変更する各PGAUコマンドの先頭とPGAUの先頭に保存ポイントを設定します。GROUP PGAUコマンドまたはグループ障害が発生すると、PGAUは保存ポイントにロールバックします。

COMMITまたは ROLLBACKコマンドはPGAUスクリプト内で、またはPGAUでは対話的にはコード化できますが、GROUPではコード化することはできません。

COMMITまたはROLLBACKは、PGAU GENERATEまたはREPORTコマンドに対して発行されません。

障害発生時の変更をロールバックするためのPGAUコマンドのグループ化については、後のセクションのPGAU "GROUP"コマンドの説明を参照してください。

PGAUの呼び出し

PGAUを起動する前に、Oracleデータベースがすでに設定されている必要があります。 そうでない場合は、インストール・ガイドのOracle Database Gateway for APPCの構成に関するセクションを参照してください。

PGAUを実行する前に、ORACLE_HOME環境変数を、ゲートウェイ・サーバーがインストールされたディレクトリに設定する必要があります。

英語以外の言語でPGAUメッセージを受信する場合は、LANGUAGE環境変数を適切な値に設定します。

PGAUは、 pgauコマンドを入力することによって呼び出されます。 コマンドラインで次の構文を使用してコマンド文字列を指定することにより、オペレーティング・システムのプロンプトからPGAUコマンドの準備スクリプトを直接実行できます:

Microsoft Windowsの場合:

C:\> pgau @command_file 
C:\> pgau command=@command_file 
C:\> pgau command="@command_file" 
  

UNIXベース・システムの場合:

$ pgau @command_file 
$ pgau command=@command_file 
$ pgau command="@command_file" 
  

デフォルトの拡張子は.sqlです。 コマンドfilenameに英数字以外の文字が含まれている場合は、最後のフォームを使用します。

PG DDのメンテナンスおよびPL/SQLパッケージの生成を実行するには、 CONNECTコマンドを使用して、ユーザーPGAADMINとしてPGAUからOracleデータベースに接続する必要があります。 「"PGAUコマンド"」セクションでは、"CONNECT"コマンドの使用方法について説明します。

PGAUにおける定義と生成

このバージョンのPGAUは、COBOLでのリモート・トランザクション・データの定義をサポートし、対話式またはファイル形式で入力します。 ファイル入力はDEFINEREDEFINE DATAコマンドでサポートされており、標準のCOBOLデータ分割マクロまたは"コピーブック"を提供することができます。

PGAUとPG DDは、異なるバージョンのユーザー・データとリモート・トランザクション定義をサポートしています。 これにより、プロダクションの使用に影響を与えることなく、データ・フォーマットとトランザクションの変更とテストが容易になります。

任意のデータまたはトランザクション定義の複数のバージョンが存在する可能性があります。 PG DDに格納され使用されているバージョンがリモート・トランザクションと同期されていることを確認する必要があります。 ゲートウェイ、PGAU、生成されたTIPのどちらもこの同期を提供しませんが、エラー状態が検出されたときにメッセージを発行します。

データ定義は、呼び出し定義によって参照される前に存在していなければなりません。 コール定義は、トランザクション定義によって参照される前に存在していなければなりません。

注意:

PG DDに格納されて使用されているデータ・トランザクション定義バージョンがリモート・トランザクションと同期されていることを確認するのは、お客様の責任です。 ゲートウェイ、PGAUおよび生成されたTIPはこの同期を提供しませんが、エラー状態としてメッセージを発行します。

TIPの定義とテストのプロセス

特定のトランザクションのTIPを定義およびテストする一般的なプロセスは次のとおりです:

  1. COBOLデータ定義を使用して入力と出力を定義します。
  2. 上記のプロセスで作成されたデフォルトのdatanamesおよびPL/SQL変数名を再定義します(オプション)。
  3. PL/SQL FUNCTION呼び出しをPL/SQLパッケージの一部として生成するように定義します。
  4. 上記の機能をグループ化するトランザクションを定義します。
  5. 以前に格納されたTRANSACTIONCALL、およびDATA定義からTIP仕様を生成します。
  6. TIP PL/SQLストアド・プロシージャを生成します。
  7. 高レベルのアプリケーションからTIPを呼び出すことによってTIPをテストします。

TIPの詳細については、「TIPの作成」を参照してください。

定義名

定義名は、PGAUによって指定する一意の識別子です。 名前は1〜30バイトの文字列です。 句読点や空白が含まれている場合は、名前を二重引用符で囲んで指定する必要があります。

名前は重複した名前が固有のバージョン番号によって意図的に区別される場合を除いて、PG DD内で一意であるとみなされます。 名前の一意性を保証するのはあなたの責任です。

PG DD定義名に有効な文字は次のとおりです:

  • AからZ

  • aからz

  • 0から9

  • #

  • $

  • _ (アンダースコア)

デフォルト値がオーバーライドされない限り、トランザクション定義名はPL/SQLパッケージ名であり、トランザクション呼び出し名はPL/SQLプロシージャ名である可能性があることに注意してください。 したがって、PL/SQLに対して構文的に正しい名前を選択します。これらの名前は、そのシステム内の一意の名前であることを確認してください。 ユーザーとして、PL/SQLの名前互換性を確保するのはユーザーの責任です。

定義バージョン管理

「PGデータ辞書」表には、トランザクションとデータ構造の説明が含まれています。 定義の複数のバージョンが存在する可能性があります。 古いバージョンは無期限に保持されます。

すべてのPG DD操作では、定義またはパッケージはその名前で参照されます。 その名前は、特定のバージョン番号で修飾することができます。

すべてのバージョン番号:

  • Oracle Sequence Objectsによって提供されます。

  • 純粋に数字です

  • ユーザーの変更、サフィクス、プレフィクスがないこと

バージョン番号の生成に使用されるOracle Sequence Objectの特定の名前については、Microsoft Windowsの%ORACLE_HOME%\dg4appc\adminディレクトリまたはUNIXベースのシステムの$ORACLE_HOME/dg4appc/adminディレクトリの「Database Gateway for APPCデータ・ディクショナリ」および pgddcr8.sqlファイルを参照してください。

明示的なバージョン番号が指定されている場合は、新しい定義ではなく、既存の定義のバージョン番号と見なされます。 このような明示的な参照は:

  • 特定のリモート・トランザクション・バージョンからTIPを生成

  • 特定のデータ・バージョンに基づいてリモート・トランザクションを定義

明示的なバージョンが指定されていない場合:

  • 定義が参照されているときは、最新のもの(最高の番号)が仮定されます。 これは、CURRVAL番号ではなく、同じ定義名を持つすべての行について、VERSION列から選択されたMAX値です。

  • 定義が追加されると、次の(NEXTVAL番号)が仮定されます。

バージョン番号が連続していない可能性があります。 バージョン番号は常に増加していますが、定義の複数のバージョンでは数字がスキップされる可能性があります。 これは、同じタイプのすべての定義(TRANSACTIONCALL、またはDATA)でシーケンス・オブジェクトが共有され、Oracleデータベース・トランザクションROLLBACKの場合にシーケンス・オブジェクトNEXTVALがリストアされないためです。 したがって、NEXTVALは同じ定義の次のバージョンの前に別の定義に割り当てられることがあります。

有効な定義名の例:

DEFINE TRANSACTION|CALL|DATA
    payroll                             (new or latest definition)
    payroll_xaction                     (new or latest definition)
    payroll_xaction VERSION(3)...(an existing definition)

PGAUはバージョンの同期を試みません。 従属アイテムの存在は定義時に保証されますが、削除は依存関係を参照することなく行われます。 例えば、TIPを生成するには、データの事前定義を必要とするコールの事前定義を必要とするトランザクションの事前定義が必要です。 しかし、呼び出し定義が引き続き参照している間に、PGAUがアクティブなデータ定義を削除することはありません。

キーワード

すべてのPGAUキーワードは大文字または小文字で指定することができ、予約語ではありません。 すべてのキーワードが綴りを認識し、予測可能な場所に表示されるため、またすべてのデータがカッコ、アポストロフィ、引用符、または空白で区切られているため、予約は不要です。

キーワードで指定されている引用符で囲まれていない値は、キーワードの説明に別途指定されていない限り、大文字でPGデータ・ディクショナリに格納されます。

PGAUコマンド

PGAUでは、通常のSQLコマンドに加えて、DEFINEUNDEFINEREDEFINEGENERATEなどのProcedural Gateway Administrationコマンド(コマンド)を入力できます。 SETおよびSHOWコマンドも実装されています。 さらに、次のセクションにリストされているPGAUコマンドも使用できます。

CONNECT

用途

このコマンドを使用すると、PGAUに接続できます。 CONNECTコマンドを使用してOracleデータベースにログオンし、必要に応じてOracleインスタンスに加えてユーザーIDとパスワードを指定します。 CONNECTコマンドの構文は次のとおりです:

構文

Microsoft Windowsの場合:

CONNECT [username|username/password|username@connect-string|username\password@connect-string 

UNIXベース・システムの場合:

CONNECT [username|username/password|username@connect-string|username/password@connect-string 

パラメータ

Microsoft Windowsの場合username\password、UNIXベース・システムの場合username/passwordが、PGAUへの接続に使用されるユーザー名とパスワードです。

および

connect-stringは、リモート・データベースのサービス名を指定します。

リモート・データベースの指定の詳細については、Oracle Databaseネット・サービス管理者ガイドを参照してください。

CONNECT              
CONNECT SCOTT/TIGER  
CONNECT SCOTT@OTHERSYS

CONNECTの使用上の注意

  • 接続する前に、ORACLE_SIDをデータベースSIDnameに設定する必要があります。

  • リモート・データベースに接続する場合は、TNS_ADMINを、tnsnames.oraファイルが格納されているディレクトリの絶対パス名に設定する必要があります。

  • コマンドの最後にセミコロン(;)を置く必要はありません。

DEFINE CALL

用途

このコマンドは、PGデータ・ディクショナリに新しいバージョンのPL/SQL呼び出し定義を作成します。

構文

DEFINE CALL cname 
   [PKGCALL(pcname)]
   [PARMS( (dname 
           {IN | OUT | IN OUT}
           [VERSion(datavers)]), ...)];   

「表2-1」がこの構文のパラメータを記述する場所:

表2-1 DEFINE CALLパラメータの説明

パラメータ 定義

CALL cname

必須パラメータです。 作成されるコール定義の名前です。

PKGCALL (pcname)

オプションのパラメータです。 これは、アプリケーションが呼び出しを呼び出す可能性のあるPL/SQLパッケージ・プロシージャまたは関数の名前を指定します。 このオペランドを省略すると、デフォルト値cnameが仮定されます。この場合、cnameもPL/SQL構文で有効で、この呼び出しを参照するトランザクションとTIP内で一意でなければなりません。

PARMS( (dname

{IN|OUT|IN OUT} [

VERSION(datavers)]), . . .)

オプションのパラメータです。 このPL/SQL関数呼び出しに入力され、このPL/SQL関数呼び出しから出力される以前に定義されたデータのリスト、および各パラメータのタイプ(呼び出し、出力、またはその両方への入力)を指定します。 パラメータが指定されている順序によって、以降のアプリケーションからのTIP呼び出しでの表示順序が決まります。

dnameは、以前に定義されたデータ・アイテムを指定します。必須です。{IN | OUT | IN OUT} は、パラメータのPL/SQL呼び出しモードを指定し、dname データがリモート・トランザクション・プログラムとの交換で送信、受信、またはその両方を行うかどうかを示します。 1つを選択する必要があります。 VERS (datavers)は、最新ではない場合、dnameデータ定義のオプションの特定のバージョン番号です。 このオペランドを省略すると、呼び出しにパラメータがないものとみなされます。

DEFINE CALLコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU DEFINE CALL文"」を参照してください。

DEFINE CALL使用上の注意

  • CALL定義のバージョンは指定されず、デフォルトはCALLのOracle Sequence ObjectのNEXTVALになります。

  • PKGCALLPARMSはどちらの順序でも指定できます。

  • コマンドの最後にセミコロン(;)を置く必要があります。

DEFINE DATA

用途

このコマンドは、PG DDに新しいバージョンのデータ定義を作成します。

構文

DEFINE DATA dname 
   [PLSDNAME(plsdvar)]
   [USAGE({PASS|ASIS|SKIP})]
   [COMPOPTS ('options')]
   LANGUAGE(language) 
   {(definition)|INFILE("filespec")};  

パラメータ

「表2-2」DEFINE DATAパラメータを記述します:

表2-2 DEFINE DATAパラメータの説明

パラメータ 説明

DATA dname

必須パラメータです。 これは、作成されるデータ定義の名前です。

PLSDNAME (plsdvar)

オプションのパラメータです。 dnameに関連付けられた変数PL/SQLの名前です。 dnameアイテムがアトミック・データの場合はPL/SQL変数の名前になり、dnameアイテムがTIPが生成されたときに集計データ(レコードや構造体など)である場合はPL/SQLレコード変数になります。

USAGE({PASS|ASIS|

SKIP})

オプションのパラメータです。 リモート・トランザクションとの呼び出しで交換されたときに、TIPがデータ・アイテムを処理する方法を指定します。

PASSは、アイテムを翻訳してトランザクションと交換する必要があることを示します。

ASISは、アイテムがバイナリであることを示し、交換されても翻訳されるべきではありません。

SKIPは、アイテムがすべてのチェンジから削除されるべきであることを示します。

このパラメータを省略すると、デフォルト値PASSが仮定されます。

DEFINEまたはREDEFINE DATA PGAU文のUSAGE(NULL)キーワードはサポートされていません。

COMPOPTS

('options')

オプションのパラメータです。 これは、リモート・ホスト上のデータ定義をコンパイルするときに使用されるコンパイラ・オプションを指定します。 現在サポートされている唯一のオプションは'TRUNC(BIN)'です。 オプションは、アポストロフィ( ')または引用符( ")で囲む必要があります。 TRUNC(BIN)は、ハーフ・ワードおよびフル・ワード・バイナリ値の処理方法に影響を与えるCOBOLオプションです。

このオプションの詳細については、「"DEFINE DATA使用上の注意"」を参照してください。

LANGUAGE

(language)

必須パラメータです。 提供される定義内のプログラミング言語の名前を指定します。 PGAUは現在COBOLのみをサポートしています。

(定義)

INFILEパラメータと相互に排他的です。 これは、データのインライン記述です。 上記のように、記述はCOBOL構文で提供する必要があります。 このインライン記述は、開始カッコで始まり、終了カッコで終わる必要があります。 開始カッコは、行の最後の空白でない文字でなければならず、COBOLデータ定義は、列の使用法と継続に関する標準のCOBOL規則に従い、新しい行で開始する必要があります。 終了カッコと終了セミコロンは、COBOLデータ定義の最後の行に続く別の行になければなりません。 COBOLでは、仕様はCOBOLのデータ・アイテムまたは構造であり、COBOLに従って定義されています。 マージンは標準とみなされ、明示的または暗黙的な継続がサポートされています。 PL/SQLの使用で無効な文字(-など)を含むデータ名は、必要な場合に最も近いものに変換され、切り捨てられます。

INFILE ("filespec")

( definition )パラメータと相互排他的です。 (definition)で記述されているインライン定義ではなく、filespec,で記述されたユーザー・ディスク・ファイルから定義を読み込むことを示します。

filespecは二重引用符で囲む必要があります。

DEFINE DATAコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU DEFINE DATA文"」を参照してください。

DEFINE DATA使用上の注意

  • DATA定義のバージョンは指定されず、デフォルトはDATAのOracle Sequence ObjectのNEXTVALになります。

  • PLSDNAMEUSAGE、およびLANGUAGEは、任意の順序で指定できます。

  • INFILE ( "filespec"")は、ディスク・ファイルのプラットフォーム固有の指定です。

  • COMPOPTS ('TRUNC(BIN)')は、TRUNC(BIN)コンパイラ・オプションを指定してCOBOLを使用してリモート・ホスト・トランザクションをコンパイルした場合にのみ使用してください。 このオプションを使用すると、PIC 9(4) またはPIC S9(4)として定義されたバイナリ・データ・アイテムは実際には5桁の値を含むことができ、PIC 9(9)またはPIC S9(9)として定義されるバイナリ・データ・アイテムは実際には10桁の値を含むことができます。 COMPOPTS ('TRUNC(BIN)')を使用しない場合、PGAUはこれらのデータ・アイテムのNUMBER(4,0)またはNUMBER(9,0)フィールドを生成し、値の切り捨てを可能にします。

    COMPOPTS ('TRUNC(BIN)')が指定されると、PGAUはこれらのデータ・アイテムのNUMBER(5,0)またはNUMBER(10, 0)フィールドを生成し、値の切り捨てを回避します。 無効な値がリモート・ホスト・トランザクションに送信されないようにするには、クライアント・アプリケーションを作成するときに注意が必要です。

    PIC 9(4)の場合、値は0から32767の範囲内でなければなりません。PIC S9(4)の場合、値は-32767から+32767の範囲内でなければなりません。PIC 9(9)の場合、値は0から2,147,483,647の範囲内でなければなりません。-2,147,483,647から+2,147,483,647の範囲内にあります。 COBOLは常に符号のバイナリ・フィールドの上位ビットを予約します。したがって、符号なしフィールドの値の範囲は、符号付きフィールドの値域の絶対値に制限されます。 詳しくは、該当するIBM COBOLプログラミング・マニュアルを参照してください。

  • PGAUがCOBOL文をどのように変換するかについては、「データ型変換」"USAGE(PASS)"を参照してください。

  • コマンドの最後にセミコロン(;)を置く必要があります。

DEFINE TRANSACTION

用途

このコマンドは、PGデータ・ディクショナリに新しいバージョンのトランザクション定義を作成します。

構文

DEFINE TRANSACTION tname 
CALL(cname [VERS(callvers)], ...   
    [ENVIRONMENT(name)]
    {SIDEPROFILE(name) [LUNAME(name)] [TPNAME(name)]
                                      [LOGMODE(name)] |
    LUNAME(name) TPNAME(name) LOGMODE(name)}
    [SYNCLEVEL(0|1|2)]
    [NLS_LANGUAGE("nlsname")];
    [REMOTE_MBCS("nlsname")]
    [LOCAL_MBCS("nlsname")];   

パラメータ

「表2-3」DEFINE TRANSACTION パラメータを記述します:

表2-3 DEFINE TRANSACTIONパラメータの説明

パラメータ 説明

TRANSACTION tname

必須パラメータです。 これは、作成されるトランザクション定義の名前です。 GENERATE文にパッケージ名(TIP名)を指定しないと、ここで指定されたトランザクション名がデフォルトでパッケージ名になります。 その場合、tname は一意でなければならず、PL/SQLパッケージを含むデータベース内の有効なPL/SQL構文でなければなりません。

CALL(cname [VERS(callvers)], ...)

必須パラメータです。 このトランザクションをまとめた(DEFINE CALLで作成された)以前に定義された呼び出しのリストを指定します。 呼び出しがここで指定される順序は、GENERATEによって作成される順序を決定しますが、必ずしもそれらがアプリケーションによって呼び出される順序ではありません。 VERS (callvers)は、最新でない場合は、コール定義のオプションの特定のバージョン番号です。

cname の左から右への相対位置は、pga_trans_callsのseq#列です。 次に例を示します。

CALL (cname1, cname2,cname3)

pga_trans_calls(seq#) = 1

2 3

ENVIRONMENT (name)

このトランザクションのホスト環境の名前を指定します(例:IBM370)。 このパラメータを省略すると、IBM370が仮定されます。 IBM370は、このバージョンのPGAUでサポートされている唯一の環境です。

SIDEPROFILE (name)

「このパラメータは、SNAを使用するゲートウェイではオプションですが、省略した場合は、ユーザーが指定する必要があります」は、LUNAMETPNAME、およびLOGMODEのパラメータです。 APPC接続をトランザクション・マネージャに指示するSNAサイド情報プロファイルの名前を指定します。 この名前には、1から8までの長さの文字を使用できます。 名前の値は、引用符で囲まれていない場合にのみ、英数字で'@'、'#'、および'$'文字にすることができます。 引用符付きの値には、任意の文字を含めることができ、引用符( ")またはアポストロフィ( ')で区切ります。 大文字小文字はすべての値に対して保持されます。

「このパラメータは、TCP/IP接続を使用するゲートウェイでは必須です」. これにはSNAの意味がありません。

pg4tcpmapツールを実行して、この名前をホスト名、ポート番号、サブシステムID、およびIMS Connectのその他の必要な属性にマップする必要があります。

この名前は、同様のIMS Connect属性を持つIMSトランザクションのグループを表します。 サブシステムID、TIME遅延、ソケット・タイプなど、同じIMS Connect属性を共有している限り、同じ名前を再使用できます。 詳細については、「PG4TCPMAPコマンド(TCP/IPのみ)」を参照してください。

LUNAME(name)

このパラメータは、SNAを使用するゲートウェイではオプションです: サイド情報プロファイルが指定されている場合は、サイド情報プロファイル内のLUNAMEをオーバーライドします。 トランザクション・マネージャ(OLTP)のSNA論理装置名を指定します。

これは、完全修飾LU名、317文字の長さ、またはLU別名18文字(ゲートウェイ・システムのSNAソフトウェアがLU別名をサポートする場合)のいずれかです。

名前の値は、完全修飾されている場合、netname.lunameのように、'@'、'#'、および'$'文字で英数字にすることができ、単一のピリオド'。'でネットワークをLUから区切ることができます。 引用符付きの値には、任意の文字を含めることができ、引用符( ")またはアポストロフィ( ')で区切ります。 大文字小文字はすべての値に対して保持されます。

「このパラメータは、TCP/IP通信プロトコルを使用する場合は適用されません。」.

TPNAME (name)

このパラメータは、SNAを使用するゲートウェイではオプションです: サイド・プロファイルが指定されている場合、サイド・プロファイル内のTPNAMEをオーバーライドします。 呼び出されるパートナ・トランザクション・プログラム名を指定します。

  • CICSの場合、これはCICSトランザクションIDでなければならず、長さが1から4 文字です。

  • IMSの場合、これはIMSトランザクション名でなければならず、長さが1から8文字です。

  • AS/400,の場合、これは"library/program"として指定する必要があり、21バイトを超えることはできません。

名前の値は、引用符で囲まれていない場合にのみ、英数字で'@'、'#'、および'$'文字にすることができます。 引用符付きの値には、任意の文字を含めることができ、引用符( ")またはアポストロフィ( ')で区切ります。 大文字小文字はすべての値に対して保持されます。

このパラメータは、IMS ConnectのTCP/IPサポートを使用するゲートウェイに必要です。 これはIMSトランザクション名でなければなりません。

  • IMSトランザクション名は、18文字の長さでなければなりません。

LOGMODE(name)

このパラメータは、SNAを使用するゲートウェイではオプションです: サイド情報プロファイルが指定されている場合は、Side情報プロファイル内のLOGMODEをオーバーライドします。 このトランザクションとの通信に使用されるVTAMログ・モード表項目の名前を指定します。長さは1〜8文字です。

名前の値は、'@'、'#'、および'$'文字のみの英数字にすることができます。 値は引用できません。 大文字小文字は保持されず、常に大文字に変換されます。

「このパラメータは、TCP/IP通信プロトコルを使用する場合は適用されません。」.

SYNCLEVEL (0|1)

このパラメータは、SNAを使用するゲートウェイではオプションです: このトランザクションのAPPC SYNCLEVEL ( '0'または'1')を指定します。 このオペランドを省略すると、リモート・トランザクション・プログラムが同期をサポートしていないことを示す0のデフォルト値が仮定されます。 '1'の値は、CONFIRMがサポートされていることを示します。

TCP/IPを使用するゲートウェイ上で: このパラメータのデフォルトは0です。これは唯一受け入れられる値です。

NLS_LANGUAGE ("nlsname")

これはオプションのパラメータです。 デフォルト値は"american_america.we8ebcdic37c"です。 これは、language_territory.charset形式のグローバリゼーション・サポート名です。 トランザクションのすべてのシングルバイト・キャラクタ・セット・フィールドのリモート・ホスト・データがエンコードされるグローバリゼーション・サポート名を指定します。

「TCP/IPを使用している場合は、このパラメータを"american_america.us7ascii"に設定してください」.

REMOTE_MBCS ("nlsname")

これはオプションのパラメータです。 デフォルト値は"japanese_japan.jal6dbcs"です。 これは、language_territory.charset形式のグローバリゼーション・サポート名です。 トランザクションのすべてのマルチバイト文字セット・フィールドのリモート・ホスト・データがエンコードされるグローバリゼーション・サポート名を指定します。

LOCAL_MBCS

("nlsname")

これはオプションのパラメータです。 デフォルト値は"japanese_japan.jal6dbcs"です。 これは、 language_territory.charset形式のグローバリゼーション・サポート名です。 トランザクションのすべてのマルチバイト文字セット・フィールドのローカル・ホスト・データがエンコードされるグローバリゼーション・サポート名を指定します。

DEFINE TRANSACTIONコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU DEFINE TRANSACTION文"」を参照してください。

DEFINE TRANSACTION使用上の注意:

  • NLS_LANGUAGEとOracleデータベースLANGUAGEは、トランザクション全体のすべてのシングルバイト文字フィールドの変換に使用されるデフォルトの文字セットを指定します。 これらのデフォルトは、各SBCSフィールドに対して、REDEFINE DATA REMOTE_LANGUAGEまたはLOCAL_LANGUAGEパラメータによってオーバーライドすることができます。

  • TRANSACTIONの定義のバージョンは指定されておらず、デフォルトはTRANSのOracle Sequence ObjectのNEXTVALになります。

  • REMOTE_MBCSおよびLOCAL_MBCSは、トランザクション全体のすべてのDBCSまたはMBCSフィールドの変換に使用されるデフォルトのマルチバイト文字セットを指定します。 このデフォルトは、DBCSまたはMBCSフィールドごとに、REDEFINE DATA REMOTE_LANGUAGEまたはLOCAL_LANGUAGEパラメータによってオーバーライドできます。

  • コマンドの最後に";"を置く必要があります。

DESCRIBE

用途

表、ビュー、ストアド・プロシージャ、または関数を記述するには、このコマンドを使用します。 TABLEVIEWPROCEDUREのいずれも明示的に指定されていない場合、指定された名前を持つ表またはビューが記述されます。

構文

DESCRIBEコマンドの構文は次のとおりです:

DESCRIBE [TABLE table|VIEW view|PROCEDURE proc|some_name]

パラメータ

「表2-4」DESCRIBEパラメータを記述します:

表2-4 DESCRIBEパラメータの説明

パラメータ 説明

table

タブ名

view

ビュー名

proc

プロシージャ名です。

DESCRIBE PROCEDURE SCOTT.ADDEMP   
DESCRIBE SYS.DUAL
DESCRIBE TABLE SCOTT.PERSONNEL
DESCRIBE VIEW SCOTT.PVIEW

DESCRIBEの使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

DISCONNECT

用途

Oracleデータベースとの接続を切断するには、このコマンドを使用します。

構文

DISCONNECTコマンドの構文は次のとおりです:

DISCONNECT    

パラメータ

なし

なし

DISCONNECT使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

EXECUTE

用途

このコマンドを使用して、1行のPL/SQL文を実行します。

構文

EXECUTEコマンドの構文は次のとおりです:

EXECUTE pl/sql block  

パラメータ

pl/sql blockは有効なpl/sqlブロックです。 詳細については、Oracle Database PL/SQL言語リファレンスを参照してください。

EXECUTE :balance := get_balance(333)

EXECUTEの使用上の注意

  • ";"を置く必要はありません。コマンドの最後に

EXIT

用途

PGAUを終了するには、このコマンドを使用します。

構文

EXITコマンドの構文は次のとおりです:

EXIT

パラメータ

なし

なし

EXIT使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

  • quitコマンドは、PGAUの有効な文ではありません。

GENERATE

用途

PL/SQLパッケージがビルドされ、指定された出力ファイルに書き込まれます。 PGデータ・ディクショナリはこのコマンドでは更新されません。

構文

GENERATE tname 
  [VERSion(tranvers)]
  [PKGNAME(pname)]
  [PGANODE(dblink_name)]
  [OUTFILE("[specpath]{specname}[.{spectype}]")]
          [,"[bodypath]{bodyname}[.{bodytype}]]")
  [DIAGNOSE ({[TRACE({[SE] [,IT] [,QM] [,IO] [,OC] [,DD] [,TG] })]
             [PKGEX({[DC][,DR]})])};   

パラメータ

「表2-5」GENERATEパラメータを記述します:

表2-5 GENERATEパラメータの説明

パラメータ 説明

tname

必須パラメータです。 これは、DEFINE TRANSACTION文で定義されたトランザクション名です。

VERSion(transvers)

オプションのパラメータです。 どのトランザクション定義を使用するかを指定します。 VERsion パラメータは、指定されていない場合、デフォルトで最大番号のトランザクションに設定されます。

PKGNAME(pname)

オプションのパラメータです。 作成するPL/SQLパッケージの名前を指定します。 このオペランドを省略すると、パッケージ名はトランザクション名と同じであるとみなされます。

PGANODE (dblink_name)

オプションのパラメータです。 これは、ゲートウェイ・サーバーへのOracleデータベース・リンク名を指定します。 このオペランドを省略すると、"PGA"はdblink_nameとみなされます。

OUTFILE

オプションのパラメータです。 このパラメータを指定すると、specname も指定する必要があります。

specpath

TIP仕様とTIPコンテンツ・ドキュメントのオプションのディレクトリ・パスです。 デフォルトではカレント・ディレクトリになります。 値はバックスラッシュ (Microsoft Windowsの場合は\)、UNIXベース・システムの場合はスラッシュ(/)) で終わらなければなりません。

specname

TIP仕様のファイル名とTIPコンテンツのドキュメントです。 デフォルトでは、pnameが指定されている場合はそれがpgauになります。

spectype

TIP仕様のオプションのファイル拡張子であり、デフォルトはpkhです。

bodypath

TIP本文のオプションのディレクトリ・パスです。 デフォルトでは、specpath、指定されていれば、または現在のディレクトリが指定されています。 値はバックスラッシュ (Microsoft Windowsの場合は\)、UNIXベース・システムの場合はスラッシュ(/)) で終わらなければなりません。

bodyname

TIP本文のオプションのファイル名です。 デフォルトでは、specname (指定されている場合)またはpname (指定されている場合)、それ以外の場合はpgauです。 bodyname specname,にデフォルト設定されている場合、specnameの最左の期間は、specnameに複数の修飾子が含まれている場合に bodynameを抽出するために使用されます。

bodytype

TIP本文のオプションのファイル拡張子であり、デフォルトは pkbです。

TIPコンテンツの出力パスは、デフォルトではspecpathまたは現在のディレクトリになります。 ファイルIDは、デフォルトではspecname (指定されている場合)またはpname , (指定されている場合)、またはその他の場合はpgau,に設定され、常に .docの拡張子を持ちます。

より多くの例については"GENERATE使用上の注意:"を、詳細についてはTIP内部を参照してください。

DIAGNOSE

TRACEPKGEXの2つのオプションを持つオプションのパラメータです。

TRACE

PGAUの実行の内部トレースが、ユーザーの現在のディレクトリにある出力ファイル pgau.trcに書き込まれるように指定します。

TRACEサブ・オプションはコンマで区切られます。

トレース・メッセージは、Oracle Support Servicesおよび他のOracle担当者に診断ツールとして提供され、TIPを生成する際に顧客の問題を診断するのに役立ちます。 これらは、オラクル独自の裁量により、使用、インタフェース、およびドキュメントが予告なしに変更される可能性のあるOracle予約済み機能の一部です。 この情報は、お客様が問題の症状を記録するために提供されています。

  • SE - サブルーチンの入力/終了

メッセージは、入力時にサブルーチン名と引数をトレースし、終了時にサブルーチン名と条件をトレースして書き込まれます。

  • IT - Initialization/Termination

メッセージは、PGAUの初期化および終了機能をトレースして書き込まれます。

  • QM - キュー管理

メッセージは、制御ブロック割り当て、キューイング、検索、デキュー、および削除をトレースして書き込まれます。

  • IO - Input/Output

メッセージは、.dat入力ファイルと.wrkおよびパッケージ出力ファイルの入力、出力、および制御操作をトレースして書き込まれます。

  • DD - PGの定義

メッセージは、PG DDからのトランザクション、コール、データ・パラメータ、フィールド、属性、環境およびコンパイラ情報のロードをトレースして書き込まれます。

  • OC - Oracleコール

メッセージは、SQL文処理のOracle UPIコール結果とPG DDからの SELECTをトレースして書き込まれます。

  • TG - TIP生成

メッセージは、TIP Generationで完了したトレース・ステップ、通常はPL/SQLコード・セグメントが生成された各呼び出し、パラメータ、およびデータ・フィールドのレコードに書き込まれます。

PKGEX

生成されたPL/SQLパッケージ内に追加のTIP実行時間診断ロジックが組み込まれます。

PKGEXサブ・オプションはコンマで区切られます。

  • DC - データ変換

反復グループ制限の実行時検査と、そのような制限を超えた場合の例外の発生を有効にします。

UTL_PGデータ変換関数から渡される警告メッセージを有効にします:

  • NUMBER_TO_RAW

  • RAW_TO_NUMBER

  • MAKE_NUMBER_TO_RAW_FORMAT

  • MAKE_RAW_TO_NUMBER_FORMAT

追加ロジックは警告の有無をチェックし、警告があればDBMS_OUTPUTを使用して警告を表示します。

TIP生成の既定値は、TIPが運用データでテストされ、データ変換の異常が存在しないか、または既知で無視されることを前提として、このような警告を抑制することです。

データ変換の問題が原因でエラーが発生した場合、PKGEX(DC)を有効にしてTIPを再生成すると、追加情報が得られる可能性があります。

注意: 警告ロジックを実行するにはランタイム・スイッチも必要です。 PKGEX(DC)は警告ロジックのみをTIPに含めます。 「トラブルシューティング」「"TIPランタイム変換の警告の制御"」を参照してください。

追加のメッセージは、実行時にTIPによって実行されるデータ変換ステップを追跡するために、名前付きパイプに書き込まれます。

このオプションを選択すると、TIPでトレース・ロジックが生成されます。 TIPが初期化されたときに有効にする必要があります。

詳細については、「トラブルシューティング」「"TIPランタイム変換の警告の制御"」を参照してください。

  • DR - 辞書リファレンス

PL/SQL single lineコメントは、TIP関数呼び出しおよび変換を引き起こす定義のPG DD ID番号を参照するTIPに含まれています。

GENERATEコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU GENERATE文"」を参照してください。

GENERATE使用上の注意:

  • すべてのPGAUのGENERATEトレース・メッセージは、PGU-39nnnと呼ばれます。 特定のトレース・メッセージの詳細については、UNIXベースのシステムのMicrosoft Windowsまたは$ORACLE_HOME/dg4appc/mesg/pguus.msg%ORACLE_HOME%\dg4appc\mesg\pguus.msgファイルを参照してください。

  • TRACEトレース・メッセージ出力ファイルは、TRACEの仕様に関係なく、GENERATEの次の呼び出しによって上書きされます。 トレース・ヘッダー・レコードは、常にpgau.trcファイルに書き込まれます。 特定のトレース・ファイルを保存する場合は、次にGENERATEを呼び出す前に別のファイルにコピーする必要があります。

  • TRACEオプションは、任意の順序または組み合わせで指定することができ、同じGENERATE文でPKGEXオペランドで指定することもできます。

  • コマンドの最後に";"を置く必要があります。

GROUP

用途

複数のPGAUコマンドをグループ化してPG DDを更新し、いずれか1つの文が失敗した場合は、グループ内のコマンドに起因するすべての変更をロールバックすることができます。

グループ内のすべてのコマンドが成功した場合でも、COMMIT処理は実行されません。 COMMITを実行するには、PGAUスクリプト内のCOMMITコマンドをGROUPの外部にコーディングするか、またはCOMMITを対話形式でPGAUに発行します。

グループ内の文が失敗した場合、PGAUはグループを処理する前に条件に保存ポイントROLLBACKを発行します。

構文

GROUP (pgaustmt1; pgaustmt2; ... pgaustmtN);  

パラメータ

pgaustmtN:PGAU DEFINEREDEFINE、またはUNDEFINE文です

GROUP (
       DEFINE DATA EMPNO
            PLSDNAME (EMPNO)
            USAGE (PASS)
            LANGUAGE (IBMVSCOBOLII)
            (
            01 EMP-NO PIC X(6).
            ); 

       DEFINE CALL DB2IMAIN
              PKGCALL (PGADB2I_MAIN)
              PARMS ( (EMPNO      IN ),
                      (EMPREC     OUT)  );

       DEFINE TRANSACTION DB2I
          CALL (   DB2IMAIN,
                   DB2IDIAG   )
          SIDEPROFILE(CICSPROD)
          TPNAME(DB2I)
          LOGMODE(ORAPLU62)
   SYNCLEVEL(0)
   NLS_LANGUAGE("AMERICAN_AMERICA.WE8EBCDIC37C");

GENERATE DB2I
   PKGNAME(PGADB2I)
   OUTFILE("pgadb2i"););
   

GROUP使用上の注意:

  • ORACLEやSQLなどの非PGAUコマンドは、グループを区切るカッコ内に配置することはできません。

  • PGAUスクリプトには、複数のGROUPを含めることができます。 GROUPには、COMMITSELECTなどのSQLコマンドや、GENERATEREPORTなどのPGAUコマンドが混在することがあります。

  • グループ内で最初に失敗したPGAU文は、保存ポイントROLLBACKをグループの先頭の条件にします。 グループ内の後続のコマンドはすべてフラッシュされ、検査されません。 PGAUの実行は、グループに続く文で再開します。 その文がCOMMITの場合、失敗したグループの前に行われたすべてのPG DDの変更がコミットされます。

  • コマンドの最後に";"を置く必要があります。

HOST

用途

PGAUを終了せずにオペレーティング・システム・コマンドを実行するには、このコマンドを使用します。

構文

HOSTコマンドの構文は次のとおりです:

HOST host_command 

パラメータ

host_commandは、有効なオペレーティング・システム・コマンドです。

HOST  vi log.out
HOST  ls -la
HOST  pwd

HOST使用上の注意

  • HOSTコマンドを使用すると、指定されたオペレーティング・システム・コマンドを実行する新しいコマンド・シェルが開始されます。 つまり、実行されたコマンドによって引き起こされる環境の変更は、PGAUによって起動された新しいコマンド・シェルにのみ影響し、PGAU自体が実行されているコマンド・シェルには影響しません。 例えば、HOSTコマンドによって実行されるcdコマンドは、PGAU実行環境内の現在のディレクトリを変更しない。

  • ";"を置く必要はありません。コマンドの終わりに。

PRINT

用途

このコマンドを使用して、VARIABLEコマンドで定義された変数の値を出力します。

構文

PRINTコマンドの構文は次のとおりです:

PRINT varname 

パラメータ

varname は、可変コマンドによって定義される変数名です。

PRINT ename   
PRINT balance

PRINT使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

データの再定義

用途

PGデータ・ディクショナリの既存のデータ定義が変更されます。 DATA# FLD#、およびPOSのPG DD列の値は、再定義されたデータ・アイテムの場合と同じです。 これにより、既存のCALLおよびDATA定義が再定義されたデータを利用できるようになります。 REDEFINEはデータ定義の異なるバージョンを作成せず、バージョン番号は更新されません。

構文

REDEFINE DATA dname 
    [VERSion(datavers)]
    [PLSDNAME(plsdvar)]
    [FIELD(fname) [PLSFNAME(plsfvar)]] 
    [USAGE({PASS|ASIS|SKIP})]
    [COMPOPTS ('options')]
    [REMOTE_LANGUAGE("nlsname")]
    [LOCAL_LANGUAGE("nlsname")]
    LANGUAGE(language)
    <(definition) | INFILE("filespec")>;   

パラメータ

「表2-6」REDEFINE DATAパラメータを記述します:

表2-6 REDEFINE DATAパラメータの説明

パラメータ 説明

DATA dname

必須パラメータです。 変更されるデータ定義の名前です。

VERSion(datavers)

オプションのパラメータです。 これは、変更するdnameのバージョンを指定し、指定されていれば、更新されたdname情報は同じバージョン番号を保持します。新しいバージョンは作成されません。 省略された場合は、デフォルトで最高のバージョンになります。

PLSDNAME(plsdvar)

オプションのパラメータです。 上記のdnameに関連付けられた変数PL/SQLの名前です。 dnameアイテムがアトミック・データの場合はPL/SQL変数の名前になり、TIPが生成された場合はdnameアイテムが集合データ(レコードや構造体など)の場合はPL/SQLレコード変数になります。 この名前は、以前にDEFINE DATAで指定されたplsdvar名をPG DDのpga_data (plsdvar)に置き換えます。

FIELD(fname)

オプションのパラメータです。 集計データが再定義されている場合(レコード内のフィールドの変更など)、dname アイテム内のフィールドまたはグループの名前です。

PLSFNAME(plsfvar)

FIELDが指定されている場合は、オプションのパラメータです。 上記のfnameに関連付けられた変数PL/SQLの名前です。 これは、TIPが生成されたときに、PL/SQLレコード変数内のPL/SQLフィールド変数の名前になります。 この名前は、以前にREDEFINE DATAで指定されたplsfvar名をPG DDのpga_data (plsfvar)に置き換えます。

USAGE({PASS|ASIS

|SKIP})

オプションです。 省略された場合、指定された最後の使用が保持されます。 リモート・トランザクションとの呼び出しで交換されたときに、TIPがデータ・アイテムを処理する方法を指定します:

  • PASSは、アイテムを翻訳してトランザクションと交換する必要があることを示します。

  • ASISは、アイテムがバイナリであることを示し、交換されても翻訳されるべきではありません。

  • SKIPは、アイテムがすべてのチェンジから削除されるべきであることを示します。

指定すると、影響を受けるすべてのフィールドが同じUSAGE値で更新されます。 (FIELDの下で、単一または複数のフィールドの再定義に関する注意を参照してください)。

DEFINEまたはREDEFINE DATA PGAU文のUSAGE(NULL)キーワードはサポートされていません。

COMPOPTS ('options')

オプションです。 省略された場合、最後に指定されたオプションは保持されます。 ヌル文字列( '')として指定された場合、最後に指定されたオプションは削除されます。 null以外の値が指定された場合、指定された最後のオプションはすべて新しいオプションに置き換えられます。 現在サポートされている唯一のオプションは'TRUNC(BIN)'です。 オプションは、アポストロフィ( ')または引用符( ")で囲む必要があります。 TRUNC(BIN)は、ハーフ・ワードおよびフル・ワード・バイナリ値の処理方法に影響を与えるCOBOLオプションです。 このオプションの詳細については、"REDEFINE DATA使用上の注意:"を参照してください。

REMOTE_LANGUAGE ("nlsname")

オプションのパラメータです。 デフォルト値は"american_america.we8ebcdic37c"またはDEFINE TRANSACTIONNLS_LANGUAGEパラメータで上書きされます。 これはlanguage_territory.charset形式のグローバリゼーション・サポート名です。 再定義される特定の文字フィールドのリモート・ホスト・データがエンコードされるグローバリゼーション・サポート名を指定します。 フィールドは、シングルバイトまたはマルチバイトの文字データです。

LOCAL_LANGUAGE ("nlsname")

オプションのパラメータです。 デフォルト値は、TIPの実行時にローカルOracleデータベースのLANGUAGE変数から初期化されます。 これは、language_territory.charset形式のグローバリゼーション・サポート名です。 再定義される特定の文字フィールドのローカルOracleデータがエンコードされるグローバリゼーション・サポート名を指定します。 フィールドは、シングルバイトまたはマルチバイトの文字データです。

LANGUAGE ("language")

定義入力が指定されている場合は必須パラメータです。 提供される定義内のプログラミング言語の名前を指定します。 PGAUは現在COBOLのみをサポートしています。

(定義)

INFILEパラメータと相互に排他的です。 これは、データのインライン記述です。 説明はCOBOL構文で提供する必要があります。 このインライン記述は、開始カッコで始まり、終了カッコで終わる必要があります。 開始カッコは、行の最後の空白でない文字でなければならず、COBOLデータ定義は、列の使用法と継続に関する標準のCOBOL規則に従い、新しい行で開始する必要があります。 終了カッコと終了セミコロンは、COBOLデータ定義の最後の行に続く別の行になければなりません。 COBOLの場合、仕様はCOBOLのデータ・アイテムまたは構造体であり、COBOLの規則に従って定義されます。 マージンは標準とみなされ、明示的または暗黙的な継続がサポートされています。 PL/SQLの使用で無効な文字(-など)を含むデータ名は、必要な場合に最も近いものに変換され、切り捨てられます。

INFILE ("filespec")

(definition) パラメータと相互排他的です。 (definition)で記述されたインライン定義ではなく、filespec,で記述されたオペレーティング・システム・ファイルから定義を読み込むことを示します。

"filespec"は二重引用符で囲む必要があります。

REDEFINEコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU REDEFINE DATA文"」を参照してください。

REDEFINE DATA使用上の注意:

  • PLSDNAMEFIELD、またはPLSFNAMEのいずれかを指定すると、単一のデータ・アイテム名の再定義が可能になりますが、(definition)パラメータは名前付きデータ・アイテムの内容を再定義します。

  • FIELDの存在は、単一のデータ・フィールド(dnamefname、およびversion)によって一意に識別される単一のPG DD行のみが更新されることを示す。 FIELDがないと、複数のデータ・フィールド(dnameversionで識別される複数のPG DD行)が定義入力によって更新または置き換えられます。

  • REMOTE_LANGUAGEおよびLOCAL_LANGUAGEは、個々のSBCS、DBCS、またはMBCS文字データ・フィールドの変換に使用される文字セットをオーバーライドします。

  • LANGUAGE (language)(definition)| INFILE ( "filespec")はグループとして必須です。 データ定義を提供する場合は、LANGUAGEパラメータを指定し、次にインライン定義またはINFILEのいずれかを指定する必要があります。

  • (definition) | INFILE ("filespec"の存在は、複数のデータ・フィールド(dnameおよびバージョンによって識別されるPG DD行)が更新され、定義入力によって置き換えられることを示します。 交換の結果としてフィールドの数が少なくても、等しい、またはより大きい場合もあります。

  • INFILE ("filespec") は、ディスク・ファイルのプラットフォーム固有の指定です。

  • COMPOPTS ('TRUNC(BIN)')は、TRUNC(BIN)コンパイラ・オプションを指定してCOBOLを使用してリモート・ホスト・トランザクションをコンパイルした場合にのみ使用してください。 このオプションを使用すると、PIC 9(4) またはPIC S9(4)として定義されたバイナリ・データ・アイテムは実際には5桁の値を含むことができ、PIC 9(9)またはPIC S9(9)として定義されるバイナリ・データ・アイテムは実際には10桁の値を含むことができます。 COMPOPTS ('TRUNC(BIN)')を使用しない場合、PGAUはこれらのデータ・アイテムのNUMBER(4,0)またはNUMBER(9,0)フィールドを生成し、値の切り捨てを可能にします。 COMPOPTS ('TRUNC(BIN)') が指定されると、PGAUはこれらのデータ・アイテムのNUMBER(5,0) またはNUMBER(10, 0) フィールドを生成し、値の切り捨てを防ぎます。 無効な値がリモート・ホスト・トランザクションに送信されないようにするには、クライアント・アプリケーションを作成するときに注意が必要です。 PIC 9(4)の場合、値は0から32767の範囲内でなければなりません。PIC S9(4) の場合、値は-32767から+32767の範囲内でなければなりません。PIC 9(9)の場合、値は0 から2,147,483,647の範囲内でなければなりません。-2,147,483,647から+2,147,483,647の範囲内にあります。 COBOLは常に符号のバイナリ・フィールドの上位ビットを予約します。したがって、符号なしフィールドの値の範囲は、符号付きフィールドの値域の絶対値に制限されます。 詳しくは、該当するIBM COBOLプログラミング・マニュアルを参照してください。

  • PGAUがCOBOL文をどのように変換するかについては、「データ型変換」"USAGE(PASS)"を参照してください。

  • コマンドの最後に";"を置く必要があります。

REM

用途

コメントは、REMコマンドによって導入されるか、2文字のシーケンス/*で開始され、2文字のシーケンス*/で終了します。

コメント行を開始するには、REMコマンドを使用します。

構文

REMコマンドの構文は次のとおりです:

REM Comment 

パラメータ

Commentは任意の文字列です。

REM This is a Comment....

REM使用上の注意

";"を置く必要はありません。コマンドの終わりに。

REPORT

用途

このコマンドは、PGデータ・ディクショナリから選択されたデータのレポートを生成します。 選択基準によって以下が決定されることがあります:

  • 単一のTRANSACTIONCALL、またはDATAエンティティ(明示的なバージョンの有無にかかわらず)が報告されるか、

  • 指定された名前を持つすべてのTRANSACTIONCALL、またはDATAエンティティが報告されること、またはPG DD内のすべてのエンティティが報告されること、または

  • すべての無効なTRANSACTIONまたはTRANSACTIONおよびすべての参照されていないTRANSACTIONまたはDATAエンティティが報告されることを保証します。

構文

REPORT { { TRANSACTION tname | CALL cname | DATA dname } [VERSION(ver1...)]  
         | ALL { TRANSACTIONS [tname] | CALLS [cname] | DATA [dname] } }
         [WITH { CALLS | DATA | DEBUG } ... ]
         | ISOLATED;

パラメータ

「表2-7」REPORTパラメータを記述します:

表2-7 REPORTパラメータの説明

パラメータ 説明

TRANSACTION tname

最新のまたは選択されたバージョンのトランザクションtnameのPG DDコンテンツを報告します。

CALL cname

最新または選択されたバージョンのcnameのPG DDコンテンツを報告します。

DATA dname

データdnameの最新または選択されたバージョンのPG DDコンテンツを報告します。

VERSION(ver1, [ver2 ...])

指定されたエントリの選択されたバージョンを報告し、ALLと相互排他的です。

ALL TRANSACTIONS [tname]

すべてのトランザクション・エントリの既存のすべてのバージョン、またはオプションで特定のトランザクションtnameのPG DDコンテンツを報告し、TRANSACTIONと相互排他的です。

ALL CALLS [cname]

すべてのコール・エントリの既存のすべてのバージョンまたはオプションで特定のコールcnameのPG DDコンテンツを報告し、CALLと相互排他的です。

ALL DATA [dname]

すべてのデータ・エントリの既存のすべてのバージョンまたはオプションで特定のデータdnameのPG DDコンテンツを報告し、DATAと相互排他的です。

WITH CALLS

指定されたトランザクションに関連付けられたコール・エントリをレポートします。

WITH DATA

指定された呼び出しに関連するデータ項目を報告し、トランザクションに指定された場合はWITH CALLSを意味します。

WITH DEBUG

報告されるアイテムのタイプに応じて、tran#call#parm#data#、およびattr#のPG DD列値を適宜報告します。

このレポートは、PG DD診断参照で生成されたTIPに役立ちます。 詳細については、GENERATE DIAGNOSE PGEX(OR)オプションを参照してください。

ISOLATED

他のすべてのパラメータと排他的です。 すべての参照されていないCALLおよびDATAエントリは、欠落しているCALL sおよびDATAおよび欠落DATAを参照するCALL sを参照するTRANSACTIONとともに報告されます。

レポート使用上の注意:

  • レポート出力は端末に出力され、スプール、保存、印刷が可能です。

  • データ・レポートは、元のコンパイラ言語に従ってフォーマットされ、その前にPG DDへのデータを定義する PGAU DEFINE DATAコマンドがあります。

  • CALLおよびTRANSACTIONレポートは、PG DDへのエントリを効果的に定義するPGAU DEFINE CALLまたは TRANSACTIONコマンド(文とも呼ばれます)としてフォーマットされています。

  • 次のコマンドは、データ名dnameで指定された単一の最新のデータ定義を報告します。

    REPORT DATA dname;
    REPORT DATA dname VERSION(version#1,version#2);
    

    このコマンドは、データ名dnameで指定されたすべてのデータ定義を報告します:

    REPORT ALL DATA dname;
    
  • 次のコマンドは、コール名cnameで指定された最新の単一のコール定義を報告します。

    REPORT CALL cname;
    REPORT CALL cname VERSION(version#1,version#2) WITH DATA;
    

    このコマンドは、コール名cnameで指定されたすべてのコール定義を報告します:

    REPORT ALL CALLS cname WITH DATA;
    

    このコマンドは、PG DD内のすべての呼び出し定義を報告します:

    REPORT ALL CALLS WITH DATA;
    

    WITH DATAが指定されると、選択された各呼び出しに関連するすべてのデータ定義も報告されます。 データ定義は、レポート出力の対応する選択されたコールの前に置かれます。

  • 次のコマンドは、トランザクション名tnameで指定された単一の最新のトランザクション定義を報告します。

    REPORT TRANSACTION tname
    REPORT TRANSACTION tname VERSION(version#1,version#2)
    WITH DATA WITH CALLS;
    

    このコマンドは、トランザクション名tnameで指定されたすべてのトランザクション定義を報告します:

    REPORT ALL TRANSACTIONS tname WITH DATA WITH CALLS;
    

    このコマンドは、PG DD内のすべてのトランザクション定義を報告します:

    REPORT ALL TRANSACTIONS WITH DATA WITH CALLS;
    

    WITH CALLSオプションを指定すると、選択した各トランザクションに関連するすべてのコール定義もレポートされます(コール定義は、レポート出力の対応する選択されたトランザクションの前に表示されます)。

    WITH DATAが指定されると、選択された各コールに関連付けられたすべてのデータ定義もレポートされます(データ定義は、レポート出力の対応する選択されたコールに先行します)。

    トランザクション・レポートの場合、WITH DATAの指定はWITH CALLの指定を意味します。

  • 次のコマンドは、参照されていないCALLまたはDATAの定義を報告します。 また、欠落したCALLまたはDATAの定義をそれぞれ参照するTRANSACTIONまたはCALLの定義も報告します。

    REPORT ISOLATED;
    
  • 次のコマンドは、PG DD内のすべての定義を報告します。

    REPORT ALL;
    

    データ定義が報告され、その後に関連するコール定義が続き、その後に関連するトランザクション定義が続きます。

    このシーケンスは、PG DD内のすべての定義されたコールおよびトランザクションに対して繰り返されます。

  • コマンドの最後に";"を置く必要があります。

SET

パラメータ

「表2-8」SETパラメータを記述します:

表2-8 SETパラメータの説明

パラメータ 説明

ARRAYSIZE [n]

データベースから一度にフェッチされる行の数を設定します。 デフォルトは20です。

CHARWIDTH [n]

CHARデータの列表示幅を設定します。 引数なしで入力すると、デフォルトの 9に設定が戻されます。

DATEWIDTH

DATEデータの列表示幅を設定します。 引数なしで入力すると、デフォルトの9に設定が戻されます。

ECHO {ON|OFF}

コマンド・ファイルから入力されたコマンドのエコーをONまたはOFFに設定します。 デフォルトは、OFFです。

FETCHROWS [n]

問合せによって返される行の数を設定します。 これは、カテゴリ内の特定の数のアイテム、たとえば上位10アイテムを検索するための順序付き問合せで役立ちます。 また、特定の基準を満たす最初のn レコードを見つけるための順序付けされていない問合せでも役に立ちます。

LONGWIDTH [n]

LONGデータの列表示幅を設定します。 引数なしで入力すると、デフォルトの80に設定が戻されます。

MAXDATA [n]

最大データ・サイズを設定します。 これは、SELECTコマンド中に1回のフェッチで受信できる最大データを示します。 デフォルトは20480 bytes (20K)です。

NUMWIDTH [n]

NUMBERデータの列表示幅を設定します。 引数なしで入力すると、デフォルトの10に設定が戻されます。

SERVEROUTPUT {OFF|ON [SIZE n|n]}

DBMS_OUTPUT PUTおよびPUT_LINEコマンドを使用するストアド・プロシージャからONまたはOFFにデバッグ出力を設定します。 SIZE nを使用して、メッセージバッファのサイズをバイト単位で指定できます。 指定されたサイズは、一度に蓄積できるすべてのメッセージの合計バイト数です。 最小値は2000バイトです。 get-messageルーチンを呼び出す前にバッファがいっぱいになり、追加のメッセージ・バイトのための余裕がある場合は、メッセージを送信するプログラムにエラーが返されます。 パラメータのないSERVEROUTPUTは、SERVEROUTPUT ONと同じです。

STOPONERROR {ON|OFF}

エラーが発生した場合にコマンド・ファイルの実行を停止するかどうかを示します。 OFFを指定すると、STOPONERRORが無効になります。

TERMOUT {ON|OFF}

SQLコマンドの端末出力を有効または無効にします。 ファイルへの出力をスプールする際に端末に出力されないようにするのに便利です。 デフォルトはOFFで、これは端末の出力を無効にします。

TIMING {ON|OFF}

実行された各SQL文の解析、実行、フェッチ時間(CPUと経過時間の両方)の表示を有効または無効にします。 デフォルトはOFFで、TIMINGの表示を無効にします。

PGAU> set arraysize 30

PGAU> set CHARWIDTH

SET使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

SHOW

パラメータ

「表2-9」SHOWパラメータを記述します:

表2-9 SHOWパラメータの説明

パラメータ 説明

ALL

すべての有効なSETパラメータを表示

ARRAYSIZE

データベースから一度にフェッチされた行の数を示します。

CHARWIDTH

CHARデータの列表示幅を示します。

DATEWIDTH

DATEデータの列表示幅を示します。

ECHO

コマンド・ファイルからONまたはOFFに入力されたコマンドのエコーを表示します。

FETCHROWS

問合せによって返された行の数を示します。

LONGWIDTH

LONGデータの列表示幅を示します。

MAXDATA

最大データ・サイズを表示します。

NUMWIDTH

NUMBERデータの列表示幅を示します。

SERVEROUTPUT

DBMS_OUTPUT PUTおよびPUT_LINEコマンドを使用するストアド・プロシージャからのデバッグ出力を表示します。

STOPONERROR

エラーが発生した場合にコマンド・ファイルの実行を停止するかどうかを示します。

TERMOUT

SQLコマンドのターミナル出力が有効か無効かを示します。

TIMING

実行された各SQL文の解析、実行、フェッチ時間の表示(CPUと経過の両方)が有効か無効かを示します。

VAR

PRINTコマンドと同じです。さらに、すべての変数とそのデータ型を表示します。

SETコマンドを発行すると、成功した場合は出力されません。 文が正常に実行されたかどうかを確認するには、次のようなSHOWコマンドを発行します:

PGAU> show arraysize
Arraysize                       30

PGAU> show CHARWIDTH
Charwidth                       80

PGAU> show all
Instance                        local
Spool                           OFF
Timing                          OFF
Termout                         ON
Echo                            OFF
Stoponerror                     OFF
Maxdata                         20480
Arraysize                       20
Fetchrows                       100

Numwidth                        10
Charwidth                       80
Longwidth                       80
Datewidth                       9
ServerOutput                    OFF

SHOW使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

SPOOL

用途

このコマンドを使用して、PGAU出力をキャプチャするファイル名を指定します。 TERMOUTがオフの場合を除いて、すべての出力が端末に送信されます。

構文

SPOOLコマンドの構文は次のとおりです:

SPOOL [filename|OFF]   

パラメータ

ピリオドなしの単純なファイル名が指定されている場合、ファイル名に.logが追加されます。

filenameは、実行されたコマンドの出力が格納される場所です。

SPOOL log.outfile  
SPOOL out
SPOOL OFF

SPOOL使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。

UNDEFINE CALL

用途

PG DDからCALL定義のオカレンスを削除するには、このコマンドを使用します。

構文

UNDEFINE CALL cname        [VERSion(callvers|ALL)];

パラメータ

「表2-10」UNDEFINE CALLパラメータを記述します:

表2-10 UNDEFINE CALLパラメータの説明

パラメータ 説明

CALL cname|

必須パラメータです。 ドロップされるアイテムに関連付けられた名前を指定します。バージョンが指定されていない場合は、最新(最高番号)のバージョンのみが削除されます。

VERSion({datavers|

callvers|

transvers|ALL})

オプション・パラメータ。 削除する定義の特異バージョンを指定します。指定された定義に対してALL (すべての定義が削除されている場合)を指定します。 VERSIONが省略されている場合、名前付き定義の最も番号の付いたバージョンのデフォルトが仮定されます。

UNDEFINE CALLコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU UNDEFINE文"」を参照してください。

UNDEFINE CALL使用上の注意:

  • 定義を削除すると、PL/SQLパッケージが後で生成されるのを防ぐことができます。 .pkh.pkbの指定ファイルが存在し、以前のTIPSがOracleデータベースのデータベースに残っている場合、それらのTIPSを呼び出すことができれば、TIPを再作成できます。 このようなTIPが正常に実行されるかどうかは、対応するリモート・トランザクション・プログラムがまだアクティブであるかどうかによって異なります。

  • CALLの定義を削除するには、そのTRANSACTIONを参照するすべてのTRANSACTIONが削除されている必要があります。 整合性チェックは行われません。

  • コマンドの最後に";"を置く必要があります。

UNDEFINE DATA

用途

このコマンドを使用して、PGデータ・ディクショナリ内のDATA定義のオカレンスを削除します。

構文

UNDEFINE DATA dname        [VERSion(datavers|ALL)];

パラメータ

「表2-11」UNDEFINE DATAパラメータを記述します:

表2-11 UNDEFINE DATAパラメータの説明

パラメータ 説明

DATA dname|

必須パラメータです。 ドロップするアイテムに関連付けられた名前を指定します。 バージョンが指定されていない場合、最新の(最も番号の付いた)バージョンのみが削除されます。

VERSion({datavers|

callvers|

transvers|ALL})

オプション・パラメータ。 削除する定義の特異バージョンを指定します。指定された定義に対してALL (すべての定義が削除されている場合)を指定します。 VERSIONが省略されている場合、名前付き定義の最も番号の付いたバージョンのデフォルトが仮定されます。

UNDEFINE DATAコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU UNDEFINE文"」を参照してください。

UNDEFINE DATA使用上の注意

  • 定義を削除すると、PL/SQLパッケージ(TIP)が後で生成されるのを防ぐことができます。 .pkh.pkbの指定ファイルが存在していれば、以前に生成されたTIPを再作成することができます。 これまで作成されたTIPは、Oracleデータベースのデータベースに残っていれば呼び出すことができます。 このようなTIPが正常に実行されるかどうかは、対応するリモート・トランザクション・プログラムがまだアクティブであるかどうかによって異なります。

  • すべての CALLとそれを参照するすべてのTRANSACTIONが削除された後でのみ、DATA定義を削除してください。 整合性チェックは行われません。

  • コマンドの最後に";"を置く必要があります。

UNDEFINE TRANSACTION

用途

このコマンドは、PGデータ・ディクショナリ内のTRANSACTION定義のオカレンスを削除します。

構文

UNDEFINE TRANSACTION tname [VERSion(tranvers|ALL)]; 

パラメータ

「表2-12」UNDEFINE TRANSACTIONパラメータを記述します:

表2-12 UNDEFINE TRANSACTIONパラメータの説明

パラメータ 説明

TRANSACTION tname}

必須パラメータです。 ドロップするアイテムに関連付けられた名前を指定します。 バージョンが指定されていない場合、最新の(最も番号の付いた)バージョンのみが削除されます。

VERSion({datavers|

callvers|

transvers|ALL})

オプションのパラメータ。 削除する定義の特異バージョンを指定します。指定された定義に対してALL (すべての定義が削除されている場合)を指定します。 VERSIONが省略されている場合、名前付き定義の最も番号の付いたバージョンのデフォルトが仮定されます。

UNDEFINE TRANSACTIONコマンドの例については、「管理ユーティリティのサンプル」「"サンプルPGAU UNDEFINE文"」を参照してください。

UNDEFINE TRANSACTION使用上の注意

  • 定義を削除すると、PL/SQLパッケージが後で生成されるのを防ぐことができます。 .pkh.pkbの指定ファイルが存在していれば、TIPを再作成することができます。 以前に作成されたTIPは、Oracleデータベースのデータベースに残っている場合に呼び出すことができます。 このようなTIPが正常に実行されるかどうかは、対応するリモート・トランザクション・プログラムがまだアクティブであるかどうかによって異なります。

  • TRANSACTION定義はいつでも削除できます。

  • コマンドの最後に";"を置く必要があります。

VARIABLE

用途

このコマンドを使用して、EXECUTEまたはPRINTコマンドを使用して現行セッションで使用するバインド変数を宣言するか、PL/SQLブロックとともに使用します。

構文

VARIABLEコマンドの構文は次のとおりです:

VARIABLE name type 

パラメータ

「表2-13」VARIABLEパラメータを記述します。

表2-13 VARIABLEパラメータの説明

パラメータ 説明

name

変数名です。

type

可変データ型です

VARIABLE balance NUMBER
VARIABLE emp_name VARCHAR2

VARIABLE使用上の注意

  • ";"を置く必要はありません。コマンドの終わりに。