目次 前 次 PDF


データ変換の設定

データ変換の設定
プラットフォーム、オペレーティング・システムおよびプログラミング言語が異なるため、ATMIドメイン内のアプリケーションで使用されるデータ形式は、リモート・ドメイン内のアプリケーションで想定されるものとは大幅に異なります。ATMIドメインでは、通常、アプリケーションはC言語で記述し、C構造体およびATMI型付きバッファ(VIEWやFMLなど)を使用します。リモート・ドメインでは、CおよびCOBOLプログラミング言語がC構造体やCOBOLコピーブック定義とともによく使用されます。インバウンド・メッセージとアウトバウンド・メッセージの両方において、これらのデータ型間の変換は、Oracle Tuxedo Mainframe Adapter for SNA Gatewayで発生します。Gatewayには、ドメイン・タイプ間のデータ変換に対処するための構成オプションが数多く用意されています。
この項では、データ変換に関する次のトピックについて説明します。
注意:
データ変換
Oracle Tuxedo Mainframe Adapter for SNA Gatewayは他のドメイン・ゲートウェイと同様にATMI型付きバッファを使用してデータを送受信します。リモート・ホストのアプリケーションは型付きバッファを認識しないため、ATMIアプリケーションはレコードと呼ばれる集計データ型を使用してホスト・アプリケーションと通信する必要があります。レコードは、フラットなデータ領域であり、レコード内の各フィールドのデータ型および長さを記述したテンプレートによって定義されます。
アプリケーション開発者はゲートウェイを構成する前に、リモート・ホストで使用されるレコード構造の形式および内容とともに、使用するATMI型付きバッファを決定しておく必要があります。
ほとんどの場合、ATMI型付きバッファとレコード形式の間の変換は、Oracle Tuxedo Mainframe Adapter for SNA Gatewayによって処理されます。DMCONFIGファイルのDM_LOCAL_SERVICESおよびDM_REMOTE_SERVICESセクションのサービス定義で、アプリケーション間の通信を成功させるために必要な型付きバッファとレコードの組合せを記述するパラメータを指定します。
注意:
ATMI型付きバッファのレコードへの変換
ATMIアプリケーションが型付きバッファをリモート・ホスト・アプリケーションに送信する場合、バッファをリモート・ホスト・アプリケーションに渡す前にOracle Tuxedo Mainframe Adapter for SNA Gatewayがそのバッファをレコードに変換する必要があります。Gatewayは、サービス定義を使用して、バッファに適用する必要がある変換(ある場合)を判別します。サービス定義では、DMCONFIGファイルのDM_LOCAL_SERVICESセクションとDM_REMOTE_SERVICESセクションの両方でINBUFTYPEを使用して、目的の変換について説明します。
INBUFTYPEは次のように指定します。
INBUFTYPE = type:subtype
このパラメータ定義において、typeは、次の項に説明されている指定のATMI型付きバッファのいずれかである必要があります。
subtypeの値はビューを指定するもので、特定のATMI型付きバッファでは必須です。
INBUFTYPEパラメータには1つのtype:subtypeのみ入力可能です。
次の項では、各ATMI型付きバッファに対して実行される変換について説明します。
STRING型付きバッファのデータ変換
デフォルトでは、nullで終了する文字列はEBCDICに変換されます。null文字も変換後のレコードに含まれます。ViewおよびFMLデータ型の文字列の使用の詳細は、「文字列の変換ルール」の項を参照してください。
XML型付きバッファのデータ変換
XML型付きバッファは、バッファ長の分だけEBCDICに変換されます。
X_OCTET/CARRAY型付きバッファのデータ変換
これらの型付きバッファでは、データ変換は実行されません。ATMIアプリケーションまたはリモート・ホスト・アプリケーションは、すべての数値およびEBCDICの変換を含む、レコード内のデータ・フィールドのあらゆる変換を実行します。
これらの型付きバッファが使用されるのは、他のstrong型付きバッファのいずれを使用してもデータ・レコードを記述または変換できない場合です。strongは、Oracle Tuxedo Mainframe Adapter for SNA Gatewayがあらゆるデータ・フィールドを認識して必要なデータ変換を実行できることを意味しています。
これらの型付きバッファが使用される他の場合として、リモート・サービスで様々なスタイルのデータ集計(複数のレコード・タイプ)が必要とされる場合があります(INBUFTYPEパラメータが1つのtype:subtypeに制限されているため)。
VIEW/VIEW32/X_C_TYPE/X_COMMON型付きバッファのデータ変換
これらの型付きバッファではサブタイプが必要です。サブタイプは、リモート・ホスト・レコードについて説明するビューの名前です。ATMIバッファは、コンパイル済VIEWファイルを使用して、C構造体からレコードに変換されます(EBCDIC変換など)。デフォルトでは、レコードはリモート・ホスト・アプリケーションがCOBOLコピーブックを使用してマップしたCOBOL構造体です。変換オプションの詳細は、「VIEWデータ型の変換ルール」を参照してください。
FML/FML32型付きバッファのデータ変換
これらの型付きバッファではサブタイプが必要です。サブタイプは、リモート・ホスト・レコードについて説明するビューの名前です。型付きバッファ内のデータは、フィールド操作言語(FML)データです。バッファは、Oracle Tuxedo Mainframe Adapter for SNA Gatewayにより、ビューで記述されたレコードにEBCDICとして変換されます。
ATMIバッファは、サブタイプのコンパイル済VIEWファイルを使用して、FML型付きバッファからC構造体に変換されます。そのC構造体は、同じサブタイプのコンパイル済VIEWファイルを使用してレコードに変換されます。デフォルトでは、レコードはリモート・ホスト・アプリケーションがCOBOLコピーブックを使用してマップしたCOBOL構造体です。
RECORD型付きバッファのデータ変換
この型付きバッファではサブタイプが必要です。サブタイプは、リモート・ホスト・レコードについて説明するRECORDの名前です。ATMIバッファは、コンパイル済RECORDファイルを使用して、RECORD型付きバッファからレコードに変換されます(EBCDIC変換など)。デフォルトでは、レコードはリモート・ホスト・アプリケーションがCOBOLコピーブックを使用してマップしたCOBOL構造体です。
レコードのATMI型付きバッファへの変換
リモート・アプリケーションがレコードをATMIアプリケーションに送信する場合、レコードをATMIアプリケーションに渡す前にOracle Tuxedo Mainframe Adapter for SNA GatewayがそのレコードをATMI型付きバッファに変換する必要があります。Gatewayは、サービス定義を使用して、ホスト・レコードに適用する必要がある変換(ある場合)を判別します。サービス定義では、DMCONFIGファイルのDM_LOCAL_SERVICESセクションとDM_REMOTE_SERVICESセクションの両方でOUTBUFTYPEを使用して、目的の変換について説明します。
OUTBUFTYPEは次のように指定します。
OUTBUFTYPE=type:subtype
このパラメータ定義において、typeは、次の項に説明されている指定のATMI型付きバッファのいずれかである必要があります。typeは型付きバッファの設定だけでなくホスト・レコードの記述にもなります。
subtypeの値はビューを指定するもので、特定のATMI型付きバッファでは必須です。
OUTBUFTYPEパラメータには1つのtype:subtypeのみ入力可能です。
次の項では、各ATMI型付きバッファに対して実行される変換について説明します。
STRING型付きバッファのデータ変換
null終了文字列は、ASCIIに変換されます。変換後の文字列は、ATMI STRING型付きバッファに移動します。ViewおよびFMLデータ型の文字列の使用の詳細は、「文字列の変換ルール」の項を参照してください。
XML型付きバッファのデータ変換
XML型付きバッファは、バッファ長の分だけASCIIに変換されます。DPLサービスについては、�$paratext>�を参照してください。
X_OCTET/CARRAY型付きバッファのデータ変換
これらの型付きバッファでは、データ変換は実行されません。リモート・ホスト・アプリケーションまたはATMIアプリケーションは、すべての数値やASCIIの変換など、レコード内のデータ・フィールドを変換します。
これらの型付きバッファが使用されるのは、他のstrong型バッファのいずれを使用してもデータ・レコードを記述または変換できない場合です。strongは、Oracle Tuxedo Mainframe Adapter for SNAがあらゆるデータ・フィールドを認識して必要なデータ変換を実行できることを意味しています。
これらの型付きバッファが使用される他の場合として、リモート・サービスで様々なスタイルのデータ集計(複数のレコード・タイプ)が必要とされる場合があります(OUTBUFTYPEパラメータが1つのtype:subtypeに制限されているため)。
VIEW/VIEW32/X_C_TYPE/X_COMMON型付きバッファのデータ変換
これらの型付きバッファではサブタイプが必要です。サブタイプは、リモート・ホスト・レコードについて説明するビューの名前です。リモート・ホスト・レコードは、ATMI型付きバッファに変換されます。コンパイル済VIEWファイルは、ホスト・レコードでデータとASCIIの変換を実行するために使用します。デフォルトでは、ホスト・レコードはCOBOLデータ集合体で、変換された型付きバッファはC構造体を使用してATMIアプリケーションによってマップされます。変換オプションの詳細は、「VIEWデータ型の変換ルール」の項を参照してください。
FML/FML32型付きバッファのデータ変換
これらの型付きバッファではサブタイプが必要です。サブタイプは、リモート・ホスト・レコードについて説明するビューの名前です。ホスト・レコードは、FMLバッファに変換されてATMIアプリケーションに渡されます。
デフォルトでは、ホスト・レコードはCOBOLレコード集計データ型です。データは、コンパイル済VIEWファイルを使用して、ASCIIの変換を含め、C構造体に変換されます。次に、このデータはVIEWに関連付けられたフィールド定義を使用してFMLバッファに変換されます。
RECORD型付きバッファのデータ変換
この型付きバッファではサブタイプが必要です。サブタイプは、リモート・ホスト・レコードについて説明するRECORDの名前です。リモート・ホスト・レコードは、ATMI型付きバッファに変換されます。コンパイル済RECORDファイルは、ホスト・レコードでデータとASCIIの変換を実行するために使用します。デフォルトでは、ホスト・レコードはCOBOLデータ集合体で、変換された型付きバッファはRECORD型を使用してATMIアプリケーションによってマップされます。
DPLサービスのデータ変換
Oracle Tuxedo Mainframe Adapter for SNAシステムは、リモートCICSサービスを分散プログラム・リンク(DPL)プログラムとしてサポートします。DPLのサポートは、ATMIサービスをピアのCICS/ESAサービスであるものとみなして実行されます。
DPLプログラムでは、アプリケーションをすべての分散トランザクション処理(DTP)から保護します。DPLのアプリケーションはリクエスト/レスポンス・サービスであり、すべてのデータ通信がCOMMAREAの受渡しによって実行されます。
基本的なDPLリクエストのAPIは次のようになります。
EXEC CICS LINK
PROGRAM()
DATALENGTH()
LENGTH()
COMMAREA()
前の例で、リクエスト元がDATALENGTHサイズのCOMMAREAを送信し、受信側アプリケーションがLENGTHのサイズのCOMMAREAデータ・コンテンツをバッファに受信します。DATALENGTHのサイズはLENGTHサイズより小さくてもかまいませんが、リクエスト元は元のCOMMAREAバッファへの受信対象としてLENGTHサイズのレスポンスを想定しています。
DPLプログラムとATMIサービスの違いは、受信側のATMIサービスが応答バッファをサイズ変更できるのに対してDPLプログラムでは指定したサイズの応答バッファが必要な点です。また、ATMIリクエスト元は、サイズ変更されたバッファを元の応答バッファとは異なるバッファに受信できます。
Oracle Tuxedo Mainframe Adapter for SNAソフトウェアは、次の項に記載されている操作を実行して、両タイプのアプリケーションの要件にあうようスムーズに調整できます。
ATMIアプリケーションから送信されるDPLリクエスト
Oracle Tuxedo Mainframe Adapter for SNAソフトウェアでは、ATMIリクエスト側に対応するLENGTHパラメータがないためにどのようなサイズのCOMMAREAをリモートのDPLサービスで想定するかを決定する必要があります。
DPLリクエストのLENGTH値を決定する際、INBUFTYPEまたはOUTBUFTYPEパラメータの定義のうち、大きい方のサイズが使用されます(表5-1を参照)。
リモートのDPLアプリケーションでは、LENGTHサイズのバッファを受け取り、LENGTHサイズのバッファを戻します。
 
