As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.
Join the TIBCO Community TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.
From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
Request access to the private WebFOCUS User Group (login required) to network with fellow members.
Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.
I have issue to load the background color in image column. Image column have some condition; so based on the 1st condition only images has to load!
in next condition we have to load the back-color based on the condition that-to different column which is not image condition!
DEFINE FILE CAR
IMG_INC/A50 = 'icon_in.gif';
END
TABLE FILE CAR
PRINT
COUNTRY MPG
COMPUTE MPG_IMG/A10 = IF (MPG GT 0 AND MPG LE 10) THEN 'ORANGE' ELSE IF (MPG GT 11 AND MPG LE 20) THEN 'GREEN' ELSE IF (MPG GT 21) THEN 'BLUE' ELSE '';
COMPUTE COL/A10 = IF MPG_IMG EQ 'GREEN' THEN 'Y' ELSE 'N';
COMPUTE COUNTRYA/A50 = IF MPG_IMG EQ 'GREEN' THEN IMG_INC ELSE '';
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLEMBEDIMG ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,SQUEEZE=ON,PAGESIZE='Letter',ORIENTATION=LANDSCAPE,$
TYPE=REPORT,HEADALIGN=BODY,FONT='ARIAL', SIZE=9,LEFTGAP=0.02, RIGHTGAP=0.02, $
TYPE=DATA,BACKCOLOR=('WHITE' RGB(197 217 241)),JUSTIFY=CENTER,BORDER-TOP=LIGHT, BORDER-BOTTOM=LIGHT, BORDER-LEFT=LIGHT, BORDER-RIGHT=LIGHT, BORDER-TOP-STYLE=SOLID, BORDER-BOTTOM-STYLE=SOLID, BORDER-LEFT-STYLE=SOLID,BORDER-RIGHT-STYLE=SOLID,$
TYPE=DATA,COLUMN=COUNTRYA, IMAGE=(IMG_INC),SIZE=(0.10 0.1),JUSTIFY=RIGHT,WHEN = MPG_IMG EQ 'GREEN',$
[B] -*TYPE=DATA, COLUMN=COUNTRYA, BACKCOLOR=RED, WHEN = MPG_IMG EQ 'GREEN',$
TYPE=DATA, COLUMN=COUNTRYA, BACKCOLOR=RED, WHEN = COL EQ 'Y',$
[/B]
ENDSTYLE
END
-EXIT
Please let me your thoughts!!
Thanks in Advance
Regards, Dev (8105M)This message has been edited. Last edited by: Dev,
Not sure to understand what you're attempting to accomplish.
When I run your code I have red background behind image and this only for rows where MPG_IMG = 'GREEN'. The only thing that doesn't have any effect it the right justify.
DEFINE FILE CAR
IMG_INC/A50 = 'icon_in.gif';
END
TABLE FILE CAR
PRINT COUNTRY MPG
COMPUTE MPG_IMG /A10 = IF (MPG GT 0 AND MPG LE 10) THEN 'ORANGE' ELSE IF (MPG GT 11 AND MPG LE 20) THEN 'GREEN' ELSE IF (MPG GT 21) THEN 'BLUE' ELSE '';
COMPUTE COUNTRYA /A50 = IF MPG_IMG EQ 'GREEN' THEN IMG_INC ELSE '';
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLEMBEDIMG ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
SQUEEZE=ON,
PAGESIZE='Letter',
ORIENTATION=LANDSCAPE,
$
TYPE=REPORT,
HEADALIGN=BODY,
FONT='ARIAL',
SIZE=9,
LEFTGAP=0.02,
RIGHTGAP=0.02, $
TYPE=DATA,
BACKCOLOR=('WHITE' RGB(197 217 241)),
JUSTIFY=CENTER,
BORDER=LIGHT,
BORDER-STYLE=SOLID,
$
TYPE=DATA,
COLUMN=COUNTRYA,
JUSTIFY=RIGHT,
IMAGE=(IMG_INC),
SIZE=(0.1 0.1),
POSITION=(+10.00 +0.00),
WHEN = MPG_IMG EQ 'GREEN',
$
TYPE=DATA,
COLUMN=COUNTRYA,
JUSTIFY=RIGHT,
BACKCOLOR=RED,
WHEN = MPG_IMG EQ 'GREEN',
$
ENDSTYLE
END
Can you share an image or sample of what your are attempting to have as result ?
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
1- MPG_IMG /A10 = IF (MPG GT 0 AND MPG LE 10) THEN 'ORANGE' ELSE IF (MPG GT 11 AND MPG LE 20) THEN 'GREEN' ELSE IF (MPG GT 21) THEN 'BLUE' ELSE '';
2- COL /A10 = IF MPG_IMG EQ 'GREEN' THEN 'Y' ELSE 'N';
Where you try to apply differently :
TYPE=DATA, COLUMN=COUNTRYA, BACKCOLOR=RED, WHEN = MPG_IMG EQ 'GREEN',$
TYPE=DATA, COLUMN=COUNTRYA, BACKCOLOR=RED, WHEN = COL EQ 'Y',$
But in fact it's the SAME condition. When Col EQ 'Y' it's because MPG_IMG EQ 'GREEN'. So the image will be displayed in COUNTRYA when MPG_IMG EQ 'GREEN' (or Col EQ 'Y') and the cell background of COUNTRYA will be Red when Col EQ 'Y' (or MPG_IMG EQ 'GREEN').
As I put in my sample, the way you've defined your condition you can either use :
WHEN = MPG_IMG EQ 'GREEN',
or
WHEN = COL EQ 'Y',
it's the same thing since they result from the same condition but with a different way to express the result.
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
I have issue to load the background color in image column. Image column have some condition; so based on the 1st condition only images has to load!
in next condition we have to load the back-color based on the condition that-to different column which is not image condition!
Try Below mentioned code ,
This code will display image to "COUNTRYA" Column if Col EQ 'Y' else it will display "COUNTRYA" column blank having Red background
DEFINE FILE CAR
IMG_INC/A50 = 'icon_in.gif';
END
TABLE FILE CAR
PRINT
COUNTRY
MPG
COMPUTE MPG_IMG/A10 = IF (MPG GT 0 AND MPG LE 10) THEN 'ORANGE' ELSE IF (MPG GT 11 AND MPG LE 20) THEN 'GREEN' ELSE IF (MPG GT 21) THEN 'BLUE' ELSE '';
COMPUTE COL/A10 = IF MPG_IMG EQ 'GREEN' THEN 'Y' ELSE 'N';
COMPUTE COUNTRYA/A50 = IF MPG_IMG EQ 'GREEN' THEN IMG_INC ELSE '';
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLEMBEDIMG ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,SQUEEZE=ON,PAGESIZE='Letter',ORIENTATION=LANDSCAPE,$
TYPE=REPORT,HEADALIGN=BODY,FONT='ARIAL', SIZE=9,LEFTGAP=0.02, RIGHTGAP=0.02, $
TYPE=DATA,BACKCOLOR=('WHITE' RGB(197 217 241)),JUSTIFY=CENTER,BORDER-TOP=LIGHT, BORDER-BOTTOM=LIGHT, BORDER-LEFT=LIGHT, BORDER-RIGHT=LIGHT, BORDER-TOP-STYLE=SOLID, BORDER-BOTTOM-STYLE=SOLID, BORDER-LEFT-STYLE=SOLID,BORDER-RIGHT-STYLE=SOLID,$
TYPE=DATA, COLUMN = N5, BACKCOLOR=RED, WHEN = COL EQ 'N',$
TYPE=DATA,COLUMN=COUNTRYA, IMAGE=(IMG_INC),SIZE=(0.10 0.1),JUSTIFY=RIGHT, $
ENDSTYLE
END
-EXIT
I have two different condition need to apply in single column. 1. Display the image(Icon) before the code column whenever the flag is 'Y' 2. change the backcolor to red in code column whenever the value is LT 80;
This is what I am trying now.
I loaded the image based on the condition and the backcolor.
Issue is if the image is present in the column can't able to load the backcolor? Don't know why the backcolor is not loading if image is present. While loading image. I created a dummy column before the code and load the images based on the flag and backcolor both columns!
Code Flag Value
CUEQB Y 75
FQCCB Y 75
GQ6KA Y 75
CF33V Y 76
CF33M Y 77
EH0EA N 77
GE9HA N 77
B556V Y 78
C7E3F Y 78
C83HA Y 78
C83HF Y 78
C83HT Y 78
C83HV Y 78
CF33G Y 78
CUEQD Y 78
CXEYC Y 78
CXEYE Y 78
DZL7D Y 78
DZL7S Y 78
EM2BB Y 78
EQ9GM Y 78
FTR5A N 78
GQ6KD Y 78
R5FPJ Y 78
T5BVG Y 78
T5BVH Y 78
T5BVK Y 78
C7E3A Y 83
Hope now it will make sense?This message has been edited. Last edited by: Dev,
In my sample I'm using MACRO instead of WHEN in the styling. I personally prefer MACRO since you don't need to repeat the condition (X EQ Y) several times. So if the condition change there is only one place to modify.
DEFINE FILE CAR
IMG /A5 = ' ';
IMG_INC/A50 = 'dot_blue.gif';
END
TABLE FILE CAR
SUM SEATS
RETAIL_COST
IMG_INC NOPRINT
BY IMG AS ''
BY COUNTRY
BY CAR
BY MODEL
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLEMBEDIMG ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
SQUEEZE=ON,
PAGESIZE='Letter',
ORIENTATION=LANDSCAPE,
$
DEFMACRO=DSP_IMG,
MACTYPE=RULE,
WHEN = SEATS LT 5,
$
DEFMACRO=BACK_RED,
MACTYPE=RULE,
WHEN = RETAIL_COST GT 10000,
$
TYPE=REPORT,
HEADALIGN=BODY,
FONT='ARIAL',
SIZE=9,
$
TYPE=DATA,
BACKCOLOR=('WHITE' RGB(197 217 241)),
JUSTIFY=CENTER,
BORDER=LIGHT,
BORDER-STYLE=SOLID,
$
TYPE=DATA,
COLUMN=IMG,
IMAGE=(IMG_INC),
SIZE=(0.1 0.1),
POSITION=(+10.00 +0.00),
MACRO=DSP_IMG,
$
TYPE=DATA,
COLUMN=MODEL,
BACKCOLOR=RED,
MACRO=BACK_RED,
$
ENDSTYLE
END
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
We have to display only image and no background color.
if the flag is 'Y' we have show the image right, so instead of concatenating both image and code in single column. I created one more before the code and hide the borders. so from user perspective it will show as a single image.
I don't know how to image in this forum. otherwise I will share my output to you!
Originally posted by MartinY: Is that what you're looking for ?
In my sample I'm using MACRO instead of WHEN in the styling. I personally prefer MACRO since you don't need to repeat the condition (X EQ Y) several times. So if the condition change there is only one place to modify.
MartinY - As per your code; Red highlighted in Model column is correct and also we need to highlight the same rows in image back-color! Whenever the model record is highlighted we have to change the back-color in image column as well!
I don't think that you'll be able to perform what you're looking for : red background behind IMG cell when MODEL is red. It's either the image or the background, cannot have both in this case.
What I suggest is to have two different images displayed according to the condition.
In my sample, MODEL will be red background when RETAIL_COST over 10K and display a red image instead of the blue when the image should be displayed.
DEFINE FILE CAR
IMG /A5 = ' ';
IMG_INC/A50 = IF RETAIL_COST GT 10000 THEN 'dot_red.gif' ELSE 'dot_blue.gif';
END
TABLE FILE CAR
SUM SEATS
RETAIL_COST
IMG_INC NOPRINT
BY IMG AS ''
BY COUNTRY
BY CAR
BY MODEL
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLEMBEDIMG ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
SQUEEZE=ON,
PAGESIZE='Letter',
ORIENTATION=LANDSCAPE,
$
DEFMACRO=DSP_IMG,
MACTYPE=RULE,
WHEN = SEATS LT 5,
$
DEFMACRO=BACK_RED,
MACTYPE=RULE,
WHEN = RETAIL_COST GT 10000,
$
TYPE=REPORT,
HEADALIGN=BODY,
FONT='ARIAL',
SIZE=9,
$
TYPE=DATA,
BACKCOLOR=('WHITE' RGB(197 217 241)),
JUSTIFY=CENTER,
BORDER=LIGHT,
BORDER-STYLE=SOLID,
$
TYPE=DATA,
COLUMN=IMG,
IMAGE=(IMG_INC),
SIZE=(0.1 0.1),
POSITION=(+10.00 +0.00),
MACRO=DSP_IMG,
$
TYPE=DATA,
COLUMN=MODEL,
BACKCOLOR=RED,
MACRO=BACK_RED,
$
ENDSTYLE
END
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
It is possible, BUT the STYLING order is VERY IMPORTANT !!
You NEED to perform DBL_COND conditional styling BEFORE doing DSP_IMG conditional styling.
DEFINE FILE CAR
IMG /A5 = ' ';
IMG_INC/A50 = IF RETAIL_COST GT 10000 THEN 'dot_yellow.gif' ELSE 'dot_blue.gif';
END
TABLE FILE CAR
SUM SEATS
RETAIL_COST
IMG_INC NOPRINT
COMPUTE DBL_CND /A1 = IF SEATS LT 5 AND RETAIL_COST GT 10000 THEN 'Y' ELSE 'N'; NOPRINT
BY IMG AS ''
BY COUNTRY
BY CAR
BY MODEL
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLEMBEDIMG ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
SQUEEZE=ON,
PAGESIZE='Letter',
ORIENTATION=LANDSCAPE,
$
DEFMACRO=DSP_IMG,
MACTYPE=RULE,
WHEN = SEATS LT 5,
$
DEFMACRO=BACK_RED,
MACTYPE=RULE,
WHEN = RETAIL_COST GT 10000,
$
DEFMACRO=DBL_COND,
MACTYPE=RULE,
WHEN = DBL_CND EQ 'Y',
$
TYPE=REPORT,
HEADALIGN=BODY,
FONT='ARIAL',
SIZE=9,
$
TYPE=DATA,
BACKCOLOR=('WHITE' RGB(197 217 241)),
JUSTIFY=CENTER,
BORDER=LIGHT,
BORDER-STYLE=SOLID,
$
TYPE=DATA,
COLUMN=IMG,
IMAGE=(IMG_INC),
BACKCOLOR=RED,
SIZE=(0.1 0.1),
POSITION=(+10.00 +0.00),
MACRO=DBL_COND,
$
TYPE=DATA,
COLUMN=IMG,
IMAGE=(IMG_INC),
SIZE=(0.1 0.1),
POSITION=(+10.00 +0.00),
MACRO=DSP_IMG,
$
TYPE=DATA,
COLUMN=MODEL,
BACKCOLOR=RED,
MACRO=BACK_RED,
$
ENDSTYLE
END
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013
It is possible, BUT the STYLING order is VERY IMPORTANT !!
You NEED to perform DBL_COND conditional styling BEFORE doing DSP_IMG conditional styling.
Many Thanks MartinY!!
I found the issue now as per your code. we have to load the backcolor in image column first(BACK_RED) and then the image condition (DSP_IMG)!!! This is strange but it works good