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.
Part I: A few paragraphs of text Part II: Retrieve data in one field from table 1 and display it across four columns Part III: Retrieve data from table 2
Firstly, I created 3 separate reports using PAGEMATRIX for Part II. However, PAGEMATRIX does not work with PDF NOBREAK.
Secondly, I'm trying to combine the 3 parts into one report. However, PAGEMATRIX is not recognizing the text that is in the Report Heading section for the 2nd-4th column and is printing over the text in the Report Heading section.
Is there a solution that will split the data from one column into 4 columns without using PAGEMATRIX? Or is there a way for me to make PAGEMATRIX recognize the text in the REPORT HEADING?
Any suggestions are welcomed. Thanks!
My code for Part II is:
TABLE FILE LKP_DRUG_LIST
PRINT
LIST_DRUG_NAME_FMT AS ''
BY LIST_DRUG_NAME_FMT_UPCASE NOPRINT
WHERE LIST_FLG EQ '1';
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
PAGESIZE='Letter',
LEFTMARGIN=0.500000,
RIGHTMARGIN=0.500000,
TOPMARGIN=0.000000,
BOTTOMMARGIN=0.000000,
SQUEEZE=ON,
ORIENTATION=PORTRAIT,
$
PAGEMATRIX=(4 1),
ELEMENT=(1.888889 5.041667),
GUTTER=(0.055556 0.000000),
MATRIXORDER=HORIZONTAL,
$
LABELPROMPT=OFF,
$
TYPE=REPORT,
GRID=OFF,
FONT='ARIAL',
SIZE=7,
JUSTIFY=LEFT,
$
TYPE=REPORT,
COLUMN=N2,
WRAP=1.888889,
$
ENDSTYLE
END
This message has been edited. Last edited by: Kerry,
Year(s) of experience in WebFOCUS: 5+. Using WebFOCUS 7.7.03 on Windows platform with Oracle/SQL Server.
The closest thing that I managed to do this without using PAGEMATRIX is using the following code. However, with this set of code, it will leave blank spaces in other columns when the text in one of the column is wrapped into the next line meaning, such as:
-* PP=No. of elements per page
-* CC=No. of cols; LL=No. of lines per col
-DEFAULT &LL=43;
-DEFAULT &CC=4;
-SET &PP=&LL * &CC;
DEFINE FILE LKP_DRUG_LIST
LIST_DRUG_NAME/A150=IF BRAND_NAME NE '' THEN (IF RESTRICTED_DRUG_FLG EQ '1' THEN (GENERIC_NAME | ' (' || BRAND_NAME || ')*') ELSE (GENERIC_NAME | ' (' || BRAND_NAME || ')') ) ELSE (IF RESTRICTED_DRUG_FLG EQ '1' THEN (GENERIC_NAME || '*') ELSE GENERIC_NAME);
LIST_DRUG_NAME_FMT/A150=SQUEEZ(150, LIST_DRUG_NAME, 'A150');
LIST_DRUG_NAME_FMT_UPCASE/A150=UPCASE(150, LIST_DRUG_NAME_FMT, 'A150');
END
TABLE FILE LKP_DRUG_LIST
PRINT
LIST_DRUG_NAME_FMT
BY LIST_DRUG_NAME_FMT_UPCASE NOPRINT
WHERE LIST_FLG EQ '1';
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE HOLD AS DRUG_LIST_HOLD1
END
DEFINE FILE DRUG_LIST_HOLD1
XROW/I2=IF XROW GT &LL THEN 1 ELSE XROW + 1;
XCOLUMN2/I1=IF XROW EQ 1 THEN XCOLUMN + 1 ELSE XCOLUMN;
XCOLUMN1/I1=XCOLUMN2-((INT(XCOLUMN2/&CC))*&CC);
XCOLUMN/I1=IF XCOLUMN1 EQ 0 THEN &CC ELSE XCOLUMN1;
XPAGE/I2=IF (XCOLUMN EQ 1 AND XROW EQ 1) THEN XPAGE + 1 ELSE XPAGE;
END
TABLE FILE DRUG_LIST_HOLD1
SUM
LIST_DRUG_NAME_FMT AS ''
BY XPAGE NOPRINT
BY XROW NOPRINT
ACROSS XCOLUMN NOPRINT
ON XPAGE PAGE-BREAK
ON TABLE SET NODATA ' '
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
UNITS=IN,
PAGESIZE='Letter',
LEFTMARGIN=0.500000,
RIGHTMARGIN=0.500000,
TOPMARGIN=0.000000,
BOTTOMMARGIN=0.000000,
SQUEEZE=ON,
ORIENTATION=PORTRAIT,
$
TYPE=REPORT,
GRID=OFF,
FONT='ARIAL',
SIZE=6,
JUSTIFY=LEFT,
$
TYPE=REPORT,
COLUMN=N4,
WRAP=1.8,
$
TYPE=REPORT,
COLUMN=N5,
WRAP=1.8,
$
TYPE=REPORT,
COLUMN=N6,
WRAP=1.8,
$
TYPE=REPORT,
COLUMN=N3,
WRAP=1.8,
$
ENDSTYLE
END
Year(s) of experience in WebFOCUS: 5+. Using WebFOCUS 7.7.03 on Windows platform with Oracle/SQL Server.
Can you increase the column width by reducing the number of columns to three or switching to landscape page orientation so your text strings will never need to wrap?
WebFOCUS 7.7.05
Posts: 1213 | Location: Seattle, Washington - USA | Registered: October 22, 2007
Perhaps this has a chance (I sometimes avoid across) The Idea was only 'Happy New Year') With Dialog Manager, it's smarter, but I wanted to be simple (and had not fully read your 2nd try) TABLE FILE LKP_DRUG_LIST PRINT LIST_DRUG_NAME_FMT BY LIST_DRUG_NAME_FMT_UPCASE NOPRINT WHERE LIST_FLG EQ '1'; ON TABLE HOLD AS TMPTOTO END
DEFINE FILE TMPTOTO INDCOL/I02 = IF LAST INDCOL GE 4 THEN 1 ELSE (1 + LAST INDCOL ); INDLIG/I08 = IF INDCOL EQ 1 THEN (1 + LAST INDLIG) ELSE LAST INDLIG ; NAME_01/A?? = IF INDCOL EQ 1 THEN LIST_DRUG_NAME_FMT ELSE LAST NAME_01 ; NAME_02/A?? = IF INDCOL EQ 1 THEN ' ' ELSE IF INDCOL EQ 2 THEN LIST_DRUG_NAME_FMT ELSE LAST NAME_02 ; NAME_03/A?? = IF INDCOL EQ 1 THEN ' ' ELSE IF INDCOL EQ 3 THEN LIST_DRUG_NAME_FMT ELSE LAST NAME_03 ; NAME_04/A?? = IF INDCOL EQ 1 THEN ' ' ELSE IF INDCOL EQ 4 THEN LIST_DRUG_NAME_FMT ELSE LAST NAME_04 ; END
TABLE FILE TMPTOTO BY INDLIG NOPRINT SUM NAME_01 AS '' NAME_02 AS '' NAME_03 AS '' NAME_04 AS '' ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE .../...
Cordially and Focusely
Focus Mainframe 7.6.11 Dev Studio 7.6.11 and !!! PC Focus, Focus for OS/2, FFW Six, MSO