Focal Point
[CLOSED] Assign the font face to column values before concatenating define field

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/9947035496

October 04, 2020, 04:57 PM
BI Dev
[CLOSED] Assign the font face to column values before concatenating define field
Hello Everyone,

I have created a report which is working well and trying to get the output in PDF format which will also include the font face wingdings to show the increase decrease metrics.

Please let me know if anybody have any inputs on the below things which I am trying to do. Thank you very much in advance.

1)How do I convert the number to wingding fonts for the fields UP_ARROW and DOWN_ARROW? If these were kept separate and not concatenated with the other fields as you can see in the fields SAL_INC_DEC and RC_INC_DEC, I would have given FONT=WINGDINGS for these columns in the STYLESHEET.

2) Removing the gap between the first row and the table heading

  
SET PAGE-NUM=OFF
SET ASNAMES=ON
TABLE FILE CAR
SUM
DEALER_COST
RETAIL_COST
BY COUNTRY
BY CAR
WHERE CAR IN('JAGUAR','DATSUN','ALFA ROMEO','BMW')
ON TABLE HOLD AS COUPE
END

TABLE FILE CAR
SUM
DEALER_COST
RETAIL_COST
BY COUNTRY
BY CAR
WHERE CAR IN('JENSEN','TOYOTA','MASERATI','AUDI')
ON TABLE HOLD AS ROADSTER
END

JOIN INNER COUNTRY IN COUPE TO COUNTRY IN ROADSTER TAG J1 AS 'J1'

TABLE FILE COUPE
SUM
DEALER_COST
J1.DEALER_COST AS 'DEALER_COST_2'
RETAIL_COST
J1.RETAIL_COST AS 'RC_2'
COMPUTE DEALER_COST_CHANGE/D22=((DEALER_COST-J1.DEALER_COST)/J1.DEALER_COST)*100;
COMPUTE ABS_DEALER_COST_CHANGE/A30V=LTRIM(FTOA((ABS(DEALER_COST_CHANGE)),'(D22)',ABS_DEALER_COST_CHANGE));
COMPUTE SAL_GROWTH/A40=('<sup>('||ABS_DEALER_COST_CHANGE||'%'||')</sup>');
COMPUTE RC_CHANGE/D22=((RETAIL_COST-J1.RETAIL_COST)/J1.RETAIL_COST)*100;
COMPUTE ABS_RC_CHANGE/A30V=LTRIM(FTOA((ABS(RC_CHANGE)),'(D22)',ABS_RC_CHANGE));
COMPUTE RC_GROWTH/A40=('<sup>('||ABS_RC_CHANGE||'%'||')</sup>');
BY COUNTRY
BY CAR
ON TABLE HOLD AS VEHICLE_BODY
END

DEFINE FILE VEHICLE_BODY
UP_ARROW/A1=HEXBYT(241,'A1');
DOWN_ARROW/A1=HEXBYT(242,'A1');
SAL_GRWTH_IC_DC/A20=IF DEALER_COST_CHANGE GT 0 THEN UP_ARROW  ELSE
IF DEALER_COST_CHANGE LT 0 THEN DOWN_ARROW ELSE '';
RC_GRWTH_IC_DC/A20=IF RC_CHANGE GT 0 THEN UP_ARROW  ELSE
IF RC_CHANGE LT 0 THEN DOWN_ARROW ELSE '';
SAL_INC_DEC/A60=SAL_GROWTH||SAL_GRWTH_IC_DC;
RC_INC_DEC/A60=RC_GROWTH||RC_GRWTH_IC_DC;
CTRY/A14V='Country';
DC/A16V='Dealer Cost';
RC/A16V='Retail Cost';
END

