0

我有以下发送数据库邮件的 tsql。这适用于一个格式异常。生成的最后两行在电子邮件正文中没有换行符或回车符。数据类型分别为 varchar(255) 和 varchar(300)。

我已经尝试过使用和不使用演员表,并且我已经分别和一起尝试了 CHAR(10)、CHAR(13)。

为什么最后两个不分成单独的行?

  DECLARE  @errMsg VARCHAR(max)

  -- review edit fact UMDNSID values and catch orphans with out parents in CategoryList
  select @errMsg = 

  '====================================================================' + char(10) + 
  'Orphan UMDNSID: ' + cast(ef.umdnsid as varchar(50)) + char(10) + 
   'Edit Fact VendorItemID: ' + cast(ef.vendoritemid as varchar(50)) + char(10) + 
   'Current VendorItem UMDNSID: ' + cast(ip.umdnsid as varchar(50)) + char(10) + 
   'Current VendorItem Category: ' + ipcl.categoryname + char(10) + 
   'Item Description: ' + ef.LongDescription + char(10) + char(13)

  from EditFact ef
  join itemprovider ip
  on ef.vendoritemid = ip.itemprovider_pk
  join categorylist ipcl
  on ipcl.umdnsid = ip.umdnsid
  where 1=1
  AND editstatusid = 0
  AND settled is null 
  AND ef.UMDNSID not in (
        select umdnsid from categorylist)

EXEC dbo.ProcessFile_SendMail @ProcessFile_id=0, @Subject='Orphan UMDNSID', @Message=@errMsg, @To='someone@email.com';

电子邮件正文最终如下所示,我希望您看到 ** 的新行。

Orphan UMDNSID:27854
编辑事实 VendorItemID:4654178
当前 VendorItem UMDNSID:99936
当前 VendorItem 类别:定制包 **项目描述:TRAY CARDIAC CATH CUSTOM

4

1 回答 1

1

如果这是最后的答案

测试打印(@errMsg)。
问题可能出在 ProcessFile_SendMail 中。

于 2013-10-25T15:21:39.877 回答