Compartir a través de


Lección 6: Recibir la respuesta y finalizar la conversación

En esta lección, obtendrá información sobre cómo recibir el mensaje de respuesta del servicio de destino y finalizar la conversación. Ejecute estos pasos desde una copia de Management Studio que se ejecute en el mismo equipo que la instancia del iniciador de Database Engine (Motor de base de datos).

Procedimientos

Cambiar a la base de datos InitiatorDB

  • Copie y pegue el código siguiente en una ventana del Editor de consultas. A continuación, ejecútelo para cambiar el contexto de nuevo a la base de datos InstInitiatorDB donde recibirá el mensaje de respuesta y finalizar la conversación.

    USE InstInitiatorDB;
    GO
    

Recibir la respuesta y finalizar la conversación

  • Copie y pegue el código siguiente en una ventana del Editor de consultas. Después, ejecútelo para recibir el mensaje de respuesta y finalizar la conversación. La instrucción RECEIVE recupera el mensaje de respuesta de la InstInitiatorQueue. La instrucción END CONVERSATION finaliza el lado del iniciador de la conversación. La última instrucción SELECT muestra el texto del mensaje de respuesta para que pueda confirmar que es el mismo que se envió en el último paso.

    DECLARE @RecvReplyMsg NVARCHAR(100);
    DECLARE @RecvReplyDlgHandle UNIQUEIDENTIFIER;
    
    BEGIN TRANSACTION;
    
    WAITFOR
    ( RECEIVE TOP(1)
        @RecvReplyDlgHandle = conversation_handle,
        @RecvReplyMsg = message_body
      FROM InstInitiatorQueue
    ), TIMEOUT 1000;
    
    END CONVERSATION @RecvReplyDlgHandle;
    
    -- Display recieved request.
    SELECT @RecvReplyMsg AS ReceivedReplyMsg;
    
    COMMIT TRANSACTION;
    GO
    

Pasos siguientes

Esto concluye el tutorial. Los tutoriales únicamente contienen información general. No describen todas las opciones disponibles. Los tutoriales usan una lógica simplificada y un control de errores y no se deberían usar en un entorno de producción.Para crear conversaciones eficaces, confiables y robustas, necesita un código más complejo que el ejemplo de este tutorial.

Volver a los tutoriales de Service Broker

Tutoriales de Service Broker