Results 1 to 3 of 3
  1. #1
    Join Date
    Sep 2004
    Posts
    7

    Unanswered: Using CDOSYS to send email - setting priority

    Hi,

    Im using a stored procedure to send an email using CDOSYS. Im using the code i got here
    http://support.microsoft.com/default...312839&sd=tech

    I can successfully send an email, but would like to know how i can add additional fields like setting the importance or priority of the how email. How would i change this stored procedure to do this.

    here is the code...


    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', 'MailServerName'

    -- 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
    go

  2. #2
    Join Date
    Sep 2004
    Posts
    7

    Unhappy

    It appears as though this is impossible, as i've in similar posts that no-one has applied.

  3. #3
    Join Date
    Dec 2002
    Posts
    1,245
    I don't know how to do it with CDOSYS. I use vbSendMail, which I register as a CCOM+ application and then wrap inside a T-SQL. vbSendMail is available for free from www.freevbcode.com; it's quite stable and the performance is quite good for what I do. It also has a parameter for setting the priority for the outbound message.

    Regards,

    hmscott
    Have you hugged your backup today?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •