Reputation: 77
I have a situation where I would like to change the font color of the specific values in a temp table while exporting to .html using progress 4gl.
Below is the program I wrote to output the values to .html file. Please help me to solve this.
OUTPUT TO VALUE ("JITS_UserMonitor\JITS_UserMonitor.html").
PUT UNFORMATTED "<TABLE
style=' border: 1px solid black;border-collapse: collapse;width:100%; font-family: arial, sans-serif;'>
<tr style='background-color: #dddddd; text-align: center' >
<th style=' border: 1px solid black;border-collapse: collapse;'>USER Name</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>USER Full Name</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>USER CREATE Date</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>USER LastLogin Date</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>Need Disable</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>Need DELETE</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>DISABLE Status</th>
<th style=' border: 1px solid black;border-collapse: collapse;'>LAST Logon Days</th>
</tr>
" SKIP.
FOR EACH tt_data WHERE tt_data.tt_needdisable EQ TRUE OR
tt_data.tt_needdelete EQ TRUE NO-LOCK BY tt_data.tt_days DESC:
PUT UNFORMATTED SUBSTITUTE (" <tr style = 'text-align: center'>
<td style=' border: 1px solid black;border-collapse: collapse;'>&1</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&2</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&3</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&4</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&5</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&6</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&7</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&8</td>
</tr>",
tt_data.tt_userid,
tt_data.tt_fullname,
tt_data.tt_createddate,
tt_data.tt_lastlogon,
tt_data.tt_needdisable,
tt_data.tt_needdelete,
tt_data.tt_disable,
tt_data.tt_days) SKIP.
END.
PUT UNFORMATTED "</TABLE>" SKIP.
OUTPUT CLOSE.
Upvotes: 0
Views: 331
Reputation: 8021
You can use IF
inside your statement. Something like this:
PUT UNFORMATTED 'This will output ' (IF TRUE THEN "something" ELSE "nothing").
That will output
This will output something
TRUE
can be changed to any check you want to.
However, since you use SUBSTITUTE
you could consider adding a variable for the color.
PUT UNFORMATTED SUBSTITUTE (" <tr style = 'text-align: center'>
<td style=' border: 1px solid black;border-collapse: collapse;color:&9;'>&1</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&2</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&3</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&4</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&5</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&6</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&7</td>
<td style=' border: 1px solid black;border-collapse: collapse;'>&8</td>
</tr>",
tt_data.tt_userid,
tt_data.tt_fullname,
tt_data.tt_createddate,
tt_data.tt_lastlogon,
tt_data.tt_needdisable,
tt_data.tt_needdelete,
tt_data.tt_disable,
tt_data.tt_days,
color
) SKIP.
And then your program needs to set the color variable based on whatever logic you need.
You could also match "normal" variables and the &-syntax of SUBSTITUTE:
DEFINE VARIABLE cColor AS CHARACTER NO-UNDO.
DEFINE VARIABLE iInt AS INTEGER NO-UNDO.
cColor = "black".
iInt = 12.
MESSAGE SUBSTITUTE("This is a color " + cColor + " and a number &1", iInt).
Upvotes: 0