これらの型付きバッファでは、INBUFTYPEパラメータ定義を使用してLENGTHを決定し、必要であればnull文字を追加します。
LENGTHVIEWファイルの最大サイズです。この計算では、C構造体とターゲット・レコードのうち、大きい方のサイズが採用されます。
VIEWファイルの最大サイズ。この計算では、C構造体とターゲット・レコードのうち、大きい方のサイズが採用されます。FMLバッファの長さは考慮されません。
この型付きバッファでは、INBUFTYPEパラメータ定義を使用してLENGTHを決定します。
LENGTHを決定できない場合、CICSアプリケーションで許可される最も大きな値が割り当てられます。
CICS DPLから送信されるDPLリクエスト
Oracle Tuxedo Mainframe Adapter for SNAソフトウェアはリクエスト元のCICS DPLからLENGTH値とDATALENGTHサイズのCOMMAREAデータを受け取ります。このソフトウェアはLENGTHサイズのバッファを割り当て、COMMAREAデータをこのバッファに移動してから、変換を実行します。
VIEWデータ型の変換ルール
デフォルトのデータ変換ルールに関する次の項では、次の作業を支援するヒントを提供します。
表5-2は、VIEWデータ変換ルールを示します。
 
注意:
ATMIプラットフォームには、VIEW内の10進値をサポートするdec_tというフィールド・タイプが用意されています。ゲートウェイはこれらのフィールドをマシン非依存のパック10進数表現に変換します。たとえば、dec_t(m,n)とすると、S9(2*m-(n+1))V9(n) COMP-3という結果になります。したがって、サイズ8,5の10進フィールドはS9(10)V9(5) COMP-3になります。
表5-3は、CとIBM/370のデータ型の間の変換ルールを示します。
 
