Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/EE/Message Control Extension 使用の手引


eemcpfunc(アプリケーション定義)

〈このページの構成〉

機能

アプリケーションに関する環境を定義します。

コマンドの形式

〔eemcpfunc    〔-u "〔ownlsg=入力セグメント判定UOCのエントリポインタ名〕
                     〔ownlmc=入力メッセージ編集UOCのエントリポインタ名〕
                     〔ownlra=出力メッセージ編集UOCのエントリポインタ名〕
                     〔ownlcn=コネクション確立UOCのエントリポインタ名〕
                     〔rltrn=MCP後処理トランザクション起動サービス名〕
                     〔rltrnlevel=MCP後処理トランザクションの
                                   トランザクションレベル名〕"〕
               〔-e "〔errtrns=yes|no〕"〕
               〔-c "〔uocexc=yes|no〕"〕
               〔-q serial|parallel〕
               〔-m "〔msglen=normal|extend〕
                     〔recvpermanence=yes|no〕
                     〔reconnectsend=yes|no〕"〕
               〔-o "〔outputmessage=OJの取得先ID〕
                     〔outputfunction=OJの機能拡張レベル〕"〕〕

オプションの説明

●-u

このオプションの各オペランドで指定するエントリポインタ名はTP1/EEのユーザサービス関連定義のmoduleオペランドに指定したUAP共用ライブラリの中に作成してください。

(オペランド)

ownlsg=入力セグメント判定UOCのエントリポインタ名

〜〈1〜31文字の識別子〉

入力セグメント判定UOCのC言語関数名を指定します。

省略した場合は入力セグメント判定UOCを呼び出しません。

ownlmc=入力メッセージ編集UOCのエントリポインタ名

〜〈1〜31文字の識別子〉

入力メッセージ編集UOCのC言語関数名を指定します。

省略した場合は入力メッセージ編集UOCを呼び出しません。

eemcpleコマンドで-vオプションを省略した論理端末定義が一つでもある場合,このオプションは省略できません。

ownlra=出力メッセージ編集UOCのエントリポインタ名

〜〈1〜31文字の識別子〉

出力メッセージ編集UOCのC言語関数名を指定します。

省略した場合は出力メッセージ編集UOCを呼び出しません。

ownlcn=コネクション確立UOCエントリポインタ名

〜〈1〜31文字の識別子〉

コネクション確立UOCのC言語関数名を指定します。

省略した場合はコネクション確立UOCを呼び出しません。

rltrn=MCP後処理トランザクション起動サービス名

〜〈1〜31文字の識別子〉

MCP後処理トランザクションを起動するサービス名を指定します。

ここで指定するサービス名にはTP1/EEのユーザサービス関連定義のserviceオペランドで指定したサービス名を指定してください。

省略した場合はMCP後処理トランザクションを起動しません。

rltrnlevel=MCP後処理トランザクションのトランザクションレベル名

〜〈1〜31文字の識別子〉

MCP後処理トランザクションのトランザクションレベル名を指定します。

トランザクションレベル方式でMCP後処理トランザクション起動サービス名を指定する場合,このオペランドを必ず指定してください。

トランザクションレベル方式については,TP1/FSPの関連ドキュメントを参照してください。

このオペランドは,TP1/FSP使用時にだけ指定できます。

●-e

(オペランド)

errtrns=yes|no

〜《yes》

メッセージ送信時に通信障害が発生した場合に送信障害トランザクションを起動するかどうかを指定します。

yes

送信障害トランザクション(ERRTRNS)を起動します。

no

送信障害トランザクション(ERRTRNS)を起動しません。通信障害が発生した場合,送信メッセージは破棄されます。

●-c

(オペランド)

uocexc=yes|no

〜《no》

入力メッセージ編集UOCおよび出力メッセージ編集UOCを論理端末単位にシリアライズするかどうかを指定します。

yes

論理端末単位にシリアライズします。入力メッセージ編集UOCと出力メッセージ編集UOCが同一排他内で実行されます。

no

論理端末単位にシリアライズしません。入力メッセージ編集UOCと出力メッセージ編集UOCがパラレルに実行されます。

●-q serial|parallel

  〜《serial》

端末キュー機能を使用して,論理端末単位のイベントをシリアルに処理するかどうかを指定します。論理端末単位のイベントには,メッセージ受信,コネクション確立・解放,および論理端末の閉塞・閉塞解除があります。

端末キュー機能については,「2.5 端末キュー機能」を参照してください。

serial

端末キュー機能を使用して,論理端末単位のイベントをシリアルに処理します。

parallel

端末キュー機能を使用しないで,論理端末単位のイベントをパラレルに処理します。サービス単位にシリアル処理をする場合に指定します。

●-m

(オペランド)

msglen=normal|extend

〜《normal》

送受信メッセージの最大サイズを拡張するかどうかを指定します。

normal

送受信メッセージの最大サイズを拡張しません。送信メッセージの最大サイズは32キロバイト,受信メッセージの最大サイズは受信バッファサイズです。

