|
qinlin195 发表于 2012-8-16 13:41 ![]()
能否将存错过程发我一份,学习学习!谢谢!邮箱:qinlin195@163.com
EXEC msdb.dbo.sp_send_dbmail
@profile_name = '事先在SQL中设置的邮件Profile',
@recipients = '收件人的邮箱',
@subject = 'Sales order generated notification',
@body = '邮件正文内容' ,
@execute_query_database = 'TESTDB',
@query = 'SELECT
LTRIM(RTRIM(CONVERT(NVARCHAR(10), T1.[DocDate], 120))) AS [Posting Date],
LTRIM(RTRIM(T1.[CardCode])) AS [Customer Code],
LTRIM(RTRIM(T1.[CardName])) AS [Customer Name],
LTRIM(RTRIM(T0.[DocEntry])) AS [Sales Order Number],
LTRIM(RTRIM(T2.[DocEntry])) AS [Draft Doc Number],
LTRIM(RTRIM(CAST(ROUND(T1.[DocTotal],2) AS DECIMAL(19,2)))) AS [Total Amount for Document],
LTRIM(RTRIM(CAST(LTRIM(RTRIM(CAST(ROUND(T1.[DiscPrcnt],4) AS DECIMAL(19,4)))) AS NVARCHAR(10))+ ''%'')) AS [Discount % for Document],
LTRIM(RTRIM(T0.[LineNum]+1)) AS [Row Number],
LTRIM(RTRIM(T0.[ItemCode])) AS [Item Code],
LTRIM(RTRIM(T3.[ItemName])) AS [Item Name],
LTRIM(RTRIM(T4.[ItmsGrpNam])) AS [Item Group Name],
LTRIM(RTRIM(CAST(ROUND(T0.[Quantity],2) AS DECIMAL(19,2)))) AS [Quantity],
LTRIM(RTRIM(CAST(ROUND(T0.[Price],2) AS DECIMAL(19,2)))) AS [Unit Price],
LTRIM(RTRIM(CAST(LTRIM(RTRIM(CAST(ROUND(T0.[DiscPrcnt],4) AS DECIMAL(19,4)))) AS NVARCHAR(10))+ ''%'')) AS [Discount % per Row]
FROM [dbo].[RDR1] T0
INNER JOIN [dbo].[ORDR] T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN [dbo].[ODRF] T2 ON T1.draftKey = T2.DocEntry
INNER JOIN [dbo].[OITM] T3 ON T0.ItemCode = T3.ItemCode
INNER JOIN [dbo].[OITB] T4 ON T3.ItmsGrpCod = T4.ItmsGrpCod
WHERE T1.[DocEntry] =
( SELECT TOP 1 DocEntry
FROM ORDR
ORDER BY DocEntry DESC )
ORDER BY T0.[DocEntry], T0.[LineNum]
',
@attach_query_result_as_file = 1,
@query_result_header = 1,
@query_result_width = 10240
可以在网上查一下 sp_send_dbmail 的各项参数意义,这个用起来还是很简单的。 |
|