文字列の考慮事項
CICS/ESAアプリケーションによって使用される入力および出力レコードのVIEW定義を作成する場合、文字列フィールドで使用される追加の終了null文字の位置を指定しないでください。たとえば、CICS/ESAアプリケーション・プログラムが入力レコードで10文字を想定している場合、そのフィールドに対して10+1ではなく10を指定します。
注意:
Oracle Tuxedo Mainframe Adapter for SNAが実行するキャラクタ・セット変換は、X/Open XPGポータビリティ・ガイドに従えば完全にローカライズ可能です。ASCIIおよびEBCDICの変換は、メッセージ・ファイルからロードされます。詳細は、「文字列の変換ルール」の項を参照してください。
Oracle Tuxedo Mainframe Adapter for SNAソフトウェアには、英語言語のほとんどのアプリケーションの要件を満たす、デフォルトの動作があります。ただし、変換をカスタマイズすることが必要になる場合もあります。詳細は、「文字列の変換ルール」の項を参照してください。
数値データの変換
中間のデータ型と変換先のデータ型に、必要な最大値を処理するための十分な範囲を指定すれば、数値データを様々なデータ型に簡単に変換できます。
たとえば、適切なdec_t型VIEW要素を指定することで、リモート・ターゲット・システムで倍精度のフィールド操作言語(FML)フィールドをパック10進数フィールドに変換できます。
また、数値を文字列に変換することもできます。たとえば、FMLバッファでdec_t型が直接サポートされない場合、10進値を文字列フィールドに入れてVIEW定義内のdec_tフィールドにマップすることができます。
RECORDデータ型の変換ルール
RECORDバッファ内のデータは、常に元の形式(COBOL内部表現)のままです。詳細は、『FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』データ型および変換に関する項を参照してください。
文字列の変換ルール
ATMIプラットフォームとホスト・アプリケーションの間の対話を計画するときには、アプリケーションの記述に使用されるプログラミング言語を考慮する必要があります。COBOL言語では、文字列の表現がC言語および関連するATMIプラットフォームVIEWバッファとは異なります。リスト5-1に、同じ2つの文字列(string1およびstring2)をコーディングする3つの方法を示します。
リスト5-1 文字列の3つの表現
C構造体:
struct text
{
char rbufsize[5];
char testnum[2];
char sendnum;
char sysid[4];
char textfld[10];
char string1[10];
char string2[16];
};
VIEWテキスト
#type cname fbname count flag size null
char rbufsize - 5 - - -
char testnum - 2 - - -
char sendnum - 1 - - -
char sysid - 4 - - -
char textfld - 10 - - -
string string1 - 1 - 10 -
string string2 - 1 - 16 -
END
COBOLレコード
01 TEXT.
05 RBUFSIZE PIC X(5).
05 TEXTNUM PIC X(2).
05 SENDNUM PIC X.
05 SYSID PIC X(4).
05 STRING1 PIC X(9).
05 STRING2 PIC X(15).
 
