xp_findnextmsg (Transact-SQL)
Acepta un Id. de mensaje como entrada y devuelve el Id. de mensaje como salida. xp_findnextmsg se utiliza con sp_processmail para procesar correo en la bandeja de entrada de MicrosoftSQL Server.
[!NOTA]
Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan.
Sintaxis
xp_findnextmsg [ [ @type= ] type ]
[ , [ @unread_only= ] 'unread_value' ]
[ , [ @msg_id= ] 'message_id' [ OUTPUT ] ]
Argumentos
[ @type=] type
Es el tipo de mensaje de entrada basado en la definición MAPI:IP[M|C].Vendorname.subclass
Si type es NULL, los tipos de mensajes que comienzan por IPM aparecen en la bandeja de entrada del cliente de correo y xp_findnextmsg los podrá buscar y leer. Los tipos de mensajes que empiezan por IPC no aparecen en la bandeja de entrada del cliente de correo y se tienen que buscar o leer estableciendo el parámetro type. El valor predeterminado es NULL. SQL Mail admite los tipos de mensajes IPM e IPC.
[ @unread_only=] 'unread_value'
Indica si sólo se consideran los mensajes no leídos (N'TRUE'). El valor predeterminado es N'FALSE', lo que significa que todos los mensajes se tienen en cuenta. unread_value es de tipo nvarchar(5).[ @msg_id=] 'message_id'
Es un parámetro de entrada y salida que especifica la cadena del mensaje como entrada y la cadena del mensaje siguiente como salida. Si message_id es NULL para la entrada, de forma predeterminada el @msg_id de salida es el Id. del último mensaje entregado en la bandeja de entrada. message_id es de tipo varchar(255) y su valor predeterminado es NULL.OUTPUT
Cuando se especifica, message_id se devuelve como el parámetro de salida. Cuando no se especifica, message_id se devuelve como un conjunto de resultados de una sola fila y una sola columna.
Valores de código de retorno
0 (correcto) o 1 (error)
Conjuntos de resultados
xp_findnextmsg devuelve un mensaje cuando recibe un Id. de mensaje válido.
Si @msg_id es NULL, xp_findnextmsg devuelve el siguiente conjunto de resultados.
Nombre de columna |
Tipo de datos |
Descripción |
---|---|---|
Id. del mensaje |
varchar(255) |
Id. de mensaje del siguiente mensaje. |
Notas
Cualquier error, excepto un parámetro no válido, queda registrado en el registro de aplicación de Microsoft Windows.
Permisos
Debe pertenecer a la función fija de servidor sysadmin, pero se pueden conceder permisos EXECUTE a otros usuarios. Sin embargo, por razones de seguridad, se recomienda limitar los permisos para este procedimiento almacenado a los miembros de la función fija de servidor sysadmin.
Ejemplos
En el ejemplo siguiente se obtiene el estado cuando se busca el siguiente Id. de mensaje (sólo para los mensajes no leídos). El valor de xp_findnextmsg se coloca en la variable local @message\_id.
DECLARE @status int, @message_id varchar(255) ;
EXEC @status = xp_findnextmsg @msg_id = @message_id OUTPUT ;