Is it possible in WF8 to format the background color of a cell based on the value of another cell.
Ex: TBLMSTR_MESSAGES contains two columns: MSSGNBR and MESSAGE. We want to Print the MESSAGE on a report but have the background color be GREEN if MSSGNBR=1 and red if MSSGNBR = 2. Can this be done?
How would I alter this code?
TABLE FILE TBLMSTR_MESSAGES PRINT TBLMSTR_MESSAGES.TBLMSTR_MESSAGES.MESSAGE ON TABLE SET PAGE-NUM NOLEAD ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty, $ TYPE=TITLE, COLUMN=N1, BACKCOLOR='GREEN', $ TYPE=REPORT, COLUMN=N1, WRAP=6.000000, $ ENDSTYLE ENDThis message has been edited. Last edited by: RobertF,
Give me code, or give me retirement. In FOCUS since 1991
Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
April 29, 2015, 10:24 AM
RobertF
trying similar stuff...no effect?
DEFINE FILE TBLMSTR_MESSAGES CONDSW/A1=IF MSGNBR EQ '2' THEN '1' ELSE '0'; END
TABLE FILE TBLMSTR_MESSAGES PRINT TBLMSTR_MESSAGES.TBLMSTR_MESSAGES.MESSAGE ON TABLE SET PAGE-NUM NOLEAD ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty, $ TYPE=DATA, COLUMN=MESSAGE, BACKCOLOR=GREEN, WHEN=CONDSW EQ 1, $ TYPE=DATA, COLUMN=MESSAGE, BACKCOLOR=RED , WHEN=CONDSW EQ 2, $ TYPE=REPORT, COLUMN=N1, WRAP=6.000000, $ ENDSTYLE END
DEFINE FILE TBLMSTR_MESSAGES CONDSW/A1=IF MSGNBR EQ '2' THEN '1' ELSE '0'; END
TABLE FILE TBLMSTR_MESSAGES PRINT TBLMSTR_MESSAGES.TBLMSTR_MESSAGES.MESSAGE ON TABLE SET PAGE-NUM NOLEAD ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * TYPE=DATA, COLUMN=MESSAGE, BACKCOLOR=GREEN, WHEN=CONDSW EQ '1', $ TYPE=DATA, COLUMN=MESSAGE, BACKCOLOR=RED , WHEN=CONDSW EQ '0', $ INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty, $ ENDSTYLE END
WebFOCUS 8206.08 Windows, All Outputs
April 29, 2015, 10:51 AM
Francis Mariani
You have to specify the column that is used in the report WHEN clause :
DEFINE FILE TBLMSTR_MESSAGES
CONDSW/A1=IF MSGNBR EQ '2' THEN '1' ELSE '0';
END
TABLE FILE TBLMSTR_MESSAGES
PRINT
TBLMSTR_MESSAGES.TBLMSTR_MESSAGES.MESSAGE
CONDSW NOPRINT
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT HTML
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
TYPE=DATA, COLUMN=MESSAGE, BACKCOLOR=GREEN, WHEN=CONDSW EQ '1', $
TYPE=DATA, COLUMN=MESSAGE, BACKCOLOR=RED , WHEN=CONDSW EQ '0', $
INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty,
$
ENDSTYLE
END
This message has been edited. Last edited by: Francis Mariani,
Francis
Give me code, or give me retirement. In FOCUS since 1991
Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
April 29, 2015, 10:51 AM
Wep5622
You need to also PRINT CONDSW.
WebFOCUS 8.1.03, Windows 7-64/2008-64, IBM DB2/400, Oracle 11g & RDB, MS SQL-Server 2005, SAP, PostgreSQL 11, Output: HTML, PDF, Excel 2010 : Member of User Group Benelux :