リストにおいて、C構造体とVIEWバッファではstring1string2のサイズがそれぞれ10および16文字として表現されています。これに対して、COBOLレコードでは、これらのサイズはそれぞれ9および15文字です。ソース・コードでこの非互換性に対応しておかないと、CとCOBOLプログラム間でコードのミスアラインメントが発生する可能性があります。
この非互換性を回避するため、ゲートウェイではCとCOBOLアプリケーションの文字列データ間のマッピングを制御するソフトウェア・オプションを用意しています。このオプションを使用すると、2つの言語のnull終了とパディング特性の違いを自動的に補正できます。
注意:
文字列変換を実行するオプションの設定
文字列変換オプションを設定するには、UBBCONFIGファイルのゲートウェイ・サーバー(GWSNAX)定義を構成する際にCLOPTパラメータを使用します。CLOPTパラメータの-tオプションを表5-4にリストされたいずれかの値に設定すると、ゲートウェイにより該当する文字列変換が実行されます。次の構文形式を使用します。
CLOPT=”-- -t {number}”
このパラメータでは、引数およびオプションは次のように定義されています。
CLOPT
このパラメータでは、ATMIパラメータを指定して、サーバー定義でコマンド行オプションを指定できるようにします。
-- システムが認識する引数の最後と、サーバー内のサブルーチンに渡す引数の最初をマークします。-tオプションなどアプリケーション固有の引数をサーバーに指定する場合には、このオプションは必須です。
-tは、CからCOBOLへの文字列変換を確立するOracle Tuxedo Mainframe Adapter for SNAオプションです。
{number}には、表5-4に示すように、Gatewayが実行する文字列変換のタイプを指定します。
注意:
サーバー定義にCLOPTパラメータの-tオプションを設定しない場合は、デフォルトでゲートウェイは文字列変換を実行しません。
 