extend

送受信メッセージの最大サイズを拡張します。送受信メッセージの最大サイズは,TCP/IPプロトコルを使用する場合は8メガバイト,UDPプロトコルを使用する場合は64キロバイトになります。

msglenオペランドの指定値による送受信メッセージの最大サイズの違いについて,次の表に示します。

表4‒4 msglenオペランドの指定値による送受信メッセージの最大サイズの違い

msglenオペランド指定値

送受信メッセージ

送受信メッセージの最大サイズ

(単位:バイト)

TCP/IPプロトコル使用時

UDPプロトコル使用時

normal

送信メッセージ

32000※1

32000※1

受信メッセージ

TP1/EEサービス定義のrecv_message_buf_sizeオペランド指定値

65531※2

extend

送信メッセージ

8388608

65531※1

受信メッセージ

65531※2,※3

注※1

TP1/EEサービス定義のsend_message_buf_sizeオペランドで指定した送信バッファサイズの方が小さい場合は,send_message_buf_sizeオペランドの指定値が設定されます。

注※2

TP1/EEサービス定義のrecv_message_buf_sizeオペランドで指定した受信バッファサイズの方が小さい場合は,recv_message_buf_sizeオペランドの指定値が設定されます。

注※3

入力メッセージ編集UOCでの編集後の最大サイズは8388608になります。

recvpermanence=yes|no

〜《no》

クラスタを構成する実行系と待機系の間で,受信メッセージを永続化するかどうかを指定します。このオペランドは,XTCサービス定義のcluster_modeオペランドにYを指定している場合にだけ有効になります。

yes

受信メッセージを永続化します。

no

受信メッセージを永続化しません。

reconnectsend=yes|no

〜《プロセス関連定義のfsp_useオペランドがNの場合はyes,Yの場合はno》

メッセージ受信時のコネクション以外の場合(送信元でコネクションが再確立された場合)でも,メッセージ送信元の論理端末(TCP/IP)に対する応答メッセージを送信するかどうかを指定します。

yes

メッセージ受信時のコネクション以外の場合でも,応答メッセージを送信します。

no

メッセージ受信時のコネクション以外の場合は,応答メッセージを送信しません。

通信プロトコルを持つプログラムがMCPを使用して通信する場合,プロトコルで再確立されたコネクションを利用する応答メッセージの送信を許可していないときはnoを指定します。再確立されたコネクションを利用する応答メッセージの送信を許可しているときはyesを指定します。

受信メッセージを永続化する指定で系切り替えが発生した場合,このオペランドにnoを指定したときでも,系切り替え前に受信したメッセージに対して応答メッセージを送信します。系切り替え後に受信したメッセージに対する応答メッセージの送信は,このオペランドの指定に従います。

また,このオペランドにnoを指定した場合,トランザクション内で任意の論理端末(TCP/IP)に対する一方送信関数(ee_mcp_send)を発行しても,コミットする前に送信対象とのコネクションが再確立されると,トランザクションがコミットしてもメッセージは送信されません。

xtc_use=Yの場合はこのオペランドを指定しても無視し,「yes」を指定したものとして動作します。

●-o

このオプションは,TP1/FSP使用時にだけ指定できます。

(オペランド)

outputmessage=OJの取得先ID

〜〈符号なし整数〉((0〜255))《0》

MCPでの送信処理でOJを取得する場合に,OJの取得先IDを指定します。

outputmessageオペランドを省略した場合,またはこのオペランドに0を指定した場合はOJを取得しません。

outputmessageオペランドで指定した取得先IDによって,OJを書き込むUAP履歴情報グループの表を決定します。取得先IDが指定されていない場合(TP1/FSPのトランザクション関連定義のtrnaphputid定義コマンドの-iオプションを指定しない場合)は,プロセスダウンします。

UAP履歴情報取得機能を使用しない場合(TP1/FSPのトランザクション関連定義のtrn_aph_useオペランドにNを設定した場合),outputmessageオペランドの指定値は無効となります。

TP1/FSPのユーザサービス関連定義のservice_attr定義コマンドの-mオプションを指定している場合,-vオプションで指定したサービス名,または-xオプションで指定したトランザクション種別では,outputmessageオペランドの指定値は無効となります。

outputmessageオペランドとTP1/FSPのユーザサービス関連定義のservice_attr定義コマンドの-mオプションとの関連性,およびUAP履歴情報取得機能については,TP1/FSPの関連ドキュメントを参照してください。

outputfunction=OJの機能拡張レベル

〜〈16進数〉{00000000|00000001}《00000000》

MCPでのOJ取得の機能拡張レベルを指定します。

TP1/FSPのユーザサービス関連定義のservice_attr定義コマンドの-pオプションを指定している場合,-vオプションで指定したサービス名,または-xオプションで指定したトランザクション種別では,outputfunctionオペランドの指定値は無効となります。

00000000

OJ取得の機能を拡張しません。

00000001

OJを取得するときに,ユーザデータを出力データとして取得しません。