SQL - Variables en Xp_sendmail

 
Vista:

Variables en Xp_sendmail

Publicado por Julio Pedraza (9 intervenciones) el 11/06/2007 23:19:42
Buen Día

El problema que tengo es que cuando quiero enviar correos
por xp_sendmail.

EXEC master..xp_sendmail
@recipients = 'mail',<<<<------ aqui quiero poner la variable
@subject='Factura Generada',
@copy_recipients= @a,
@message=@message2,
@query= 'SELECT cantidad as cantidad, descrip as articulo, precio_u as precio, importe as importe_art FROM ##TEMPO ',
@width=1500,
@attach_results=true

quiero que cuando se valla enviar el mail colocar en una variable el emil del cliente para que se envie en automatico pero no me funciona.

como le podria hacer ???????????

Por favor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Variables en Xp_sendmail

Publicado por Isaías (5072 intervenciones) el 12/06/2007 00:22:57
¿Algo asi?

DECLARE @Dir VARCHAR(50)
SET @Dir = '[email protected]'

EXEC master..xp_sendmail
@recipients = @Dir,
@subject='Factura Generada',
@copy_recipients= @a,
@message=@message2,
@query= 'SELECT cantidad as cantidad, descrip as articulo, precio_u as precio, importe as importe_art FROM ##TEMPO ',
@width=1500,
@attach_results=true
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por Julio Pedraza (9 intervenciones) el 12/06/2007 17:58:29
Buen día

Asi como me das el ejemplo si funciona.

Lo que yo quiero hacer es extraer el dato de una consulta que es donde esta el mail y asi ya enviarlo.

pero no me funciona.

SELECT
F.LLAVE,
F.FECHA,
F.CLIENTE ,
C.NOMBRE,
C.RFC,
C.CALLE,
C.COLONIA,
C.EMAIL,------------------------------email
F.SUBTOTAL,
F.IVA,
F.TOTAL,
F.LETRERO,
F.SERVICIOS,
FS.CANTIDAD,
FS.ARTICULO,
A.DESCRIP,
FS.PRECIO_U,
FS.IMPORTE
INTO ##TEMPO
FROM
FACTURA F,
FACTURAS FS,
ARTICULO A,
CLIENTES C
WHERE
F.CORPORATIVO=@CORPORATIVO
AND F.SERIE_FACTURA=@SERIE_FACTURA
AND F.LLAVE=@LLAVE
AND F.CORPORATIVO=FS.CORPORATIVO
AND F.SERIE_FACTURA=FS.SERIE_FACTURA
AND F.NUMFAC=FS.NUMFAC

AND FS.ARTICULO=A.CLAVE

AND F.CLIENTE=C.NUMERO
------------------------------------------------------------------------------------------------------------
DECLARE @Dir VARCHAR(50)
SET @Dir = '[email protected]'

EXEC master..xp_sendmail
@recipients = @Dir,
@subject='Factura Generada',
@copy_recipients= @a,
@message=@message2,
@query= 'SELECT cantidad as cantidad, descrip as articulo, precio_u as precio, importe as importe_art FROM ##TEMPO ',
@width=1500,
@attach_results=true
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por Isaías (5072 intervenciones) el 12/06/2007 19:03:39
Julio

Si ya estas insertando en tu tabla temporal ##TEMPO la lista de tus correos, solo necesitas recorrerla y enviar dichos correos, ¿que no?

Supongo que el correo es UNICO, entonces:

NOTA: No crees tu tabla temporal con 2 gatitos ##

DECLARE @Dir VARCHAR(100)
WHILE EXISTS(SELECT EMAIL FROM #TEMPO)
BEGIN
SELECT TOP1 @Dir = EMAIL FROM #TEMPO
BREAK IF @Dir IS NULL
EXEC master..xp_sendmail
@recipients = @Dir,
@subject='Factura Generada',
@copy_recipients= @a,
@message=@message2,
@query= 'SELECT cantidad as cantidad, descrip as articulo, precio_u as precio, importe as importe_art FROM #TEMPO ',
@width=1500,
@attach_results=true
DELETE #TEMPO WHERE EMAIL = @Dir
CONTINUE
END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por julio pedraza (9 intervenciones) el 12/06/2007 22:32:09
Buen Día

Ya hice lo que me digiste en la contestacion anterior pero cuando lo hago no entra el envio de mail despues de la sentencia esta:
BREAK IF @Dir IS NULL

ahi ya no entro el envio de mail.

y pues si se la quito me dice que tengo que generar la temporal con ##gatos
por cual motivo es que no se los debo de poner.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por Isaías (5072 intervenciones) el 12/06/2007 23:11:17
Una tabla temporal con ## es una GLOBAL y no la necesitas.

--- aqui, deberia ir TODO el codigo donde estas generando la tabla #TEMPO, el select en conjunto con el INTO, ok????

DECLARE @Dir VARCHAR(100)
WHILE EXISTS(SELECT EMAIL FROM #TEMPO)
BEGIN
SELECT TOP1 @Dir = EMAIL FROM #TEMPO
-- Cambia aqui esta linea
-- BREAK IF @Dir IS NULL
IF @Dir IS NULL
BREAK
EXEC master..xp_sendmail
@recipients = @Dir,
@subject='Factura Generada',
@copy_recipients= @a,
@message=@message2,
@query= 'SELECT cantidad as cantidad, descrip as articulo, precio_u as precio, importe as importe_art FROM #TEMPO ',
@width=1500,
@attach_results=true
DELETE #TEMPO WHERE EMAIL = @Dir
CONTINUE
END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por julio pedraza (9 intervenciones) el 13/06/2007 00:26:29
muchas gracias isaias
ya me funciono.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por Isaias (5072 intervenciones) el 13/06/2007 18:30:29
Que bueno, saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

ESTE TAMBIEN FUNCIONA.

Publicado por DALSOM (195 intervenciones) el 28/05/2009 17:47:23
HOLA A TODOS, ESTE SP ES EL RECOMENDADO POR LA AYUDA DE MS SQL 2005. ESPERO LES SIRVA.

msdb.dbo.sp_send_dbmail

GRACIAS POR EL LINK.

SALUDOS,
DALSOM.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por Carlos (2 intervenciones) el 11/06/2008 16:36:33
Excelente respuesta, no sólo respondiste, sino que ampliaste de forma amplia y clara.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables en Xp_sendmail

Publicado por Carlos (2 intervenciones) el 11/06/2008 16:46:33
Hola buenos dias, tengo un problema parecido al anterior. Resulta que no puedo ejecutar variables en select, ejemplo

Declare @SQL varchar(1024);
Set @SQL=’Select * from table where campo = ‘+ ’”&variable&”’

Cuando: exec master..sendmail
...
...
...
@query = @SQL

Me manda error

Ojalá puedas orientarme

[email protected]

Gracias y saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar