Friday, January 19, 2018

Como enviar email desde SQL Jobs - sp_send_dbmail - Parte 2

Hola, retomando la primera parte de esta entrada http://lizzymendivil.blogspot.com/2018/01/como-enviar-email-desde-sql-jobs.html les dejo cómo utilizar el sp propio de SQL SERVER llamado msdb.dbo.sp_send_dbmail



Mi stored procedure es el siguiente, está llamando a una función, dicha función me devuelve todos los datos que yo quiero que se envíe por correo. Luego ejecuta el SP propio de Sql Server el cual a su vez pide ciertos parámetros:

@profile_name es el profile que habiamos creado en la anterior entrada, si está NULL, tomará el profile por defecto.
@recipients a los correos destinatarios, si tienes más de uno, deberán ir separados por punto y coma.
@subject es el asunto del correo
@body es el cuerpo del correo


Asi mismo, se puede enviar archivo adjunto o también se le puede dar formato HTML al body.


Como enviar email desde SQL Jobs - sp_send_dbmail - Parte 1

Hola!

En esta ocasión les compartiré cómo enviar un email desde SQL Jobs en SQL Server utilizando el stored procedure "sp_send_dbmail"

Primero que nada, debemos configurar la "Database Mail", para ello utilizaremos el Wizard (hay otra forma de hacerlo a través de comandos)

CONFIGURAR DATABASE MAIL UTILIZANDO EL WIZARD

Conéctate a Microsoft SQL Server Management Studio, expande Management,click derecho sobre Database Mail y click en Configure Database Mail


Luego selecciona "Configure Database Mail" y veras la siguiente ventana de bienvenida, luego haz click en "Next".



Aparecera la siguiente ventana, selecciona "Set up Database Mail by performing..." y haz en click "Next".



Si el Database Mail no ha sido habilitado todavia, aparecerá la siguiente ventana. Haz click en "Yes" para habilitarlo. Si ya está habilitado, no se mostrará la ventana.



Ahora, ingresa un nombre de perfil y descripción (la descripción es opcional) y haz click en "Add..."


En la siguiente ventana que aparecerá, llena todos los datos solicitados:

E-mail address
Display name (optional)
Replay e-mail (optional)
Server name
Port number
This server requires a secure connection (SSL): YES
Cuando hayas terminado, haz click en "OK".



Luego, se te mostrará una ventana con los datalles de la cuenta SMPT. Haz click en "Next" para continuar.



En la siguiente ventana, deberás hacer check como Public al Profile que acabas de crear ponerle Yes como Default Profile. Haz click en "Next".



La siguiente ventana contiene algunos paráemetros adicionales que pueden ser seteados para controlar cómo se enviará el mail. Puedes dejarlos con los valores por defectos o cambiarlos. Click en "Next".



A continuación, se te mostrará una ventana con las opciones que haz seleccionado anteriormente. Si todo está correcto, haz click en "Finish" o "Back" para realizar algun cambio.




Cuando hayas hecho click en "Finish", la siguiente ventana que verás, te mostrará el estado de la instalación. Cuando haya concluido, haz click en "Close".



HABILITAR DATABASE MAIL EN EL SQL SERVER AGENT

Hasta este punto, tu SQL Server puede enviar correo pero tu SQL Server Agent aún no. Hagamos lo siguiente:

Click derecho en SQL Server Agent y selecciona "Properties":



Ahora, click en el tab "Alert System". Aqui es donde le dirás al Sql Server Agent qué profile de database mail usar.



Debes reiniciar el SQL Server Agent para hacer que tome efecto.



CÓMO CREAR UN SQL SERVER AGENT JOB

Expande SQL Server Agent. Click derecho en "Jobs", luego click en "New Job".



En la página "General", ingresa un nombre, descripción es opcional, y click en Enable en el caso de que quieras que no se ejecute el job antes de programarlo.



Luego, ve a la página "Steps" y click en "New".



En esta ventana, ingresa el nombre del step, elige como Type: Transact-SQL scrip, elige el Database y en Command typea el comando que ejecutará tu job, para este caso será un SP el cual se encargará de enviar el correo.



Ahora ve a la página "Schedule", y haz click en "New".



En esta venanta, ingresa un nombre elige le Schedule type, configura la Frequency and el Daily frequency. Y click en “OK”.



Finalmente click en "OK" y eso es todo!




Eso es todo en cuanto a configuraciones, ahora necesitamos crear el Stored Procedure que enviará el correo y el cual será llamado a traves del job que acabamos de crear. Será la segunda parte de esta entrada.

Monday, January 15, 2018

Ellos saben mas de lo que pensamos

Hola!

Les dejo una nota cómica, exagerada pero nada fuera de lo imaginario o irreal.