私は、sp_send_dbmailストアドプロシージャを使用してOutlookに電子メールで送信されるHTMLテーブルにSQLサーバークエリ出力を書式設定しています。問題は、 "table style =" table-layout:fixed "と" td width = "xx" "プロパティは無視され、列幅はヘッダータイトルではなく最初の行にあるデータの内容によって異なります。 。以下のHTML出力のSQLサーバー結果内電子メールSQLサーバーHTMLテーブルの固定列幅が必要
Column Widths for Person 1's Data
対
Column Widths for Person's 2 Data
印刷する@ body_with_data2::次の出力は、(最も容易に目に見える柱4で)この歪みを示し
わずかに変化しない関連するOutlookの電子メールの送信元のHTMLコードを表示する<div style="color:Black; font-size:11pt; font-family:Calibri; width:100px;">
<html>
<head>
<style>
td {
border: solid black 1px;
padding-left: 5px;
padding-right: 5px;
padding-top: 1px;
padding-bottom: 1px;
font-size: 11pt;
}
</style>
</head>
<body>
<div style="margin-top:20px; margin-left:5px; margin-bottom:15px; font-weight:bold; font-size:1.3em; font-family:calibri;">Title Person Name 2</div>
<div style="margin-left:5px; font-family:Calibri;">
<table style="table-layout:fixed;" width="100%" cellpadding=0 cellspacing=0 border=0>
<tr bgcolor=#4b6c9e>
<td width="60" align=center><font face="calibri" color=White><b>Column 1 Header Name</b></font></td>
<td width="120" align=center><font face="calibri" color=White><b>Column 2 Header Name</b></font></td>
<td width="120" align=center><font face="calibri" color=White><b>Column 3 Header Name</b></font></td>
<td width="375" align=center><font face="calibri" color=White><b>Column 4 Header Name</b></font></td>
<td width="175" align=center><font face="calibri" color=White><b>Column 5 Header Name</b></font></td>
<td width="175" align=center><font face="calibri" color=White><b>Column 6 Header Name</b></font></td>
<td width="175" align=center><font face="calibri" color=White><b>Column 7 Header Name</b></font></td>
</tr>
<tr bgcolor=#EEEEF4>
<td align=center><font face="calibri"><a href="http://linktoIDs.com/7604/">7604</a></font></td>
<td align=center><font face="calibri">Test Person 1</font></td>
<td align=center><font face="calibri">01/01/2017</font></td>
<td align=center><font face="calibri">Test Description Test Description Test Description</font></td>
<td align=center><font face="calibri"></font></td>
<td align=center><font face="calibri">Test Description 2</font></td>
<td align=center><font face="calibri">Test Description 3</font></td>
</tr>
</table>
</div>
</body>
</html>
</div>
:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><div style="color:Black; font-size:11pt; font-family:Calibri; width:100px;"><html><head><style>td {border: solid black 1px;padding-left:5px;padding-right:5px;padding-top:1px;padding-bottom:1px;font-size:11pt;} </style></head><body><div style="margin-top:20px; margin-left:5px; margin-bottom:15px; font-weight:bold; font-size:1.3em; font-family:calibri;">Title Person Name 2</div><div style="margin-left:5px; font-family:Calibri;"><table style="table-layout:fixed;" width="100%" cellpadding="0" cellspacing="0" border="0"><tr bgcolor="#4b6c9e"><td width="60" align="center"><font face="calibri" color="White"><b>Column 1 Header Name</b></font></td><td width="120" align="center"><font face="calibri" color="White"><b>Column 2 Header Name</b></font></td><td width="120" align="center"><font face="calibri" color="White"><b>Column 3 Header Name</b></font></td><td width="375" align="center"><font face="calibri" color="White"><b>Column 4 Header Name</b></font></td><td width="175" align="center"><font face="calibri" color="White"><b>Column 5 Header Name</b></font></td><td width="175" align="center"><font face="calibri" color="White"><b>Column 6 Header Name</b></font></td><td width="175" align="center"><font face="calibri" color="White"><b>Column 7 Header Name</b></font></td></tr><tr bgcolor="#EEEEF4"><td align="center"><font face="calibri"><a href="http://linktoIDs.com/7604/">7604</a></font></td><td align="center"><font face="calibri">Test Person 1</font></td><td align="center"><font face="calibri">01/01/2017</font></td><td align="center"><font face="calibri">Test Description Test Description Test Description</font></td><td align="center"><font face="calibri"></font></td><td align="center"><font face="calibri">Test Description 2</font></td><td align="center"><font face="calibri">Test Description 3</font></td></tr></table></div></body></html></div>
削除幅= "100%" の問題を解決していません。関連するHTML出力は以下lsitedさ:事前に定義されたサイズに列幅を設定する方法についての
<div style="color:Black; font-size:11pt; font-family:Calibri; width:100px;"><html><head><style>
td {
border: solid black 1px;
padding-left:5px;
padding-right:5px;
padding-top:1px;
padding-bottom:1px;
font-size:11pt;
}
</style></head><body>
<div style="margin-top:20px; margin-left:5px; margin-bottom:15px; font-weight:bold; font-size:1.3em; font-family:calibri;">Title Person Name 2</div>
<div style="margin-left:5px; font-family:Calibri;">
<table style="table-layout:fixed;" cellpadding=0 cellspacing=0 border=0>
<tr bgcolor=#4b6c9e>
<td width="60" align=center><font face="calibri" color=White><b>Column 1 Header Name</b></font></td>
<td width="120" align=center><font face="calibri" color=White><b>Column 2 Header Name</b></font></td>
<td width="120" align=center><font face="calibri" color=White><b>Column 3 Header Name</b></font></td>
<td width="375" align=center><font face="calibri" color=White><b>Column 4 Header Name</b></font></td>
<td width="175" align=center><font face="calibri" color=White><b>Column 5 Header Name</b></font></td>
<td width="175" align=center><font face="calibri" color=White><b>Column 6 Header Name</b></font></td>
<td width="175" align=center><font face="calibri" color=White><b>Column 7 Header Name</b></font></td>
</tr>
<tr bgcolor=#EEEEF4>
<td align=center><font face="calibri"><a href="http://linktoIDs.com/7604/">7604</a></font></td>
<td align=center><font face="calibri">Test Person 1</font></td>
<td align=center><font face="calibri">01/01/2017</font></td>
<td align=center><font face="calibri">Test Description</font></td>
<td align=center><font face="calibri"></font></td>
<td align=center><font face="calibri">Test Description 2</font></td>
<td align=center><font face="calibri">Test Description 3</font></td>
</tr>
</table>
</div>
何かアドバイスははるかに高く評価されるだろう。クエリの関連部分が下にコピーされます。
IF(EXISTS(SELECT ID FROM #TEMP2))
BEGIN
set @textTitle = 'Title'[email protected]_NAME
set @body_with_data2 = '<html><head><style>' +
'td {border: solid black 1px;padding-left:5px;padding-right:5px;padding-top:1px;padding-bottom:1px;font-size:11pt;} ' +
'</style></head><body>' +
'<div style="margin-top:20px; margin-left:5px; margin-bottom:15px; font-weight:bold; font-size:1.3em; font-family:calibri;">' +
@textTitle + '</div>' +
'<div style="margin-left:5px; font-family:Calibri;"><table style="table-layout:fixed;" width="100%" cellpadding=0 cellspacing=0 border=0>' +
'<tr bgcolor=#4b6c9e>' +
'<td width="60" align=center><font face="calibri" color=White><b>Column 1 Header Name</b></font></td>' +
'<td width="120" align=center><font face="calibri" color=White><b>Column 2 Header Name</b></font></td>' +
'<td width="120" align=center><font face="calibri" color=White><b>Column 3 Header Name</b></font></td>' +
'<td width="375" align=center><font face="calibri" color=White><b>Column 4 Header Name</b></font></td>' +
'<td width="175" align=center><font face="calibri" color=White><b>Column 5 Header Name</b></font></td>' +
'<td width="175" align=center><font face="calibri" color=White><b>Column 6 Header Name</b></font></td>' +
'<td width="175" align=center><font face="calibri" color=White><b>Column 7 Header Name</b></font></td></tr>'
set @body=''
select @body =
(
select ROW_NUMBER() over(order by [ID]) % 2 as TRRow,
td = CAST('<a href="' + 'http://linktoIDs.com/' + CAST([ID] AS varchar(10)) + '/">'+CAST([ID] AS varchar(10))+'</a>' AS XML),
td = [Col_2_Data],
td = [Col_3_Data],
td = [Col_4_Data],
td = [Col_5_Data],
td = [Col_6_Data],
td = [Col_7_Data]
FROM #TEMP2
ORDER BY [ID] DESC
for XML raw('tr'), elements
)
set @body = REPLACE(@body, '<td>', '<td align=center><font face="calibri">')
set @body = REPLACE(@body, '</td>', '</font></td>')
set @body = REPLACE(@body, '_x0020_', space(1))
set @body = Replace(@body, '_x003D_', '=')
set @body = Replace(@body, '<tr><TRRow>0</TRRow>', '<tr bgcolor=#F8F8FD>')
set @body = Replace(@body, '<tr><TRRow>1</TRRow>', '<tr bgcolor=#EEEEF4>')
set @body = Replace(@body, '<TRRow>0</TRRow>', '')
set @body_with_data2 = @body_with_data2 + @body + '</table></div></body></html>'
set @body_with_data2 = '<div style="color:Black; font-size:11pt; font-family:Calibri; width:100px;">' + @body_with_data2 + '</div>'
END
あなたは、出力HTMLの例を提供することができれば、それは、応答のためのおかげで役立つ –
ジョン・Pだろう!上記の更新された質問の画像を参照してください。列1のリンクを除いて、ヘッダー名以下の行データはすべてテキストで構成されます。 – SQLDev
HTML **コード**は我々が後にしているものです。画像が参考になります、HTMLはもっとそうです。 –