September 15, 2013 at 3:42 am
Hi All,
For the last several days I'm trying to resolve issue with sending emails by following procedure (I've ommited some parts):
DECLARE
[...]
@productvarchar(64),
@Subjvarchar(255),
[...]
SELECT @Subj = 'New ' + @ListType + ' Release in ''' + @product + ' ' + @Country + ''' ' + @StatusChange
[...]
EXEC msdb.dbo.sp_send_dbmail
@recipients= @EMail,
@copy_recipients= @CCMail,
@subject= @Subj
[...]
If in @product variable is whitespace (from query from other table) i.e oranges (white) the email is not being sent with error message as follow:
"The mail could not be sent to the recipients because of the mail server failure. (Sending Mail using Account Exception Message: Cannot send mails to mail server. (The specified string is not in the form required for a subject.).)". It seems that the message cannot be sent if there is a whitespace in the variable, but on the other hand if I change query:
SELECT @Subj = 'New ' + @ListType + ' Release in ''' + ' oranges (white) ' + ' ' + @Country + ''' ' + @StatusChange
No problem with sending email. Also if I assign the string directy to @subject there is no issue with sending emails too. If there is not white spaces in variable @product everything is working fine...
I've already tried several different approaches to resolve that issue but still no success (and reviewed a tons of entries on different forums...):
1. On one of the forums I found to check SQLAgent entry regarding account for sending email - didn't resolve the issue
2. Restarting server/services - didn't help
3. Do a cast on @product variable Cast(@product as CHAR(25)) the same issue occures
4. Assign the @subj variable to different variable and the latter one use as the @subject - didn't help
OS: win 2008 std x86
SQL: 2008 std x86 (with all current updates)
Messaging server: Exchange 2010 (with all current sp's and updates)
Telnet: working fine...
No problem to send test email. No other issues from SQL end...
Thanks for Your help on that!
Best Regards,
Tomasz
September 15, 2013 at 8:42 pm
What are you calling "whitespace"? Precisely what is in the variable when you get the error? Is it a NULL?
--Jeff Moden
Change is inevitable... Change for the better is not.
September 16, 2013 at 4:58 am
i will second Jeff here. Do the NULL handling in all the vairables (ISNULL(@variable, ''))
Also Before sendin it to DBmail
Print the Text for @Subj = 'New ' + @ListType + ' Release in ''' + @product + ' ' + @Country + ''' ' + @StatusChange
and copy it to Notepad. See if you can smell soething fishy there (Any special character or EXTRA White spaces )
-------Bhuvnesh----------
I work only to learn Sql Server...though my company pays me for getting their stuff done;-)
Viewing 4 posts - 1 through 3 (of 3 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