November 3, 2005 at 1:10 pm
I've been able to successfully send emails via CDO through a stored proc (Reference: http://support.microsoft.com/kb/312839/) using SQL Server 2000. However, I have been unable to set the message priority. This topic has been discussed briefly in previous forum posts, but no one has been able to provide an answer.
Here's what I know:
I have tried various methods of setting the Priority property in the stored proc, but none have worked. Here are some examples of what I have tried (NOTE: the iMsg object is the created CDO.Message object):
EXEC @hr = sp_OASetProperty @iMsg, 'Fields("urn:schemas:mailheader:X-Priority").Value',2
EXEC @hr = sp_OASetProperty @iMsg, 'Fields("urn:schemas:mailheader:priority").Value','High'
EXEC @hr = sp_OASetProperty @iMsg, 'Fields("urn:schemas:mailheader:priority").Value',1
What is interesting is that I can call the sp_OAGetProperty to check the priority property and it reports the value I set it to:
EXEC @hr = sp_OAGetProperty @iMsg, 'Fields("urn:schemas:mailheader:priority").Value'
Has anyone been able to successfully set the message priority using a store proc? If so, how did you accomplish it?
Thanks in advance - Don
November 3, 2005 at 1:52 pm
Wow. I can't believe I took so long to realize my error. I am now able to send an email with HIGH priority through our SMTP server. Here's the scoop:
First, set the priority property:
EXEC @hr = sp_OASetProperty @iMsg, 'Fields("urn:schemas:mailheader:priority").Value','High'
Then the field must be updated before the Send method is executed:
EXEC @hr = sp_OAMethod @iMsg, 'Fields.Update', null
I was missing the Update method to ensure the field was update prior to sending the message.
Here is a very condensed version of the code used to send the email:
EXEC @hr = sp_OACreate 'CDO.Message', @iMsg OUT EXEC @hr = sp_OASetProperty @iMsg, 'Configuration.fields("<A href="http://schemas.microsoft.com/cdo/configuration/sendusing".Value','2'">http://schemas.microsoft.com/cdo/configuration/sendusing").Value','2' EXEC @hr = sp_OASetProperty @iMsg, 'Configuration.fields("<A href="http://schemas.microsoft.com/cdo/configuration/smtpserver"
.Value'">http://schemas.microsoft.com/cdo/configuration/smtpserver").Value', @SMTPServer EXEC @hr = sp_OAMethod @iMsg, 'Configuration.Fields.Update', null
EXEC @hr = sp_OASetProperty @iMsg, 'Fields("urn:schemas:mailheader:priority").Value','High' EXEC @hr = sp_OAMethod @iMsg, 'Fields.Update', null
EXEC @hr = sp_OASetProperty @iMsg, 'To', @To EXEC @hr = sp_OASetProperty @iMsg, 'From',@From EXEC @hr = sp_OASetProperty @iMsg, 'Subject', @Subject EXEC @hr = sp_OASetProperty @iMsg, 'TextBody', @TextBody
EXEC @hr = sp_OAMethod @iMsg, 'Send', NULL EXEC @hr=sp_OADestroy @iMsg
Viewing 2 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic. Login to reply
This website stores cookies on your computer.
These cookies are used to improve your website experience and provide more personalized services to you, both on this website and through other media.
To find out more about the cookies we use, see our Privacy Policy