Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Procedimiento Para Enviar Correo Con Sql Server 2000

Estas en el tema de Procedimiento Para Enviar Correo Con Sql Server 2000 en el foro de Bases de Datos General en Foros del Web. Alguien tiene alguna idea de como realizar un procedimiento en sql server 2000 para que se genere un correo y se envie en forma atomatica, ...
  #1 (permalink)  
Antiguo 01/03/2004, 12:02
 
Fecha de Ingreso: enero-2004
Ubicación: Antofagasta
Mensajes: 40
Antigüedad: 20 años, 3 meses
Puntos: 0
Procedimiento Para Enviar Correo Con Sql Server 2000

Alguien tiene alguna idea de como realizar un procedimiento en sql server 2000 para que se genere un correo y se envie en forma atomatica, a través de algún procedimiento almacenado, o simplemente crear un procedimiento que me permite enviar correos con sql
  #2 (permalink)  
Antiguo 01/03/2004, 16:36
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
xp_sendmail
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 02/03/2004, 08:03
 
Fecha de Ingreso: enero-2004
Ubicación: Antofagasta
Mensajes: 40
Antigüedad: 20 años, 3 meses
Puntos: 0
Procedimiento Para Enviar Correo Con Sql Server 2000 y xp_sendmail

he probado con varios procedimientos entre ellos:
xp_cdosendmail
xp_sendmail
SP_CDONTS_NewMail_Send
sp_Send_CDONTSMail
sp_send_cdosysmail .... etc

y el que creo que tiene mas futuro es este


CREATE PROCEDURE [dbo].[sp_send_cdosysmail ]
@From varchar(100) ,
@To varchar(100) ,
@Subject varchar(100)=" ",
@Body varchar(4000) =" "
/************************************************** *******************

This stored procedure takes the parameters and sends an e-mail.
All the mail configurations are hard-coded in the stored procedure.
Comments are added to the stored procedure where necessary.
References to the CDOSYS objects are at the following MSDN Web site:
http://msdn.microsoft.com/library/de..._messaging.asp

************************************************** *********************/
AS
Declare @iMsg int
Declare @hr int
Declare @source varchar(255)
Declare @description varchar(500)
Declare @output varchar(1000)

--************* Create the CDO.Message Object ************************
EXEC @hr = sp_OACreate 'CDO.Message', @iMsg OUT

--***************Configuring the Message Object ******************
-- This is to configure a remote SMTP server.
-- http://msdn.microsoft.com/library/de..._sendusing.asp
EXEC @hr = sp_OASetProperty @iMsg, 'Configuration.fields("http://schemas.microsoft.com/cdo/configuration/sendusing").Value','2'
-- This is to configure the Server Name or IP address.
-- Replace MailServerName by the name or IP of your SMTP Server.
EXEC @hr = sp_OASetProperty @iMsg, 'Configuration.fields("http://schemas.microsoft.com/cdo/configuration/smtpserver").Value', 'nombreDelServidorSMTP'

-- Save the configurations to the message object.
EXEC @hr = sp_OAMethod @iMsg, 'Configuration.Fields.Update', null

-- Set the e-mail parameters.
EXEC @hr = sp_OASetProperty @iMsg, 'To', @To
EXEC @hr = sp_OASetProperty @iMsg, 'From', @From
EXEC @hr = sp_OASetProperty @iMsg, 'Subject', @Subject

-- If you are using HTML e-mail, use 'HTMLBody' instead of 'TextBody'.
EXEC @hr = sp_OASetProperty @iMsg, 'TextBody', @Body
EXEC @hr = sp_OAMethod @iMsg, 'Send', NULL

-- Sample error handling.
IF @hr <>0
select @hr
BEGIN
EXEC @hr = sp_OAGetErrorInfo NULL, @source OUT, @description OUT
IF @hr = 0
BEGIN
SELECT @output = ' Source: ' + @source
PRINT @output
SELECT @output = ' Description: ' + @description
PRINT @output
END
ELSE
BEGIN
PRINT ' sp_OAGetErrorInfo failed.'
RETURN
END
END

-- Do some error handling after each step if you have to.
-- Clean up the objects created.
EXEC @hr = sp_OADestroy @iMsg

el problema que tiene la mayoria de estos procedimientos, es que necesitan configuración del sql server .... y con respecto a esto no puedo realizar demasiados cambios en la configuración de sql server, ya que de esta base depende mucha información (nivel de prioridad alto), en la cual no estoy autorizado para efectuar cambios, especialmente al momento de configurar sql server. Es por esto que el procedimiento sp_send_cdosysmail tiene más futuro ya que no me exige que configure algo... ahora el problema es que no funciona y no sé por que? ... si alguién tiene alguna idea, u otro procedimiento el cual se pueda enviar mail por sql server 2000, lo agradeceria. O tal vez alguna manera precisa de configurar para enviar correo con xp_sendmail

Última edición por AntofagastaCL; 02/03/2004 a las 11:59
  #4 (permalink)  
Antiguo 03/03/2004, 15:22
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Yo no tuve problemas con xp_sendmail. Revisa la configuracion de SQLMail, necesita trabajar bien. En mi caso el servidor tiene su cuenta, y bajo ella manda los mails.

El resto de los SPs que mencionas no los encontré, seguramente son scripts que conseguiste en la red pero no vienen con SQL Server.

Te dejo estos links que vi:
http://support.microsoft.com/default...;EN-US;q263556
http://support.microsoft.com/default...;EN-US;q153159
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:39.