Невозможно заполнить таблицу HTML, сгенерированную из SQL Server, в почте Outlook. - PullRequest
0 голосов
/ 12 января 2019

Я пытаюсь выполнить запрос в SQL Server, чтобы сгенерировать данные в табличном формате и добавить теги html, чтобы при записи вывода этого сообщения в почту он генерировал данные в табличном формате. Сгенерированный HTML-код работает правильно, когда я сохраняю его в файл .html и открываю в браузере. Но это просто показано в виде простого текста с HTML-кодом в почте. Пожалуйста помоги!!

Ниже приведена функция, которую я создал в SQL Server. Я отправляю вывод, который будет отображаться в электронной почте с помощью инструмента Markit EDM.

CREATE FUNCTION dbo.<Function_Name> ()
RETURNS VARCHAR(max)
AS   
BEGIN
    DECLARE @xml NVARCHAR(MAX)
    DECLARE @body NVARCHAR(MAX)

    SET @xml = CAST((SELECT <Column1> AS 'td','', <Column2> AS 'td', '', <Column3> AS 'td'
                     FROM <table Name>
                     FOR XML PATH('tr'), ELEMENTS ) AS NVARCHAR(MAX))

    SET @body ='<html><body><H3>Contact Info</H3>
                <table border =1>
                <tr>
                   <th> Solution Name </th> 
                   <th> Start Time </th> 
                   <th> Run Time </th></tr>'    

    SET @body = @body + @xml +'</table></body></html>'

    RETURN @Body
END

Ожидаемый результат (в табличном формате)

<html><body><H3>Contact Info</H3>
<table border=1>
<tr>
<th> Solution Name </th>
 <th> Start Time </th> 
 <th> Run Start </th>
</tr>
 <tr>
 <td>Test maxrun Solution</td>
 <td>2019-01-11T11:58:48.077</td>
 <td>00:00:00</td>
 </tr>
 <tr>
 <td>Test maxrun Solution1</td>
 <td>2019-01-09T10:12:21.643</td>
 <td>01:46:26</td>
 </tr>
 <tr>
 <td>Test maxrun Solution2</td>
 <td>2018-12-28T14:50:16.270</td>
 <td>21:08:32</td>
 </tr>
 </table>
 </body>
 </html>

Фактический результат в почте просто отображает текст в формате HTML вместо таблицы.

<html><body><H3>Contact Info</H3>
<table border=1>
<tr>
<th> Solution Name </th>
 <th> Start Time </th> 
 <th> Run Start </th>
</tr>
 <tr>
 <td>Test maxrun Solution</td>
 <td>2019-01-11T11:58:48.077</td>
 <td>00:00:00</td>
 </tr>
 <tr>
 <td>Test maxrun Solution1</td>
 <td>2019-01-09T10:12:21.643</td>
 <td>01:46:26</td>
 </tr>
 <tr>
 <td>Test maxrun Solution2</td>
 <td>2018-12-28T14:50:16.270</td>
 <td>21:08:32</td>
 </tr>
 </table>
 </body>
 </html>
...