2312 (0908) (RC2312): MQRC_SELECTOR_WRONG_TYPE
説明
指定のセレクターを持つデータ項目がバッグ内に存在していますが、そのデータ項目のデータ・タイプが、使用する呼び出しのデータ・タイプと矛盾しています。 例えば、データ項目は数字データ・タイプですが、使用する呼び出しは文字データ・タイプの mqSetString という場合があります。
mqBagToBuffer、mqExecute、および mqPutBag 呼び出しにおいても、MQIACF_INQUIRY データ項目をバッグに追加するために mqAddString または mqSetString が使用された場合に、この理由コードが発生します。
完了コード
MQCC_FAILED
プログラマー応答
mqSetInteger と mqSetString 呼び出しの場合、MQIND_ALL を ItemIndex パラメーターに指定して、必要なデータ・タイプの新規オカレンスを作成する前に指定セレクターの既存の全オカレンスがバッグから削除されるようにします。
mqInquireBag、mqInquireInteger、および mqInquireString 呼び出しの場合は、mqInquireItemInfo 呼び出しを使用して指定セレクターを持つデータ項目のデータ・タイプを決定し、次に適切な呼び出しを使用してデータ項目の値を決定します。
mqBagToBuffer、mqExecute、および mqPutBag 呼び出しの場合は、mqAddInteger または mqSetInteger 呼び出しを使用して MQIACF_INQUIRY データ項目を必ずバッグに追加します。