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

SQL Anywhere 12.0.1 (Deutsch) » QAnywhere » Schreiben von QAnywhere-Clientanwendungen

 

QAnywhere-Nachrichten senden

Die folgende Prozedur beschreibt, wie Sie Nachrichten von QAnywhere-Anwendungen versenden. Es wird vorausgesetzt, dass Sie ein QAManager-Objekt erstellt und geöffnet haben.

Das Versenden einer Nachricht aus Ihrer Anwendung bedeutet nicht, dass sie auch von Ihrem Gerät abgeschickt wird. Die Nachricht wird einfach in eine Zustellungswarteschlange gestellt. Der QAnywhere Agent sorgt dafür, dass die Nachricht an den MobiLink-Server gesendet wird, der sie wiederum an ihr Ziel bringt.

Weitere Informationen zum Zeitpunkt der Nachrichtenübertragung finden Sie unter Zeitpunkt der Nachrichtenübermittlung auf dem Client festlegen.

 Senden einer Nachricht (.NET)
  1. Erstellen Sie eine neue Nachricht.

    Sie können eine Text- oder Binärnachricht erstellen, indem Sie entweder CreateTextMessage() oder CreateBinaryMessage() verwenden.

    QATextMessage     msg;
    msg = mgr.CreateTextMessage();
  2. Legen Sie Nachrichteneigenschaften fest.

    Verwenden Sie die Methoden der QATextMessage- bzw. der QABinaryMessage-Klasse, um Eigenschaften festzulegen.

    Siehe QAnywhere-Nachrichten.

  3. Stellen Sie die Nachricht versandbereit in die Warteschlange.

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

    Dabei gilt: Speicher-ID und Warteschlangenname sind Zeichenfolgen, die kombiniert werden, um die Zieladresse anzugeben.

    Siehe QAManagerBase.PutMessage-Methode [QAnywhere .NET] und Zeitpunkt der Nachrichtenübermittlung auf dem Client festlegen.

 Senden einer Nachricht (C++)
  1. Erstellen Sie eine neue Nachricht.

    Sie können eine Text- oder Binärnachricht erstellen, indem Sie entweder createTextMessage() oder createBinaryMessage() verwenden.

    QATextMessage *   msg;
    msg = mgr->createTextMessage();
  2. Legen Sie Nachrichteneigenschaften fest.

    Verwenden Sie die Methoden der QATextMessage- bzw. der QABinaryMessage-Klasse, um Nachrichteneigenschaften festzulegen.

    Siehe QAnywhere-Nachrichten.

  3. Stellen Sie die Nachricht versandbereit in die Warteschlange.

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

    Dabei gilt: Speicher-ID und Warteschlangenname sind Zeichenfolgen, die kombiniert werden, um die Zieladresse anzugeben.

    Siehe QAManagerBase.putMessage-Methode [QAnywhere C++] und Zeitpunkt der Nachrichtenübermittlung auf dem Client festlegen.

 Senden einer Nachricht (Java)
  1. Erstellen Sie eine neue Nachricht.

    Sie können eine Text- oder Binärnachricht erstellen, indem Sie entweder QAManagerBase.createTextMessage() oder QAManagerBase.createBinaryMessage() verwenden.

    QATextMessage msg;
    msg = mgr.createTextMessage();
  2. Legen Sie Nachrichteneigenschaften fest.

    Benutzen Sie die Methoden QATextMessage oder QABinaryMessage, um Nachrichteneigenschaften festzulegen.

    Siehe QAnywhere-Nachrichten.

  3. Stellen Sie die Nachricht in die Warteschlange.

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

Siehe QAManagerBase.putMessage-Methode [QAnywhere Java] und Zeitpunkt der Nachrichtenübermittlung auf dem Client festlegen.

 Senden einer Nachricht (SQL)
  1. Deklarieren Sie eine Variable, die die Nachricht-ID aufnehmen soll.

    begin
        declare @msgid varchar(128);
  2. Erstellen Sie eine neue Nachricht.

        set @msgid = ml_qa_createmessage();
  3. Legen Sie Nachrichteneigenschaften fest.

    Siehe Nachrichteneigenschaften.

  4. Stellen Sie die Nachricht in die Warteschlange.

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

Siehe ml_qa_putmessage und Zeitpunkt der Nachrichtenübermittlung auf dem Client festlegen.


Implementierung von transaktionalem Messaging