配付定義を記述したファイルを配付定義ファイルと呼びます。配付定義ファイルには、複数の配付定義を記述することができます。配付定義ファイルは、ユーザが任意の通常ファイル上にテキストファイルとして作成します。
配付定義ファイルは、viコマンドなど(Windowsではメモ帳など)の編集ツールを使用して作成してください。配付定義の記述方法の詳細については、"12.5.5.3 配付定義の記述"を参照してください。
配付定義の登録は、tjnldefコマンドを使用して行います。tjnldefコマンドの詳細は、"12.10.3.8 tjnldef(配付定義を登録する)"を参照してください。
以下にtjnldefコマンドの入力例を示します。
-----------------------------------------------
tjnldef -a -f /tjnl/def/PUT.def
-----------------------------------------------
-----------------------------------------------
tjnldef -a -f c:\tjnl\def\PUT.def
-----------------------------------------------
配付定義の記述方法について説明します。
なお、配付定義の記述規約については、TRM環境定義と同様です。TRM環境定義の記述規約については、"C.1 定義記述規約"を参照してください。
配付定義の記述形式を、"表12.29 配付定義の記述形式"に示します。
[Queue] |
a) Queueセクション
利用ジャーナルを配付するメッセージキューと利用ジャーナルの形式に関する情報を記述します。記述内容を"表12.30 [Queue]セクションの記述内容"に示します。
なお、利用ジャーナルの詳細な形式については、"第14章 データ形式"を参照してください。
キーワード | 省略 | 記述方法 | 記述内容の説明 |
---|---|---|---|
不可 | trmqdcrtqコマンドで指定したメッセージキュー名を指定します。 | 利用ジャーナルを配付するメッセージキュー名を指定します。 | |
不可 | 取得定義名を指定します。 | 配付する利用ジャーナルに対応する取得定義名を指定します。 | |
可 | 以下のいずれかの値を指定します。 COMP:圧縮する なお、値の大文字と小文字は区別されません。 | 複数のテーブルの項目を1つの利用ジャーナルとして取得する際に、無効項目を削除して利用ジャーナルを圧縮するか否かを指定します。 | |
可 | 以下のいずれかの値を指定します。 PACK:パッキングする なお、値の大文字と小文字は区別されません。 | 1つのトランザクションで発生した複数の利用ジャーナルを1つのメッセージにパッキングするか否かを指定します。 パッキングする場合、MsgLenで指定したメッセージ長に達するまで、1つのメッセージ中に複数の利用ジャーナルが詰め込まれます。 | |
可 | 1[KB]~2[MB]の数値で指定します。 なお、単位の大文字と小文字は区別されません。 | 利用ジャーナルをメッセージとして配付する際のメッセージの最大長を指定します。 メッセージの長さには、以下の長さも含まれます。
これらの長さの詳細については、"第14章 データ形式"を参照してください。 メッセージキューに配付するメッセージの長さが指定された値を超える場合、複数のメッセージに分割されます。 | |
可 | 以下のいずれかの値を指定します。 S_EUC:UNIX(EUC)形式に変換する(注1) なお、値の大文字と小文字は区別されません。 | 利用ジャーナルのデータ変換方法を指定します。各値を指定した場合の詳細なデータ形式については、"表12.31 OutCodeの指定値ごとの詳細なデータ形式"を参照してください。 | |
可 | 以下のいずれかの値を指定します。 ADD:項目属性表示を付加する なお、値の大文字と小文字は区別されません。 | 利用ジャーナルの各項目に項目属性表示を付加するか否かを指定します。 項目属性表示の詳細については、"第14章 データ形式"を参照してください。 | |
可 | 以下のいずれかの値を指定します。 EXTEND:文字列項目の文字列領域のサイズを拡張する なお、値の大文字と小文字は区別されません。 | 利用ジャーナルの文字列項目および可変長文字列項目の文字列領域のサイズを拡張するか否かを指定します。 本指定は、項目属性表示を付加する場合のみ有効です。項目属性表示を付加しない場合、本キーワードを指定することはできません。 | |
可 | 以下のいずれかの値を指定します。 STRING:日時データの属性を文字列で出力する(項目属性表示を付加する場合の省略値) なお、値の大文字と小文字は区別されません。 | 利用ジャーナルの日時データの属性を文字列または数値のいずれかで出力するかを指定します。 項目属性表示を付加する場合、本キーワードにSTRINGのみ指定できます。項目属性表示を付加する場合、本キーワードにNUMVALを指定することはできません。 | |
可 | 以下のいずれかの値を指定します。 CHANGE1:各国語文字の代替文字を1バイトのアンダースコア(_)とする(省略値)(注2) | コード変換に失敗した各国語文字の代替文字を2バイトのアンダースコアにするか否かを指定します。 |
注1) EUCコードとシフトJISコードは同じ種類のコード系でありながら、利用者定義域の割当などが異なるものが2つ以上存在しています。これらを環境変数で切り換えて運用することができます。詳しい設定方法は標準コード変換のマニュアルを参照してください。
注2) 変換前のコード系がUNICODEの場合は、指定値に関わらず2バイトのアンダースコアとなります。
データ形式 | |||||
---|---|---|---|---|---|
文字コード | 浮動小数点の表現形式 | 外部10進数の表現形式(注5) | エンディアンの形式 | ||
OutCodeの値 | NOCNV(注1) | EUCもしくはUNICODE(注2) | IEEE形式 | ASCII文字 | ビッグ・エンディアン |
シフトJISもしくはUNICODE(注3) | IEEE形式 | ASCII文字 | ビッグ・エンディアン | ||
UNICODE(注6) | IEEE形式 | ASCII文字 | ビッグ・エンディアン | ||
NOCNV(注1) | シフトJISもしくはUNICODE(注3) | IEEE形式 | ASCII文字 | リトル・エンディアン | |
UNICODE(注6) | IEEE形式 | ASCII文字 | リトル・エンディアン | ||
S_EUC | COBOL_EUC(注4) | IEEE形式 | ASCII文字 | ビッグ・エンディアン | |
S_SJIS | シフトJIS | IEEE形式 | ASCII文字 | ビッグ・エンディアン | |
S_UNICODE | UNICODE(注6) | IEEE形式 | ASCII文字 | ビッグ・エンディアン | |
WIN_SJIS | シフトJIS | IEEE形式 | ASCII文字 | リトル・エンディアン | |
WIN_UNICODE | UNICODE(注6) | IEEE形式 | ASCII文字 | リトル・エンディアン | |
GS_KANA | EBCDIC(カナ) | MVS形式 | ゾーン形式 | ビッグ・エンディアン | |
GS_ASCII | EBCDIC(ASCII) | MVS形式 | ゾーン形式 | ビッグ・エンディアン |
注1)データの形式を変換しない場合の利用ジャーナルのコード系は、Oracleデータベースのキャラクタ・セットおよび各国語キャラクタ・セットに依存します。Oracleデータベースのキャラクタ・セットおよび各国語キャラクタ・セットの詳細は、Oracleのマニュアルを参照してください。
注2)文字列と可変長文字列はEUC、各国語文字列と可変長各国語文字列はUNICODE(Solarisサーバ/LinuxサーバではUCS2、WindowsサーバではUTF16)で設定されます。
注3)文字列と可変長文字列はシフトJIS、各国語文字列と可変長各国語文字列はUNICODE(UCS2)で設定されます。
注4)各国語文字のみCOBOL_EUCとなります。
注5)ジャーナル取得定義に位取りを指定したNUMBER型として定義した項目のデータは外部10進数として利用ジャーナルに設定されます。
注6)文字列と可変長文字列はUTF8で設定されます。各国語文字列と可変長各国語文字列は、Solarisサーバ/LinuxサーバではUCS2、WindowsサーバではUTF16で設定されます。
配付定義の記述例を"表12.32 配付定義の記述例"に示します。
[Queue] Name = N_KANTO # 配付先メッセージキュー Logfmt = LOG_NKANTO Compress = COMP # 更新した資源単位で圧縮する Pack = PACK # 複数の利用ジャーナルをパッキングする MsgLen = 30K # 1メッセージの最大長を30[KB]とする OutCode = GS_ASCII # 利用ジャーナルをグローバルサーバ形式に変換する Attr = ADD # 利用ジャーナルに項目属性表示を付加する CharInfo = EXTEND # 利用ジャーナルの文字列項目の文字列領域サイズを拡張する TimeInfo = STRING # 利用ジャーナルの日時データの属性を文字列とする UndefCtrl = CHANGE2 # コード変換エラーになった各国語文字は2バイトのアンダースコアに置き換える |