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

SQL Anywhere 12.0.1 » QAnywhere » QAnywhere クライアントアプリケーションの作成

 

QAnywhere メッセージの送信

以下の手順では、QAnywhere アプリケーションからメッセージを送信する方法を説明します。これらの手順では、QAManager オブジェクトがすでに作成され、オープンされているものとします。

アプリケーションからメッセージを送信しても、そのメッセージがデバイスから配信されるという保証はありません。アプリケーションは、メッセージ配信のためにキューにメッセージを登録するだけです。QAnywhere Agent がそのメッセージを Mobile Link サーバーに送信し、その後 Mobile Link サーバーが実際に送信先にメッセージを配信します。

メッセージ転送が行われるタイミングの詳細については、クライアントにメッセージを転送するタイミングの決定を参照してください。

 ♦ メッセージの送信 (.NET の場合)
  1. 新しいメッセージを作成します。

    CreateTextMessage() を使用してテキストメッセージを作成することも、CreateBinaryMessage() を使用してバイナリメッセージを作成することもできます。

    QATextMessage     msg;
    msg = mgr.CreateTextMessage();
  2. メッセージのプロパティを設定します。

    QATextMessage クラスまたは QABinaryMessage クラスのメソッドを使用してプロパティを設定します。

    QAnywhere メッセージを参照してください。

  3. メッセージをキューに登録します。これで送信準備が完了します。

    mgr.PutMessage( "store-id\\queue-name", msg );

    store-idqueue-name を連結した文字列が送信先アドレスになります。

    QAManagerBase.PutMessage メソッド [QAnywhere .NET]クライアントにメッセージを転送するタイミングの決定を参照してください。

 ♦ メッセージの送信 (C++ の場合)
  1. 新しいメッセージを作成します。

    createTextMessage() を使用してテキストメッセージを作成することも、createBinaryMessage() を使用してバイナリメッセージを作成することもできます。

    QATextMessage *   msg;
    msg = mgr->createTextMessage();
  2. メッセージのプロパティを設定します。

    QATextMessage クラスまたは QABinaryMessage クラスのメソッドを使用して、メッセージのプロパティを設定します。

    QAnywhere メッセージを参照してください。

  3. メッセージをキューに登録します。これで送信準備が完了します。

    if( msg != NULL ) {
      if( !mgr->putMessage( "store-id\\queue-name", msg ) ) {
        // Display error using mgr->getLastErrorMsg().
        }
        mgr->deleteMessage( msg );
    }

    store-idqueue-name を連結した文字列が送信先アドレスになります。

    QAManagerBase.putMessage メソッド [QAnywhere C++]クライアントにメッセージを転送するタイミングの決定を参照してください。

 ♦ メッセージの送信 (Java の場合)
  1. 新しいメッセージを作成します。

    QAManagerBase.createTextMessage() を使用してテキストメッセージを作成することも、QAManagerBase.createBinaryMessage() を使用してバイナリメッセージを作成することもできます。

    QATextMessage msg;
    msg = mgr.createTextMessage();
  2. メッセージのプロパティを設定します。

    QATextMessage メソッドまたは QABinaryMessage メソッドを使用して、メッセージのプロパティを設定します。

    QAnywhere メッセージを参照してください。

  3. メッセージをキューに登録します。

    mgr.putMessage("store-id\\queue-name", msg);

QAManagerBase.putMessage メソッド [QAnywhere Java]クライアントにメッセージを転送するタイミングの決定を参照してください。

 ♦ メッセージの送信 (SQL の場合)
  1. メッセージ ID を格納する変数を宣言します。

    begin
        declare @msgid varchar(128);
  2. 新しいメッセージを作成します。

        set @msgid = ml_qa_createmessage();
  3. メッセージのプロパティを設定します。

    詳細については、メッセージプロパティを参照してください。

  4. メッセージをキューに登録します。

        call ml_qa_putmessage( @msgid, 'clientid\queuename' );
        commit;
    end

ml_qa_putmessageクライアントにメッセージを転送するタイミングの決定を参照してください。


トランザクション指向メッセージングの実装