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.
Hi, could anyone show me how to add spaces between the columns in the across statement?
below is the code,
============================= TABLE FILE CAR SUM FIGURE ACROSS NAME COLUMNS 'TOYOTA' AND 'HONDA' AND 'LEXUS' AND 'BMW' FOR etc...... =============================
What i would like to do is to ad spaces between "TOYOTA', 'HONDA', 'LEXUS' and 'BMW'. Can anyone help?This message has been edited. Last edited by: Kerry,
WebFOCUS 7.1.6 on Win 2K/IIS 6/ISAPI HTML
Posts: 77 | Location: San Ramon, CA | Registered: May 17, 2007
There are several ways to increase the spacing in between columns, but they are either global (SET SPACES = 3) that affect spacing between columns, or require identification of a specific column (either with a IN +3 when used as a verb object or in the stylesheet. You could use TYPE=REPORT, ACROSSCOLUMN=P1, and then play with the LEFTGAP or RIGHTGAP settings and possibly combine with conditional styling.
Another way is to use relative column addressing like the following example:
TABLE FILE CAR
PRINT MODEL
BY CAR
ACROSS COUNTRY COLUMNS 'ENGLAND' AND 'FRANCE' AND 'JAPAN'
ON TABLE NOTOTAL
ON TABLE SET ONLINE-FMT PDF
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
SQUEEZE=ON,
ORIENTATION=PORTRAIT,
$
TYPE=REPORT,
GRID=OFF,
FONT='ARIAL',
SIZE=10,
COLOR='BLACK',
BACKCOLOR='NONE',
STYLE=NORMAL,
$
TYPE=HEADING,
LINE=2,
OBJECT=TEXT,
ITEM=1,
FONT='ARIAL',
$
TYPE=DATA, COLUMN=CAR, COLOR=YELLOW,$
TYPE=REPORT, COLUMN=C1, COLOR=RED, POSITION=+.25,$
TYPE=REPORT, COLUMN=C2, COLOR=BLUE, POSITION=+.5,$
TYPE=REPORT, COLUMN=C3, COLOR=BLUE, POSITION=+.75,$
ENDSTYLE
END
The problem with that is that you have to specify each column, but then you've already done that in your ACROSS COLUMNS statement.
Regards,
Darin
In FOCUS since 1991 WF Server: 7.7.04 on Linux and Z/OS, ReportCaster, Self-Service, MRE, Java, Flex Data: DB2/UDB, Adabas, SQL Server Output: HTML,PDF,EXL2K/07, PS, AHTML, Flex WF Client: 77 on Linux w/Tomcat
Posts: 2298 | Location: Salt Lake City, Utah | Registered: February 02, 2007
Darin was specifically showing PDF format control. In HTML spaces are automatically compressed and you need to specify a WRAP value in the stylesheet to force a cell width.
You can also use SET SHOWBLANKS = ON to stop the compression of blanks in HTML
After each field put a plus sign (+) and the number of spaces you want between the columns.
The default spacing between columns is 2 spaces so if you want more thane 2 spaces between columns add a +3 after NAME adds 1 space in addition to the 2 default spaces. If you want less than 2 spaces between columns add a +1 after NAME and then you will only have 1 space between columns.
Hope this helps.
Rick Barnett
TABLE FILE CAR SUM FIGURE ACROSS NAME +3 COLUMNS 'TOYOTA' AND 'HONDA' AND 'LEXUS' AND 'BMW' FOR etc......
Rick Barnett
Posts: 2 | Location: Jacksonville | Registered: August 29, 2008
Sorry - My solution was for PDF as noted by JG. I knew that the column spacing was ignored in HTML, so I just jumped straight to the PDF without stating the assumption.
As for
quote:
After each field put a plus sign (+) and the number of spaces you want between the columns
Don't know if you tested this or not, but it isn't correct syntax and even with correct syntax, it doesn't work. When specifying individual column you can use IN +3 after the field, but this doesn't seem to work the same for spaces between columns contained in an ACROSS statement. If you did test this and it worked, please post your code. Thanks.
Regards,
Darin
In FOCUS since 1991 WF Server: 7.7.04 on Linux and Z/OS, ReportCaster, Self-Service, MRE, Java, Flex Data: DB2/UDB, Adabas, SQL Server Output: HTML,PDF,EXL2K/07, PS, AHTML, Flex WF Client: 77 on Linux w/Tomcat
Posts: 2298 | Location: Salt Lake City, Utah | Registered: February 02, 2007
WIDTH= could also be used. In essence, ACROSSVALUE is affecting the column-titles, but since the column width must match the width of the widest value including the column title, you get exactly what you need.
Regards,
Darin
In FOCUS since 1991 WF Server: 7.7.04 on Linux and Z/OS, ReportCaster, Self-Service, MRE, Java, Flex Data: DB2/UDB, Adabas, SQL Server Output: HTML,PDF,EXL2K/07, PS, AHTML, Flex WF Client: 77 on Linux w/Tomcat
Posts: 2298 | Location: Salt Lake City, Utah | Registered: February 02, 2007
First of all, thank you so very much for all the responses. They are very much appreciated.
I have tried all the suggestions, but they don't seem to be able to add the spaces between columns. Let me show you what i have tried.
--Attempt 1 ACROSS COUNTRY COLUMNS 'ENGLAND' IN +3 AND 'FRANCE' AND 'JAPAN' ==result== Error message: A WORD IS NOT RECOGNIZED: IN+3
--Attempt 2 ACROSS COUNTRY COLUMNS 'ENGLAND' +3 AND 'FRANCE' AND 'JAPAN' ==result== Error message: A WORD IS NOT RECOGNIZED: +3
--Attempt 3 SET SHOWBLANKS = ON TABLE FILE CAR PRINT MODEL BY CAR ACROSS COUNTRY COLUMNS 'ENGLAND' AND 'FRANCE' AND 'JAPAN' .......... ON TABLE PCHOLD FORMAT HTML .......... $ TYPE=DATA, COLUMN=CAR, COLOR=YELLOW,$ TYPE=REPORT, COLUMN=C1, COLOR=RED, POSITION=+.25,$ TYPE=REPORT, COLUMN=C2, COLOR=BLUE, POSITION=+.5,$ TYPE=REPORT, COLUMN=C3, COLOR=BLUE, POSITION=+.75,$ ENDSTYLE END ==result== The color of the fonts shows correctly but the spaces don't seem to be added even if i put a big number.
--Attempt 4 SET SHOWBLANKS = ON TABLE FILE CAR PRINT MODEL BY CAR ACROSS COUNTRY +3 COLUMNS 'ENGLAND' AND 'FRANCE' AND 'JAPAN' .......... ON TABLE PCHOLD FORMAT HTML .......... ==result== Error message: A WORD IS NOT RECOGNIZED: +3
Not sure if there is something in the style code that prevents from adding the spaces between the columns. So, I am attaching the completed code.
TABLE FILE CAR PRINT MODEL BY CAR ACROSS COUNTRY COLUMNS 'ENGLAND' AND 'FRANCE' AND 'JAPAN' FOR .................. OVER .................. HEADING "Test" ON TABLE SET PAGE-NUM OFF ON TABLE SET FORMULTIPLE ON ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET BLANKINDENT ON ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * UNITS=IN,LEFTMARGIN=0.750000,RIGHTMARGIN=0.750000,TOPMARGIN=0.750000,BOTTOMMARGIN=0.750000,SQUEEZE=ON,ORIENTATION=PORTRAIT,$ DEFMACRO=HEADING1,FONT='TIMES NEW ROMAN',SIZE=18,COLOR='BLUE',STYLE=BOLD+ITALIC,LINES-PER-PAGE=20,$ DEFMACRO=HEADING2,FONT='TIMES NEW ROMAN',SIZE=14,COLOR='BLUE',STYLE=BOLD+ITALIC,INES-PER-PAGE=20,$ DEFMACRO=TITLES,FONT='TIMES NEW ROMAN',SIZE=12,COLOR='BLUE',STYLE=BOLD+ITALIC,LINES-PER-PAGE=20,$ DEFMACRO=BODY,FONT='ARIAL',SIZE=10,LINES-PER-PAGE=20,$ TYPE=REPORT,SIZE=9,COLOR='BLACK',BACKCOLOR='NONE',STYLE=NORMAL,TOPGAP=0.000000,LINES-PER-PAGE=20,MACRO=BODY,$ TYPE=DATA,MACRO=BODY,$ TYPE=TITLE,MACRO=TITLES,TYPE=TABHEADING,BORDER=LIGHT,MACRO=HEADING1,$ TYPE=TABFOOTING,MACRO=HEADING2,$ TYPE=HEADING,MACRO=HEADING1,$ TYPE=FOOTING,MACRO=TITLES,$ TYPE=SUBHEAD,MACRO=HEADING2,$ TYPE=SUBHEAD,LINE=1,MACRO=HEADING2,$ TYPE=SUBFOOT,BACKCOLOR='SILVER',STYLE=BOLD,MACRO=BODY,$ TYPE=SUBFOOT,LINE=1,MACRO=BODY,$ TYPE=SUBTOTAL,BACKCOLOR='SILVER',STYLE=BOLD,MACRO=BODY,$ TYPE=ACROSSVALUE,MACRO=TITLES,$ TYPE=ACROSSVALUE,COLUMN=ROWTOTAL(1),$ TYPE=ACROSSTITLE,MACRO=HEADING2,$ TYPE=PAGENUM,MACRO=TITLES,$ TYPE=RECAP,MACRO=BODY,$ TYPE=GRANDTOTAL,BACKCOLOR='SILVER',STYLE=BOLD,MACRO=BODY,$ TYPE=FREETEXT,LABEL=R8,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=FREETEXT,LABEL=R1,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=R8,COLUMN=N1,STYLE=BOLD+UNDERLINE,$ TYPE=REPORT,LABEL=R1,COLUMN=N1,STYLE=BOLD+UNDERLINE,$ TYPE=REPORT,LABEL=KPI_TEUS,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=REV_OVER_TEU,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=CON_OVER_TEU,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=JLYTDMTEUS,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=MARKET_GROWT,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT, LABEL=OOCL_SHARE, COLUMN=N1, JUSTIFY=LEFT,$ ENDSTYLE END
Hope there will a solution to it.
WebFOCUS 7.1.6 on Win 2K/IIS 6/ISAPI HTML
Posts: 77 | Location: San Ramon, CA | Registered: May 17, 2007
As I mentioned before (and you found out) the +3 does not work, nor is it correct syntax. For output PDF, my code works, but not for HTML. here's some code for HTML that DOES work:
TABLE FILE CAR
PRINT MODEL
BY CAR
ACROSS COUNTRY COLUMNS 'ENGLAND' AND 'FRANCE' AND 'JAPAN'
ON TABLE NOTOTAL
ON TABLE SET ONLINE-FMT HTML
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
SQUEEZE=ON,
ORIENTATION=PORTRAIT,
$
TYPE=REPORT,
GRID=OFF,
FONT='ARIAL',
SIZE=10,
COLOR='BLACK',
BACKCOLOR='NONE',
STYLE=NORMAL,
$
TYPE=HEADING,
LINE=2,
OBJECT=TEXT,
ITEM=1,
FONT='ARIAL',
$
TYPE=ACROSSVALUE,
SIZE=9,
WIDTH=3.0,
$
ENDSTYLE
END
Regards,
Darin
In FOCUS since 1991 WF Server: 7.7.04 on Linux and Z/OS, ReportCaster, Self-Service, MRE, Java, Flex Data: DB2/UDB, Adabas, SQL Server Output: HTML,PDF,EXL2K/07, PS, AHTML, Flex WF Client: 77 on Linux w/Tomcat
Posts: 2298 | Location: Salt Lake City, Utah | Registered: February 02, 2007
Here is your Rex with the extra line for spacing with RR before and after. Copy this into your Fex and let us know how it worked.
-* File ATESTOFACR.fex TABLE FILE CAR PRINT MODEL BY CAR ACROSS COUNTRY COLUMNS 'ENGLAND' AND 'FRANCE' AND 'JAPAN'
HEADING "Test" ON TABLE SET PAGE-NUM OFF ON TABLE SET FORMULTIPLE ON ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET BLANKINDENT ON ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * UNITS=IN,LEFTMARGIN=0.750000,RIGHTMARGIN=0.750000,TOPMARGIN=0.750000,BOTTOMMARGIN=0.750000,SQUEEZE=ON,ORIENTATION=PORTRAIT,$ DEFMACRO=HEADING1,FONT='TIMES NEW ROMAN',SIZE=18,COLOR='BLUE',STYLE=BOLD+ITALIC,LINES-PER-PAGE=20,$ DEFMACRO=HEADING2,FONT='TIMES NEW ROMAN',SIZE=14,COLOR='BLUE',STYLE=BOLD+ITALIC,LINES-PER-PAGE=20,$ DEFMACRO=TITLES,FONT='TIMES NEW ROMAN',SIZE=12,COLOR='BLUE',STYLE=BOLD+ITALIC,LINES-PER-PAGE=20,$ DEFMACRO=BODY,FONT='ARIAL',SIZE=10,LINES-PER-PAGE=20,$ TYPE=REPORT,SIZE=9,COLOR='BLACK',BACKCOLOR='NONE',STYLE=NORMAL,TOPGAP=0.000000,LINES-PER-PAGE=20,MACRO=BODY,$ TYPE=DATA,MACRO=BODY,$ TYPE=TITLE,MACRO=TITLES, $ TYPE=TABHEADING,BORDER=LIGHT,MACRO=HEADING1,$ TYPE=TABFOOTING,MACRO=HEADING2,$ TYPE=HEADING,MACRO=HEADING1,$ TYPE=FOOTING,MACRO=TITLES,$ TYPE=SUBHEAD,MACRO=HEADING2,$ TYPE=SUBHEAD,LINE=1,MACRO=HEADING2,$ TYPE=SUBFOOT,BACKCOLOR='SILVER',STYLE=BOLD,MACRO=BODY,$ TYPE=SUBFOOT,LINE=1,MACRO=BODY,$ TYPE=SUBTOTAL,BACKCOLOR='SILVER',STYLE=BOLD,MACRO=BODY,$ TYPE=ACROSSVALUE,MACRO=TITLES,$ TYPE=ACROSSVALUE,COLUMN=ROWTOTAL(1),$ RR TYPE=ACROSSVALUE, SIZE=9, WRAP=2.000000, JUSTIFY=LEFT,$ RR TYPE=ACROSSTITLE,MACRO=HEADING2,$ TYPE=PAGENUM,MACRO=TITLES,$ TYPE=RECAP,MACRO=BODY,$ TYPE=GRANDTOTAL,BACKCOLOR='SILVER',STYLE=BOLD,MACRO=BODY,$ TYPE=FREETEXT,LABEL=R8,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=FREETEXT,LABEL=R1,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=R8,COLUMN=N1,STYLE=BOLD+UNDERLINE,$ TYPE=REPORT,LABEL=R1,COLUMN=N1,STYLE=BOLD+UNDERLINE,$ TYPE=REPORT,LABEL=KPI_TEUS,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=REV_OVER_TEU,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=CON_OVER_TEU,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=JLYTDMTEUS,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT,LABEL=MARKET_GROWT,COLUMN=N1,JUSTIFY=LEFT,$ TYPE=REPORT, LABEL=OOCL_SHARE, COLUMN=N1, JUSTIFY=LEFT,$ ENDSTYLE END
WF 7.6.11 Oracle WebSphere Windows NT-5.2 x86 32bit
what someone came up with in our site was doing a compute to compute empty fields. placing them where you need the splits and then using CSS statements to make them blank by removing borders and back-colours.
There was the further option to increase or decrease the width using IF statements in the CSS....
i can try dig out an example if needed?
Developer Studio 7.64 Win XP Output: mostly HTML, also Excel and PDF
"Never attribute to malice that which can be adequately explained by stupidity." - Heinlein's Razor
Posts: 285 | Location: UK | Registered: October 26, 2007
If you're using CSS why bother with making dummy fields blank etc.?
Just use CSS padding:
TABLE FILE CAR
SUM
SALES/D10 AS ''
ACROSS COUNTRY AS ''
BY SEATS
ON TABLE SET PAGE NOLEAD
ON TABLE HOLD AS H001 FORMAT HTMTABLE
ON TABLE SET STYLESHEET *
TYPE=REPORT, GRID=OFF, FONT='ARIAL', SIZE=8, $
TYPE=REPORT, ACROSSCOLUMN=SALES, CLASS=AIRY, $
TYPE=ACROSSVALUE, JUSTIFY=RIGHT, $
ENDSTYLE
END
-RUN
-HTMLFORM BEGIN
<html>
<head>
<style>
.AIRY { padding-left: 60px; }
</style>
</head>
<body>
!IBI.FIL.H001;
</body>
</html>
-HTMLFORM END
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
I just got another request from my boss. He wants to add an extra space in the middle of all the columns.
ACROSS COUNTRY COLUMNS 'ENGLAND' AND 'FRANCE' AND ' ' AND 'JAPAN' AND 'ITALY'
That is what i did. It does add the extra column but with the dots in the column data cell. Is there a way to just add a column space without a dot showing in the data field...
WebFOCUS 7.1.6 on Win 2K/IIS 6/ISAPI HTML
Posts: 77 | Location: San Ramon, CA | Registered: May 17, 2007
That works if all the column has data in it... but i have some data fields that have no data and need the dot in it. Is there a way to just set that extra column without dot?
WebFOCUS 7.1.6 on Win 2K/IIS 6/ISAPI HTML
Posts: 77 | Location: San Ramon, CA | Registered: May 17, 2007
I wouldn't use a dummy column to add spaces between columns in an HTML report, I'd use CSS styling:
-* Conditional styling and Across ----------------------------------------------
-* http://techsupport.informationbuilders.com/sps/22142010.html
DEFINE FILE CAR
FLAG/I1 = IF COUNTRY EQ 'ITALY' THEN 1 ELSE 0;
END
-RUN
TABLE FILE CAR
SUM
SALES/D10 AS ''
FLAG NOPRINT
BY MODEL
ACROSS COUNTRY AS ''
ON TABLE SET PAGE NOLEAD
ON TABLE HOLD AS H001 FORMAT HTMTABLE
ON TABLE SET STYLESHEET *
TYPE=REPORT, GRID=ON, FONT='ARIAL', SIZE=8, $
TYPE=DATA, ACROSSCOLUMN=SALES, CLASS=AIRY, $
TYPE=DATA, ACROSSCOLUMN=SALES, CLASS=VERYAIRY, WHEN=FLAG EQ 1, $
TYPE=ACROSSVALUE, JUSTIFY=RIGHT, CLASS=AIRY, $
ENDSTYLE
END
-RUN
-HTMLFORM BEGIN
<html>
<head>
<style>
.AIRY { padding-left: 35px; }
.VERYAIRY { padding-left: 90px;}
</style>
</head>
<body>
!IBI.FIL.H001;
</body>
</html>
-HTMLFORM END
Unfortunately, as described here, styling and ACROSS is a little flaky.
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