これらのオプションは次のように機能します。
オプション値1:
ホストへのアウトバウンド・メッセージの場合、C文字列フィールドがCOBOL文字列フィールドに変換されます。null文字で開始されて定義済の文字列長まで存在するすべての文字は空白に変換され、フィールド長は1のみ減ります。
ホストからのインバウンド・メッセージの場合、COBOLの文字列フィールドはCの文字列フィールドに変換され、後続の空白はnull文字(0 (ゼロ)値)に変換されてフィールド長が1のみ増えます。
オプション値2:
ホストへのアウトバウンド・メッセージの場合、COBOLの文字列フィールドはCの文字列フィールドに変換され、後続の空白はnull文字(0(ゼロ)値)に変換されてフィールド長が1のみ増えます。
ホストからのインバウンド・メッセージの場合、C文字列フィールドがCOBOL文字列フィールドに変換されます。null文字で開始されて定義済の文字列長まで存在するすべての文字は空白に変換され、フィールド長は1のみ減ります。
オプション値3および4:
互換性のある言語で作成されたプログラム間の文字列変換は行われません。
例:
次のサーバー定義の例では、このスイッチを使用して、Cで作成されたATMIアプリケーションとCOBOLで作成されたホスト・アプリケーション間での文字列変換を設定しています。
*SERVERS
GWSNAX SRVGRP=GROUP1 SRVID=5 CLOPT=”-A -- -t 1”
コード・ページ変換表
Oracle Tuxedo Mainframe Adapter for SNAソフトウェアには、ASCIIキャラクタ・セットとEBCDICキャラクタ・セット間の変換を可能にする変換表が含まれています。コードページには、Latin-1 ASCIIコード・セット(CP-00819)を使用するATMIアプリケーションと各国語コード・セットを使用するホスト・アプリケーション間の操作を可能にする12の標準化された表が記載されています。
各変換表は、2つのマッピング表で構成されています。1つはアウトバウンド変換(ATMIプラットフォームからホストへ)用で、もう1つはインバウンド変換(ホストからATMIプラットフォームへ)用です。変換の方向を指定する必要はありません。ホスト・アプリケーションの記述に使用される各国語を決定することのみが必要です。図5-1に、コードページ変換を示します。
図5-1 Oracle Tuxedo Mainframe Adapter for SNAのコードページ変換
この図は、Latin-1 ASCIIのコードページCP-00819のキャラクタ・セットを使用するATMIアプリケーションがドイツ語EBCDICのコードページCP-00273を使用するホスト・アプリケーションとともにどのように動作するかを示しています。Oracle Tuxedo Mainframe Adapter for SNA変換表00819x00273は、インバウンド変換とアウトバウンド変換の両方を提供します。
変換表の指定
アプリケーションの変換表を指定するには、各リモート・ドメインのATMIプラットフォームのDMCONFIGファイル定義にエントリを作成します。CODEPAGEパラメータを次の形式で使用します。
次に例を示します。
*DM_REMOTE_DOMAINS
BEAS TYPE=SNAX CODEPAGE=“cpname”
このパラメータにおいて、cpnameには表5-5からリモート・ドメインの変換表を指定します。二重引用符で囲む必要があります。
表5-5に、Oracle Tuxedo Mainframe Adapter for SNAソフトウェアに付属している変換表を示します。
 
