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 Iam working with the version 7.1.4.I have 12 reports to be displayed in a single PDF page like table (6 reports in left side and 6 reports in right side)Each report contains hold files.when iam using SET COMPOUND = OPEN and CLOSE statements it is displaying only the first report.BUt i want to display all the 12 individual pdf reports.
Example SET COMPOUND = OPEN NOBREAK -INCLUDE report1 -INCLUDE report2 --- --- -INCLUDE report12(ALl the 12 reports are in PDF format) SET COMPOUND = CLOSE
And my report1 contains hold files Example
TABLE FILE CAR PRINT CAR BY COUNTRY ON TABLE HOLD AS H1 END TABLE FILE H1 PRINT CAR ACROSS COUNTRY STYLING ON TABLE PC HOLD FORMAT PDF END TABLE FILE CAR PRINT CAR BY COUNTRY ON TABLE HOLD AS H2 END TABLE FILE H2 PRINT CAR ACROSS COUNTRY STYLING ON TABLE PC HOLD FORMAT PDF END . . . . TABLE FILE CAR PRINT CAR BY COUNTRY ON TABLE HOLD AS H5 END TABLE FILE H5 PRINT CAR ACROSS COUNTRY STYLING ON TABLE PC HOLD FORMAT PDF END
When iam trying to to this iam getting the output s 0 number of records in table and it displays the nuber of lines can anybody help to solve this issue.
TABLE FILE CAR
PRINT
CAR MODEL
BY COUNTRY
ON TABLE HOLD AS H1
END
TABLE FILE CAR
PRINT
CAR MODEL BODYTYPE
BY COUNTRY
ON TABLE HOLD AS H2
END
TABLE FILE H1
SUM CAR
ACROSS COUNTRY
ON TABLE SET COMPOUND OPEN NOBREAK
ON TABLE SET ONLINE-FMT PDF
END
TABLE FILE H1
PRINT MODEL
BY COUNTRY
BY CAR
ON TABLE SET ONLINE-FMT PDF
END
TABLE FILE H2
PRINT BODYTYPE
BY COUNTRY
BY CAR
BY MODEL
ON TABLE SET COMPOUND CLOSE
ON TABLE SET ONLINE-FMT PDF
END
This works. Looks like you need to move the -INCLUDE for the hold files above the code for the reports. Also the SET commands don't seem to work in the general code.
As Focuzsambit mentioned earlier, the standard technique for compound reports (OPEN/CLOSE/NOBREAK) will NOT give you the result you are looking for. This simply gives you the ability to place multiple reports one after another, with or without page breaks.
If you are wanting to place multiple reports "to be displayed in a single PDF page like table (6 reports in left side and 6 reports in right side)" you will have to use the technique provided by the compound PDF layout painter tool which creates each report as a component and then lets you place those components at a specific location and size on a page. I would suggest, for starters, to create each of your individual reports, then use the PDF layout painter to get your finished result, incorporating each of your individual reports.
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
Hi Darin, I tried to do a similar thing, but I face a strange problem. When there are intermediate hold files within the components, I do not see all my components in the final report. When each of the components is a simple table command, the desired output is seen with no issues.
But my requirement would need me to manipulate data creating multiple intermediate hold files.
How are you doing your components? Do you create them individually and then incorporate them into the compound PDF (method I recommend) or do you build them inside the PDF Layout Painter?
If method 1, do the reports with the hold files run independently, that is not from the compound document but as stand-alone focexecs?
Yes Ginny, I created the individual focexecs and referred (-INCLUDE) them from within the compound layout painter. The individual fex files are running perfectly fine with the hold files. I have tried a sample with one component on CAR and another component on employee. I have just used a hold file without any manipulation in the data and tried to print from the hold file.
Of course, I have tried building the components entirely inside the PDF layout painter too.
Now, the issue with having hold files is resolved. I am placing another component of insignificant dimensions (size) and displaying nothing but setting the output format to PDF. The further components can now have the hold files and still display desired output.
My first component is something like
quote:
SET COMPONENT='report1' -*component_type report TABLE FILE EMPLOYEE PRINT LAST_NAME WHERE LAST_NAME EQ 'ABC' ON TABLE PCHOLD FORMAT PDF
The only problem now is, the output is spilled on to multiple pages where it could have printed on a single page. Each row is displayed on a separate page. Any suggestions please?
The output in the compound PDF layout painter generated report is spilled onto multiple pages. Each row is displayed on a separate page. Any idea how to get this resolved?
in the code you posted, you are not really " displaying nothing." You are running a report that is empty because no records meet the criteria - yeah I know, it's semantics. What would be the purpose of running a report and putting it onto a compound report if there is never anything in it?
When you say each row is on a separate page, each row of what? Maybe check to overflow properties in the layout tool? check use of PAGE-BREAK or NOBREAK?
Kind of hard to know what the elephant does by looking at it's tail.
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
if you see your code try to understand it. Position means where the report starts Dimension is the size. If you change the last on to (5 12) it might look better. You have to play a bit with the size, it depends on other settings. Maybe you also need an overflow page.
Frank
prod: WF 7.6.10 platform Windows, databases: msSQL2000, msSQL2005, RMS, Oracle, Sybase,IE7 test: WF 7.6.10 on the same platform and databases,IE7
Posts: 2387 | Location: Amsterdam, the Netherlands | Registered: December 03, 2006
Let me make one thing clear to you. The first component of the report is an empty report because if my first component has hold files, I am not seeing other report components on the final generated report. My report has another two components apart from this very small (in dimensions) first component which is purposely made empty. Earlier, when I did not have this first empty component, only one component got displayed on the final output inspite of having two components in the design and code. To get two components displayed, I had to go with this option of placing a dummy empty component first. I very well know that position and dimension are totally different attributes and size is represented by dimension. Dimensions of my first component are purposely made very small because I do not want to see that component which is placed only to avoid other problem with displaying multiple components.
I did not do an explicit page-break but still it happens.
My problem now is the records of other two components are getting printed one on each new page.This message has been edited. Last edited by: <Helpme>,
COMPOUND LAYOUT UNITS=IN, $ SECTION=section1, LAYOUT=ON, MERGE=ON, ORIENTATION=LANDSCAPE, PAGESIZE=Letter, $ pagelayout=1, name='Layout page 1', $ component='report1', type=report, position=(0.500 0.625), dimension=(0.000 0.042), $ component='report2', type=report, position=(0.500 0.792), dimension=(4.063 3.354), $ component='report3', type=report, position=(4.927 0.792), dimension=(4.042 3.469), $ END SET COMPONENT='report1' -*component_type report TABLE FILE EMPLOYEE PRINT LAST_NAME WHERE LAST_NAME EQ 'ABC' ON TABLE PCHOLD FORMAT PDF END SET COMPONENT='report2' -*component_type report TABLE FILE EMPLOYEE PRINT LAST_NAME FIRST_NAME ON TABLE PCHOLD FORMAT PDF END SET COMPONENT='report3' -*component_type report TABLE FILE CAR PRINT CAR MODEL ON TABLE PCHOLD FORMAT PDF END COMPOUND END
If you run this code, you wil notice that output is generated with one record on each new page and that exactly is my problem. Any help please?
The problem is that you have a coordinated report, but are not using any BY fields for coordination so it is going off of last name. Add the same BY field in each report or turn off coordination and you'll get what you need.
Also, there is still no need for the empty report. Still not quite sure why you think you need it, but whatever it is, that's not the real issue. Code below produces a correct coordinated compound report:
-* File COMPOUND PAGES
-* Default Mode: ResourceLayout
COMPOUND LAYOUT
UNITS=IN, $
SECTION=section1, LAYOUT=ON, MERGE=ON, ORIENTATION=LANDSCAPE, PAGESIZE=Letter, $
pagelayout=1, name='Layout page 1', $
component='report1', type=report, position=(0.417 0.833), dimension=(2.917 4.375), $
component='report2', type=report, position=(4.583 0.833), dimension=(3.333 4.375), $
pagelayout=2, name='Layout page 2', $
END
SET COMPONENT='report1'
-*component_type report
TABLE FILE CAR
PRINT
CAR
DEALER_COST
BY COUNTRY NOPRINT
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',
SQUEEZE=ON,
ORIENTATION=PORTRAIT,
$
TYPE=REPORT,
GRID=OFF,
FONT='ARIAL',
SIZE=9,
COLOR='BLACK',
BACKCOLOR='NONE',
STYLE=NORMAL,
$
TYPE=TITLE,
STYLE=BOLD,
$
ENDSTYLE
END
SET COMPONENT='report2'
-*component_type report
TABLE FILE CAR
PRINT
CAR
RETAIL_COST
BY COUNTRY NOPRINT
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',
SQUEEZE=ON,
ORIENTATION=PORTRAIT,
$
TYPE=REPORT,
GRID=OFF,
FONT='ARIAL',
SIZE=9,
COLOR='BLACK',
BACKCOLOR='NONE',
STYLE=NORMAL,
$
TYPE=TITLE,
STYLE=BOLD,
$
ENDSTYLE
END
COMPOUND 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
Thank you very nuch Darin. Turning off the Coordinate Report attribute works fine.
Coming to using the empty report --
Please try the below code which has an intermediate hold file in the first component. My actual report will be more complex and needs many hold files to generate the final desired output.
quote:
COMPOUND LAYOUT UNITS=IN, $ SECTION=section1, LAYOUT=ON, MERGE=ON, ORIENTATION=LANDSCAPE, PAGESIZE=Letter, $ pagelayout=1, name='Layout page 1', $ component='report1', type=report, position=(0.417 0.833), dimension=(2.917 4.375), $ component='report2', type=report, position=(4.583 0.833), dimension=(3.333 4.375), $ pagelayout=2, name='Layout page 2', $ END SET COMPONENT='report1' -*component_type report TABLE FILE CAR PRINT CAR DEALER_COST COUNTRY ON TABLE HOLD AS 'CAR1' FORMAT ALPHA END TABLE FILE CAR1 PRINT CAR DEALER_COST BY COUNTRY NOPRINT 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', SQUEEZE=ON, ORIENTATION=PORTRAIT, $ TYPE=REPORT, GRID=OFF, FONT='ARIAL', SIZE=9, COLOR='BLACK', BACKCOLOR='NONE', STYLE=NORMAL, $ TYPE=TITLE, STYLE=BOLD, $ ENDSTYLE END SET COMPONENT='report2' -*component_type report TABLE FILE CAR PRINT CAR RETAIL_COST BY COUNTRY NOPRINT 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', SQUEEZE=ON, ORIENTATION=PORTRAIT, $ TYPE=REPORT, GRID=OFF, FONT='ARIAL', SIZE=9, COLOR='BLACK', BACKCOLOR='NONE', STYLE=NORMAL, $ TYPE=TITLE, STYLE=BOLD, $ ENDSTYLE END COMPOUND END
Since, there is a hold file in the first component, the final report displays only one component.
Is it neccessary to use this?. Can't you use the old fashioned way ON TABLE PCHOLD FORMAT PDF OPEN ON TABLE PCHOLD FORMAT PDF NOBREAK ON TABLE PCHOLD FORMAT PDF NOBREAK CLOSE
Then you can put all the hold files you want and not worry about components or dimensions
In Focus since 1993. WebFOCUS 7.7.03 Win 2003
Posts: 1903 | Location: San Antonio | Registered: February 28, 2005
Will the old fashion let me place my components however I want? Using PDF OPEN, PDF NOBREAK, PDF NOBREAK CLOSE will place the component one after the other.. isn't it?
I use hold files frequently in compound reports without problem. I cut and pasted your code as is and I can see both reports on the page.
And the old-fashioned way doesn't allow you to place multiple reports however you want,(but, as always, there are ways around that.)
I would stick with the "new" way for what you need. And again, I didn't see any problems with your code.This message has been edited. Last edited by: Darin Lee,
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
I have tried this in many different ways but when I use hold files, I am not able to get two components printed on the reprot. Will there be any setting that I am missing?
Worked for me. Try this - if you are using DevStudio, turn on the Message Viewer (click the little down arrow by the blue "Run Arrow" and set to on.) This allows you to see the code that is used even though the output is PDF. Check the code and see if you are getting any errors.
The code is pretty straighforward so I'm not sure why it works for me but not for you.
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