Есть ли способ изменить цвет фона ячейки HTML-таблицы в электронном письме с SQL Server? - PullRequest
0 голосов
/ 22 января 2019

У меня есть код, который будет заполнять HTML-таблицу в электронном письме в SQL Server.Некоторые из полей являются полями даты.Я хочу создать оператор if, в котором говорится, что если срок выполнения - в течение последних 30 дней с сегодняшней даты, то цвет фона ячейки будет желтым.Если это происходит в течение последних 60 дней с сегодняшней даты, фон ячейки красный.Как бы я мог покрасить только одну клетку?

Set @TableTail = '</table></body></html>';
Set @TableHead = '<html><head>' +

                             '<style>' +

                  'td {border: padding-left:5px;padding-right:5px;padding-top:1px;padding-bottom:1px;font-size:11pt;} ' +

                  '</style>' +

                  '</head>' +

                  '<body><table cellpadding=0 cellspacing=0 border=0>' +

                  '<tr bgcolor=#FFEFD8><td align=left><b>Principal</b></td>' +

                  '<td align=left><b>Company</b></td>' +

                  '<td align=left><b>Action Item</b></td>' +

                  '<td align=left><b>Sales</b></td>' +

                             '<td align=left><b>Due Date</b></td>' +

                             '<td align=left><b>Updated</b></td>' +

                  '<td align=left><b>Owner</b></td></tr>';

    DECLARE @CNT as int, @SLS as NVARCHAR(10)
    select  [employeeid], [Sales], [Email Address]
    into #loctempemployee from tblEmployees  

    Set @CNT =  (Select COUNT (Distinct EmployeeID) from #loctempemployee)
           While (@CNT > 0) 

             begin

                Set @message=
                    (
                    SELECT tr.Principal As [TD], tr.[Company Name] As [TD], ai.[Action Item] As [TD], ai.Owners As [TD], LEFT((ai.[Due Date]),10) As [TD], LEFT((ai.Updated),10) As [TD], em.Sales As [TD]
                    FROM [tblActionItem] ai
                    INNER JOIN tblTripReport tr ON ai.TripReportID = tr.tripreportID
                    INNER JOIN tblCustomers cu ON cu.CustomerID = tr.[Customer ID]
                    INNER JOIN tblEmployees em ON em.EmployeeID = cu.EmployeeID
                    WHERE em.Sales = (Select sales from #loctempemployee Where EmployeeID = (Select top 1 EmployeeID from #loctempemployee))
                    For XML raw('tr'), Elements
                    )





                Select @Body = (@message)




                Set @Body = Replace(@Body, '_x0020_', space(1))

                Set @Body = Replace(@Body, '_x003D_', '=')

                Set @Body = Replace(@Body, '<tr><TRRow>1</TRRow>', '<tr bgcolor=#C6CFFF>')

                Set @Body = Replace(@Body, '<TRRow>0</TRRow>', '')



                Select @Body = @TableHead + @Body + @TableTail
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...