ATMIプラットフォームのデフォルト値1
CP-00819 2

1
デフォルトのATMIのASCIIおよびEBCDICコードページはCP-00819やCP-00037とは少し異なります。

2
CP-00819は、ISO-8859-1 (Latin-1 ASCIIとも呼ばれる)と完全に等価で、この表に示されたすべての国でASCIIコードページとして使用されています。

変換表の処理の仕組み
Oracle Tuxedo Mainframe Adapter for SNAの変換表は、IBMによって定義されたコード・セットをベースにしています。起動時に、Gatewayはリモート・ドメインごとに変換表をロードします。
ハードコードされているデフォルトのATMI表を除くすべての表は、アプリケーションの変換ニーズに合うように修正できます。表の内容の詳細は、付録D「コード・ページ変換表」を参照してください。変換表の定義を変更するには、ゲートウェイを再起動する必要があります。
注意:
Oracle Tuxedo Mainframe Adapter for SNAの変換表は次のサブディレクトリにあります。
$TUXDIR/udataobj/codepage
リモート・ドメインのCODEPAGE指定が行われていない場合は、Oracle Tuxedo Mainframe Adapter for SNAソフトウェアではATMIのデフォルト変換表が使用されます。変換表ファイルが見つからない場合、「2241: エラー コードページ表にアクセスできません」というメッセージと理由コードが生成され、ゲートウェイを起動できません。理由コードの詳細は、付録B「エラー・メッセージ」内でこのメッセージを参照してください。
リスト5-2は、1つのローカル・ドメイン(CIXA)と2つのリモート・ドメイン(CISAおよびIMSA)を定義するエントリを示しています。常にローカル・ドメインではASCIIコードページCP-00819を使用するものと想定されています。この例では、2つのリモート・ドメインはそれぞれドイツ語とフランス語のEBCDICコードページ、CP-00273とCP-00297を使用します。
リスト5-2 コードページ定義の例
# DMCONFIG
*DM_LOCAL_DOMAINS
CIXA TYPE=SNAX
*DM_REMOTE_DOMAINS
CISA TYPE=SNAX CODEPAGE=”00819X00273”
IMSA TYPE=SNAX CODEPAGE=”00819X00297”
 
