0
我正在創建一份報告,以便每天發送。在其中一個欄中,我有與銷售訂單關聯的所有物料編號的字符串(因此一個銷售訂單可能包含多個物料編號)。商品編號字符串由','分隔。爲了能夠做到這一點,我使用了Select語句,其中訂單號相同,用於STUFF中的XML PATH('')。TSQL通過電子郵件消息在單元格中返回
在生成了我的數據的臨時表後,我正在發送數據的電子郵件。我在@mailmsg中使用HTML格式設置表併發送它。我的問題是,當電子郵件發送列的所有項目編號都在同一行,我需要他們軟返回到一個新行(但同一單元格)。
我試圖在我的STUFF函數中使用CHAR(10)和CHAR(13)以否爲準。
有什麼建議嗎?下面是我的代碼爲我的東西進入我的臨時表:
UPDATE @SOTable
Set PODetails = STUFF((
Select ', PONumber: ' + CAST(PONum AS VARCHAR),
', POQty: ' + CAST(POQty AS VARCHAR)
From @POTable
Where SONo = PONo
FOR XML PATH('')
),1, 1, '')
那麼對於我的郵件後,我填寫的表頭的數據做到這一點:
CAST ((
select
(convert(varchar(8), SO.SONum)) as [TD align=center], '',
(CONVERT(varchar(8), SO.SOItmNo)) as [TD align=center], '',
td = (ltrim(rtrim(SO.SODesc))), '',
(convert(varchar(8), SO.SONSN)) as [TD align=center], '',
CONVERT(varchar(8), SO.SOSRNo)as [TD align=center], '',
convert(varchar(3), SO.SOSRQty)as [TD align=center], '',
convert(varchar(3), SO.SOUOM)as [TD align=center], '',
CAST(convert(varchar, SO.SODate, 101) AS VARCHAR) as [TD align=center], '',
td = SO.PODetails
from @SOTable SO
order by SO.SODate
for XML RAW('tr'), ELEMENTS
) as nvarchar(max))
如果電子郵件的內容,如果HTML,你需要一個''
標籤,而不是'CHAR(10)+ CHAR(13)'。 –
我試過把'
'放在東西里,它沒有工作 –