Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » QAnywhere » QAnywhere リファレンス » QAnywhere SQL API リファレンス » メッセージのプロパティ、ヘッダ、内容 » メッセージ・プロパティ

 

ml_qa_getpropertynames

指定されたメッセージのプロパティ名を取得します。

パラメータ
項目 説明 備考
1 メッセージ ID VARCHAR(128)。メッセージ ID は、ml_qa_createmessage または ml_qa_getmessage から取得できます。
備考

このストアド・プロシージャは、指定されたメッセージのプロパティ名の結果セットを開きます。メッセージ ID パラメータが、受信されたメッセージの ID であることが必要です。

結果セットは単一の VARCHAR(128) カラムです。このカラムの各行にメッセージ・プロパティ名が含まれています。QAnywhere の予約済みプロパティ名 ("ias_" または "QA" のプレフィクスが付いているプロパティ名) は返されません。

このプロパティは、メッセージの受信後からロールバックまたはコミットが行われるまでの間に読み込むことができます。ロールバックまたはコミットが行われた後で読み込むことはできません。

参照

次の例では、メッセージ ID が msgid であるメッセージに対するプロパティ名の結果セット上でカーソルを宣言します。次に、アドレスが clientid\queuename であるメッセージを取得し、カーソルを開いてそのメッセージのプロパティ名にアクセスしてから、次のプロパティ名をフェッチします。

begin
 declare prop_name_cursor cursor for
  call ml_qa_getpropertynames( @msgid );
 declare @msgid varchar(128);
 declare @name varchar(128);

 set @msgid = ml_qa_getmessage( 'clientid\queuename' );
 open prop_name_cursor;
 lp: loop
  fetch next prop_name_cursor into name;
  if sqlcode <> 0 then leave lp end if;
  ...
 end loop;
 close prop_name_cursor;
end