TABLE FILE VEHICLE_BODY
PRINT
COUNTRY AS ''
DEALER_COST AS ''
RETAIL_COST AS ''
OVER
CAR AS ''
SAL_INC_DEC AS ''
RC_INC_DEC AS ''
DEALER_COST_CHANGE NOPRINT
RC_CHANGE NOPRINT
ON TABLE HEADING
"<CTRY<DC<RC"
""
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLE *
TYPE=REPORT, FONT='Source Sans Pro',SIZE=12,ORIENTATION=PORTRAIT,HEADALIGN=BODY, BACKCOLOR=RGB(235 224 211),GRID=OFF,$
PAGESIZE='Envelope #9',TOPMARGIN=0.000000,BOTTOMMARGIN=0.000000,LEFTMARGIN=0.000000,RIGHTMARGIN=0.000000,$
TYPE=DATA, COLUMN=COUNTRY,BACKCOLOR=RGB(255 255 255),$
TYPE=DATA, COLUMN=DEALER_COST,BACKCOLOR=RGB(255 255 255),$
TYPE=DATA, COLUMN=RETAIL_COST,BACKCOLOR=RGB(255 255 255),$
TYPE=DATA, COLUMN=CAR,BACKCOLOR=RGB(255 255 255),$
TYPE=DATA, COLUMN=SAL_INC_DEC,BACKCOLOR=RGB(255 255 255),$
TYPE=DATA, COLUMN=RC_INC_DEC,BACKCOLOR=RGB(255 255 255),$
TYPE=DATA, COLUMN=SAL_INC_DEC,JUSTIFY=CENTER,COLOR=RGB(75 205 62),WHEN=DEALER_COST_CHANGE GT 0,MARKUP=ON, $
TYPE=DATA,COLUMN=SAL_INC_DEC,JUSTIFY=CENTER,COLOR=RGB(255 31 62),WHEN=DEALER_COST_CHANGE LT 0,MARKUP=ON, $
TYPE=DATA,COLUMN=REV_INC_DEC,JUSTIFY=CENTER,COLOR=RGB(75 205 62),WHEN=RC_CHANGE GT 0, MARKUP=ON,$
TYPE=DATA, COLUMN=REV_INC_DEC,JUSTIFY=CENTER,COLOR=RGB(255 31 62),WHEN=RC_CHANGE LT 0,MARKUP=ON, $
TYPE=DATA, BORDER-TOP=HEAVY,BORDER-COLOR=RGB(235 224 211), COLUMN=COUNTRY,$
TYPE=DATA, BORDER-TOP=HEAVY,BORDER-COLOR=RGB(235 224 211), COLUMN=DEALER_COST,$
TYPE=DATA, BORDER-TOP=HEAVY,BORDER-COLOR=RGB(235 224 211), COLUMN=RETAIL_COST,$
END

This message has been edited. Last edited by: FP Mod Chuck,


Webfocus 8105/8202
Windows
All Outputs
October 05, 2020, 02:35 PM
dbeagan
FONT=SYMBOL
has both the numbers and the up/down arrows.
UP_ARROW/A1   = HEXBYT(173,'A1');
DOWN_ARROW/A1 = HEXBYT(175,'A1');



WebFOCUS 8.2.06
October 06, 2020, 10:48 AM
BI Dev
Hello Dbeagan,

How do I convert them into up/down arrows before concatenating them in SAL_INC_DEC and RC_INC_DEC?

Best Regards


Webfocus 8105/8202
Windows
All Outputs
October 07, 2020, 12:11 PM
dbeagan
The symbol font has both the arrows and the numbers, for example
 TABLE FILE ggsales
 SUM
 COMPUTE UP_ARROW/A1 = HEXBYT(173,'A1'); NOPRINT
 COMPUTE DN_ARROW/A1 = HEXBYT(175,'A1'); NOPRINT
 COMPUTE ARROW/A1    = IF UNITS GT 300000 THEN UP_ARROW ELSE DN_ARROW; NOPRINT
 COMPUTE INC_DEC/A16 =  FPRINT(UNITS, 'P9C', 'A15') | ARROW; AS 'Unit Sales'
      BY REGION
      BY ST
      BY CITY
 ON TABLE SET PAGE-NUM NOEAD
 ON TABLE PCHOLD FORMAT PDF 
 ON TABLE SET STYLE *
 TYPE=DATA, COLUMN=INC_DEC, FONT=SYMBOL, $
 TYPE=DATA, COLUMN=INC_DEC, WHEN=ARROW EQ UP_ARROW, COLOR=GREEN,  $
 TYPE=DATA, COLUMN=INC_DEC, WHEN=ARROW EQ DN_ARROW, COLOR=MAROON, $
 ENDSTYLE
 END  



WebFOCUS 8.2.06
October 09, 2020, 01:17 PM
BI Dev
Thank you Dbeagan for your inputs.


Webfocus 8105/8202
Windows
All Outputs