OVH Cloud OVH Cloud

xp_sendmail

12 réponses
Avatar
SuperGolgoth
Bonjour a tous,
je cherche des exemples d'utilisation de cette proc ...
Mon cas est le suivant ;
j'ai une table 'stock' qui sera mouvementée avec l'application
Dans cette table j'ai des zones 'qty', 'qty_min1', 'qty_min2' et
'commande'
Mon but serait de creer un declencheur qui envoi un mail a 2 personnes
lorsque
1°) qty + commande <= qty_min1 (alerte verte)
2°) qty + commande <= qty_min2 (alerte rouge)
Merci de votre aide ...
(mon sql server n'est pas configurer pour envoyer des mails ... faut-il
vraiment installer outlook sur le server ?)

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Life is simple :
Eat, sleep, and surf the net
~~~~~~~~~~~~~~~~~~~~~~~~~~~

2 réponses

1 2
Avatar
SuperGolgoth
EXCELLENT CA FONCTIONNE NIKEL !!!
par contre, j'ai une question complementaire ... comment mettre en
@message , non seulement plusieurs lignes, mais en plus certaines zones
d'une table, resultat d'une requete ...
Exemple ; je voudrais que le message ressemble a ca :
"ATTENTION, vous devez commander le produit @produit
Quantite restante : @qty_rest
Commandes en cours: @commande
Seuil de reappro : @seuil_reap
Seuil critique : @seuil_critique"

Les zones precedes d'un @ sont des zones de la table
Ce mail sera envoyé a partir d'un trigger declanché par le fait que
@qty_rest + @commande < @seuil_reap

Merci de votre aide .....


Après mure réflexion, SuperGolgoth a écrit :
Hello,
tu veux dire qu'avec cette proc on n'a pas besoin d'installer outlook sur le
server sql ..?


Med Bouchenafa a exposé le 26/05/2004 :
SQL MAil est une application MAPI.
Cela nécessite une client MAPI sur le serveur.
Microsoft recommande même d'utiliser OUTLOOK 2000 pour SQL Server
2000.(http://support.microsoft.com/?id(1293)

Si tu veux du simple et du solide, il faut utiliser xp_smtp_sendmail qui se
trouve ici http://www.sqldev.net/xp/xpsmtp.htm


-- Bien cordialement
Med Bouchenafa
TETRASET
75015 Paris

"SuperGolgoth" a écrit dans le message de
news:
Il se trouve que SuperGolgoth a formulé :
Bonjour a tous,
je cherche des exemples d'utilisation de cette proc ...
Mon cas est le suivant ;
j'ai une table 'stock' qui sera mouvementée avec l'application
Dans cette table j'ai des zones 'qty', 'qty_min1', 'qty_min2' et
'commande'
Mon but serait de creer un declencheur qui envoi un mail a 2 personnes
lorsque
1°) qty + commande <= qty_min1 (alerte verte)
2°) qty + commande <= qty_min2 (alerte rouge)
Merci de votre aide ...
(mon sql server n'est pas configurer pour envoyer des mails ... faut-il
vraiment installer outlook sur le server ?)



Est-ce que quelqu'un peut me dire comme tracer un message issus de cette
requete :
exec xp_sendmail '', 'Ceci est un test'
Le retour est : 'Message envoyé.'
mais rien n'arrive dans la boiote mail de ...
le serveur mail est POP3 ...

-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
Life is simple :
Eat, sleep, and surf the net
~~~~~~~~~~~~~~~~~~~~~~~~~~~







--
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Life is simple :
Eat, sleep, and surf the net
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Avatar
Vuillermet Jacques
EXEC sp_send_mail @From='toto' , @To='' , @Subject='Mon
sujet' , @Body='Le corps du message...'

jv

"SuperGolgoth" a écrit dans le message de
news:
Bonjour,
Toutes mes excuses de n'avoir pas preciser que je n'etais pas un pro de
la requete ...
...
Comment fait-on ?


Après mure réflexion, Vuillermet Jacques a écrit :
> Dans l'argument @From lors de l'appel de la Ps !
>
> jv
>
>
> "SuperGolgoth" a écrit dans le message de
> news:
>> Bonjour,
>> je ne comprends pas trop ta procedure ..
>> peus-tu me dire par exemple ou je mets l'adresse email du mon
>> destinataire ...?
>> Merci
>>
>>
>> Vuillermet Jacques a émis l'idée suivante :
>>> J'utilise cette proc stock qui utilise CDO (installé avec Windows, pas
>>> besoin de Outlook).
>>>
>>> Pensez à paraméter 'SERVEURSMTP'
>>>
>>> CREATE PROCEDURE [dbo].[sp_send_mail] (@From varchar(100), @To
>>> varchar(100), @Subject varchar(100), @Body varchar(4000))
>>> 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/default.asp?url=/library/en-us/cdosys/html
>>> /_cdosys_schema_configuration_sendusing.asp
>>> EXEC @hr = sp_OASetProperty @iMsg,
>>>


'Configuration.fields("http://schemas.microsoft.com/cdo/configuration/sendus
>>> ing").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/smtpse
>>> rver").Value', 'SERVEURSMTP'
>>>
>>> -- 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 need to.
>>> -- Clean up the objects created.
>>> EXEC @hr = sp_OADestroy @iMsg
>>>
>>> GO
>>>
>>>
>>> Jacques.
>>>
>>>
>>>
>>> "SuperGolgoth" a écrit dans le message


de
>>> news:
>>>> Bonjour a tous,
>>>> je cherche des exemples d'utilisation de cette proc ...
>>>> Mon cas est le suivant ;
>>>> j'ai une table 'stock' qui sera mouvementée avec l'application
>>>> Dans cette table j'ai des zones 'qty', 'qty_min1', 'qty_min2' et
>>>> 'commande'
>>>> Mon but serait de creer un declencheur qui envoi un mail a 2


personnes
>>>> lorsque
>>>> 1°) qty + commande <= qty_min1 (alerte verte)
>>>> 2°) qty + commande <= qty_min2 (alerte rouge)
>>>> Merci de votre aide ...
>>>> (mon sql server n'est pas configurer pour envoyer des mails ...


faut-il
>>>> vraiment installer outlook sur le server ?)
>>>>
>>>> --
>>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>> Life is simple :
>>>> Eat, sleep, and surf the net
>>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>> --
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> Life is simple :
>> Eat, sleep, and surf the net
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Life is simple :
Eat, sleep, and surf the net
~~~~~~~~~~~~~~~~~~~~~~~~~~~



1 2