PutApplName (MQCHAR28)
これは、メッセージを書き込むアプリケーションの名前で、メッセージの起点コンテキスト の一部です。 内容はプラットフォーム間で異なり、リリース間で異なることもあります。
メッセージ・コンテキストについて詳しくは、 MQMD-メッセージ記述子 および メッセージ・コンテキストを参照してください。
IBM® MQ 9.1.2 から、追加のプログラミング言語でアプリケーション名を指定できます。 詳細については、 サポートされているプログラミング言語でのアプリケーション名の指定を参照してください。
PutApplName の形式は、PutApplType の値によって決まり、リリース間で変わることがあります。 変更はまれですが、環境が変わると発生します。
キュー・マネージャーがこのフィールドを設定する場合 (つまり MQPMO_SET_ALL_CONTEXT 以外のすべてのオプションの場合)、環境で決定されている値に設定します。
z/OS® では、キュー・マネジャーが使用する:- z/OS バッチの場合は、JES JOB カードからの 8 文字のジョブ名
- TSO の場合は、7 文字の TSO ユーザー ID
- CICS®の場合は、8 文字のアプリケーション ID の後に 4 文字のトランザクション ID が続きます。
- IMS の場合は、8 文字の IMS システム ID とそれに続く 8 文字の PSB 名
- XCF の場合は、8 文字の XCF グループ名とそれに続く 16 文字の XCF メンバー名
- キュー・マネージャーが生成したメッセージの場合は、キュー・マネージャー名の最初の 28 文字
- CICS のない分散キューイングの場合は、チャネル・イニシエーターの 8 文字のジョブ名とそれに続く送達不能キューに書き込まれた 8 文字のモジュール名、およびそれに続く 8 文字のタスク ID。
Windows システムでは、キュー・マネージャーは以下の名前を使用する:- CICS アプリケーションの場合は、CICS トランザクション名
- CICS 以外のアプリケーションの場合は、実行可能ファイルの完全修飾名の右端の 28 文字
IBM i では、キュー・マネージャは完全修飾ジョブ名を使用する。![[AIX]](ngaix.gif)
AIX® and Linux® では、キュー・マネージャーは以下の名前を使用する:- CICS アプリケーションの場合は、CICS トランザクション名
- CICS 以外のアプリケーションの場合、 MQ はプロセスの名前をオペレーティング・システムに要求します。 これはプログラム・ファイル名 (絶対パスなし) として戻されます。 その後、MQ はこのプロセス名を MQMD.PutApplName フィールドに次のように書き込みます。
AIX- 名前が 28 バイト以下である場合、その名前が挿入されて右側にスペースが埋め込まれます。
Linux- 名前が 15 バイト以下である場合、その名前が挿入されて右側にスペースが埋め込まれます。
/opt/mqm/samp/bin/amqsput QNAME QMNAMEを実行すると、PutApplName は 'amqsput ' となります。 この MQCHAR28 フィールドには 21 個のスペース文字が埋め込まれています。 PutApplName には/opt/mqm/samp/binを含む絶対パスが含まれていないことに注意してください。
MQPUT および MQPUT1 呼び出しでは、PutMsgOpts パラメーターに MQPMO_SET_ALL_CONTEXT が指定されていれば、これは入出力フィールドです。 フィールド内でヌル文字より後の情報はすべて破棄されます。 ヌル文字およびその後に続く文字は、キュー・マネージャーによってブランクに変換されます。 MQPMO_SET_ALL_CONTEXT が指定されていない場合、このフィールドは入力で無視され、出力専用フィールドになります。