マルチバイト・キャラクタ・セット(MBCS)のサポート
1バイト・キャラクタ・セット(SBCS)変換の他に、TMA SNAはアジアの顧客の要件を満たすためにマルチバイト・キャラクタ・セット(MBCS)変換もサポートしています。この変換は、ディレクトリ$TUXDIR/udataobj/codepageにある変換表には依存せず、200種類を超えるSBCSおよびMBCSキャラクタ・セットが含まれているICUライブラリに基づいています。
この変換を使用するには、次の形式でDMCONFIG DM_REMOTE_DOMAINSCODEPAGEを指定する必要があります。
CODEPAGE="ASCII_CHAR_SET:EBCDIC_CHAR_SET"
ASCII_CHAR_SETはローカル・ドメイン用で、EBCDIC_CHAR_SETはリモート・ドメイン用です。これらは、コロンで区切ります。
ASCII_CHAR_SETEBCDIC_CHAR_SETの両方が、ICUで認識される使用可能なキャラクタ・セットである必要があります。ユーティリティuconvを使用すると、これらのキャラクタ・セットの関連情報を取得できます。
たとえば、ローカル・ドメインではASCII中国語コード・セットgb2312-1980を使用し、リモート・ドメインではEBCDIC中国語コード・セットibm-1388を使用します。
# DMCONFIG
*DM_REMOTE_DOMAINS
CICA TYPE=SNAX CODEPAGE="gb2312-1980:ibm-1388"
ART for CICS統合の考慮事項
Tuxedo ATMIアプリケーションはほとんどがCですが、ART for CICSアプリケーションはCOBOLです。CもCOBOLも同じVIEW32定義を使用しますが、大きな違いが2つあります。
したがって、ART for CICS統合の場合、viewc32では2つの特別なコンパイル・フラグが必要になります。たとえば、Linuxでは次のようになります。
CFLAGS="-m32 -fpack-struct=1" viewc32 myview.v
"-m32"によってCOBOLの"S9(9) COMP"に32ビット長を使用することを指定し、"-fpack-struct=1"によってCOBOL向けにアラインメントなしを指定します。GWSNAXのみがVIEW32バイナリを使用できることを確認してください(他のCアプリケーションでは使用できません)。
ART for CICS統合においては、null終了文字が必要ないため、GWSNAX -tパラメータは省略するか、"-t 4"として設定できます。

Copyright ©1994, 2017,Oracle and/or its affiliates. All rights reserved