Nesting reports/report within report/Recursive reports!
Guys,
This one's really annoying - Can I or can i not nest one report within another?? I have got a really complex report which I want to embed into another and don't want to go through the hassle of rebuilding it in the parent!! Here's what I am trying to do -
I am trying to create a recursive report. I have got a database which has a
table called Outlet and it has several directly or indirectly related child
tables. I have created a report to show these details for a single Outlet.
Now the issue I have is one Outlet can have several child outlets. Basically a
one to many relationship on the same table. I want to display the exact same
details which I displayed for the parent outlet - for each of the child outlet
for the parent.
And each of the child outlet in turn can have more child outlets. So
essentially I want to recurse into the same data model and layout model twice.
So conceptually I want to create a reusable report which I can call from
another report but this report must be displayed in a frame of the parent
report.
Any suggestions as to how I can do this without physically creat9ing three
levels of datamodel and layout model?
I am running the parent from command line and need the output in a single RDF file?
Many thanks,
Amit
Create a report that shows all the details you want, then group it by ModelName. In the section expert, hide the detail line. When you preview the report you will only see the group name, and when you click it a new report will open showing the details for that group.
Similar Messages
-
Hello Gurus,
I have created a Classic Nested Report following Dietmar's example from:
Nested report howto?
I followed the steps to create the nested report:
Step 1 - created the package
create or replace package UNFUND_PCK as
FUNCTION get_unfund_inline_f (p_dfcyseqno NUMBER)
RETURN CLOB;
end;
--------------------------------package body--------------------------------------
create or replace package body "UNFUND_PCK" is
function GET_UNFUND_INLINE_F(P_DFCYSEQNO IN NUMBER
) return CLOB
as
l_str VARCHAR2 (32767);
l_cnt NUMBER := 0;
begin
-- null;
/* insert function code */
l_str := '<table class="inlineTable">';
l_str :=
l_str
|| '<tr><th class="colFundType">Funding Type</th><th class="colRequireType">Requirement Type</th><th class="colFY">Fiscal Year</th>'
|| '<th class="colCost">Cost</th></tr>';
FOR cur IN (SELECT fundg_type_c, fundg_rqrmt_type_c, fundg_fy, fundg_cost
FROM dfcy_catg_fundg
WHERE dfcy_seqno = p_dfcyseqno)
LOOP
l_str := l_str || '<tr>';
l_str :=
l_str
|| '<td class="colFundType">'
|| cur.fundg_type_c
|| '</td><td class="colRequireType">'
|| cur.fundg_rqrmt_type_c
|| '</td><td class="colFY">'
|| cur.fundg_fy
|| '</td><td class="colCost">'
|| cur.fundg_cost
|| '</td>';
l_str := l_str || '</tr>';
l_cnt := l_cnt + 1;
END LOOP;
l_str := l_str || '</table>';
IF l_cnt = 0
THEN
RETURN '';
ELSE
RETURN l_str;
END IF;
end GET_UNFUND_INLINE_F;
end "UNFUND_PCK";Step 2 - Created the Styles placed this in the HTML Header Head.
<style type="text/css">
<!--
.inlineTable{border:1px solid #cfe0f1;border-collapse:collapse;width:100%;}
.inlineTable th{color:#336699;border:1px solid #cfe0f1;padding:2px;}
.inlineTable td{border:1px solid #cfe0f1;border-left:none;border-top:none;padding:2px;}
/* additional formatting for the specific columns*/
.inlineTable.colFundType{width:100px; text-align:center;}
.inlineTable.colcolRequireType{width:100px; text-align:right;}
.inlineTable.colFY{width:50px;}
.inlineTable.colCost{width:100px; text-align:right;}
-->
</style>Step 3- Created a New Page of Report, Classic Report (SQL qry)
select V.DFCY_SEQNO,
V.DFCY_NAME,
V.DFCY_SMY_NARR,
V.DFCY_STATUS,
V.DFCY_CATG_C,
UNFUND_PCK.GET_UNFUND_INLINE_F(V.DFCY_SEQNO) UNFUNDED_DFCY
from V_DFCY_BASE V
where V.DFCY_CATG_C = 1My results comback with HTML tags everywhere:
528 Funding dfcy funding dfcy added 5/27/10 updated on 6/10/10 closed/accepted risk 1 <table class="inlineTable"><tr><th class="colFundType">Funding Type</th><th class="colRequireType">Requirement Type</th><th class="colFY">Fiscal Year</th><th class="colCost">Cost</th></tr><tr><td class="colFundType">3</td><td class="colRequireType">2</td><td class="colFY">2013</td><td class="colCost">999</td></tr><tr><td class="colFundType">2</td><td class="colRequireType">2</td><td class="colFY">2012</td><td class="colCost">8888888888</td></tr></table>
I am using Application Default for the page, No Template for the Region, standard report and using Theme 9. Please tell me what I am doing wrong so I can get the correct format.
Thank You,
MaryThank you for the quick response..That was correct, I didn't even think to look at the column type. One more question, is it possible to display the nested table below a row instead of to the right of the main table?
Like this
INV # | name | status | category|
15 | abc | closed| apples |
Detail
FType | RType | FY | Cost |
Proc | Reset | 2013 | $1250.00
ABC | Redo | 2011 | $18888.00
INV # | name | status | category|
18 | book | open | bannas |
Thanks,
Mary -
Is it possible to nest a PDF within a PDF?
Is there any way of nesting a PDF within a PDF? In word for example you can have a thumbnail image which will then open into a PDF, however when you then change the entire word document into a PDF the nested PDF files no longer open into a new window or expand at all.
Any help would be much appreciated
Thank you
SamYou can manually attach a file in a pdf file. There is no reason the file could not be a pdf file.
-
Can I nest a menu within another menu?
Can I nest a menu within another menu?
Hi Carol,
Does this question have to do with iPhoto, or maybe strictly a .Mac homepage question?
This page will give you some info on how to do it
http://homepage.mac.com/unearthed/dotmac/custom.html
The person who wrote that site also posts in the .Mac forums, so post your question there in the Homepage forums and I am sure you will get detailed instructions.
Good Luck! -
How to suppress the report based on outer dimension in nested report
Hi Experts,
We have a report with nesting of two dimensions in rows. They are Program dimension and Account Dimension.
We need to supress the report based on the program dimension members. i.e whenever there are no values against all the accounts for a particular program that particular program should get supressed.
In the screenshot attached I am looking to supress the rows 37,38 and 39 as the data against this program is empty.
However I dont want to supress the rows 31 and 33 as there is a capital data against this program in row number 32. So we have to supress the rows based on absence of data at program level.
We are using SP14 on BPC 10.
I remember that such functionality could be acheived in BPC 7.5 by flagging the required dimension to have suppress in Expansion Range. So I guess, similar functionality would be there in BPC 10 as well.
I have evaluated the option of VBA macro to hide the required rows, but was wondering if we can achieve the same using EPM functionality as we used to do in BPC7.5.
Thanks in advance for your suggestions!!
Regards,
ShivaHi Shiva,
First you have to check the option Keep Blocks:
This option will show the whole block even if only one line contain some not zero/empty cells in the row.
Second, when you select option Filter on All Columns/Rows you have to select OR as operator between columns:
In this case the test for >0 (or for <0) will be applied to each column and the result will be OR'ed with other columns. True will be even if one column contains not zero and not empty cell.
You logic to check individual column require to hardcode the members - not good!
Vadim
P.S. If you select AND for Filter on All Columns/Rows - then only lines with all cells with non zero / non empty will be shown as in your example! -
Hi all-
I'm trying to create a report on two tables in sort of a master/detail relationship. I have an EMPLOYEE table and a SALARY table that maintains yearly salary info for each employee (a 1:N relationship). I'd like the report to look something like this:
LastName FirstName JobTitle FY Salary
Smith Bill Sys Admin 06/07 70000
05/06 63000
Jones Sara Web Dev 06/07 55000
05/06 50000
04/05 45000
------------------------------------------I'm guessing this needs a custom report template, but I haven't been able to find an example of one in which each row runs a second query (to get the salary info for the employee in the current row). Can anyone help me get started?
Thanks!
RobHi Rob,
Andy's suggestion seems to fit best for your purpose.
In my recent project I have used a different approach to include details in a report.
I have written a stored function that generates the html from a different query.
FUNCTION get_produkte_display_f (p_auftrag_id NUMBER)
RETURN VARCHAR2
IS
l_str VARCHAR2 (32767);
BEGIN
l_str := '<table class="inlineProduktTable">';
l_str :=
l_str
|| '<tr><th>Division</th><th>Produkt</th><th>Anzahl</th><th>Preis</th></tr>';
FOR cur IN (SELECT produkt_anzahl, reihenfolge, produkt_preis,
ist_bundle_produkt, ebene1, PATH, bezeichnung
FROM tpa_umsatz u, tpa_produkt_rl_v p
WHERE u.auftrag_id = p_auftrag_id
AND u.produkt_id = p.produkt_id
ORDER BY TO_NUMBER (ist_bundle_produkt), reihenfolge)
LOOP
l_str := l_str || '<tr>';
l_str :=
l_str
|| '<td>'
|| cur.ebene1
|| '</td><td>'
|| cur.bezeichnung
|| '</td><td>'
|| cur.produkt_anzahl
|| '</td><td>'
|| NVL (TO_CHAR (cur.produkt_preis), 'n/v')
|| '</td>';
l_str := l_str || '</tr>';
END LOOP;
l_str := l_str || '</table>';
RETURN l_str;
END;Just include the result of the stored function in your select list:
SELECT a.auftrag_id, erfasst_am,
tpa_auftrag_pck.get_produkte_display_f (a.auftrag_id) produkte,
a.vp_nr
FROM tpa_auftrag_aktiv_v aThe result will look like this<A>.
Regards,
~Dietmar. -
I have created a set of reports
I have create a report which lists the set of reports (a menu) which is available to a user via a table. What I want to be able to do is let user click on a button on the report menu and bring up that report to run.
I have created the button and part of the code behind the button but do not know how to trigger the correct report this is what I have so far. so how do I pass it what report_name the user clicked on?
Procedure U_RunReportButtonAction is
begin
SWR.RUN_REPORT
(REPORT_NAME.rdf);
Return(TRUE);
EXCEPTION
When SRW.RUN_REPORT_FAILURE THEN
SRW.MESSAGE(100, 'Error Executing ' | | report_name| | 'Report');
RAISE SRW.PROGRAM_ABORT;
end;OK, the easiest way is to look at the
online help, it should descripe the use of
the bulit-in package srw.run_report.
The package takes a text string with
the report name (no .rdf, it goes for the .rep directly) and parameter list, the batch=yes is mandatory
To run a report:
SRW.RUN_REPORT('report_name, batch=yes')
/Andreas
null -
Suppose v have called a new reort progarm from report1 program i.e thru SUBMIT command....and in the new report program i.e called report is having a CALL TRANSACTION statement....so wat happens?
Hi
If report program A calls Report Program B through SUBMIT and Report B itself calls Report A through Call transaction then I think it will not go for an indefinite iterations.
Reason: Call transaction actually calls a screen and all we know that SAP can create a maximum of Six (6) screens. So the process will run for maximum of Six screen generation. Then it will give a session error i,e. Maximum Session is reached.
Regs
Somnath Paul -
Hi to all
Yesterday I done five reports with Oracle Report Builder 9i. Now I'd like to create a file, as the destination output, with the five reports inside.
How can I do it?
Thanks a lot
Best RegardsHi GLuca
If you generate the output in PDF format, you simply cannot append the five .pdf files and expect the file to open correctly in Acrobat. The same with RTF file too.
Each of these files have a definite file format. You have to confirm to the file format standards set by its proposers. When you append one file to another, you are disturbing the file format.
You may search the Internet for some file appenders. There are free tools out there that allow you to append .pdf files, .rtf files. Remember that these usually do not come with support or have very limited support.
If you want to keep things simple, combine all your five reports onto a single report. Say, part 1 and 2 goes into Header section, 3 and 4 into Main and 5 into Trailer section. Create as many layouts as required. When you generate the output of this report, you'll have all the five parts in one document.
Regards
Sripathy -
Using "nested" Mount Points within Mount Points to add additional LUNs to a server
I realize that this might or might not be common and I haven't read or seen anything about this. So here goes...
No clustering. Just a strightup adding LUNs to a server mount point.
I have no issues adding a lun to a mount point (folder on the C-Drive) called MountPoint1. I can build a folder within MountPoint1 and add another LUN to a mountpoint within the first called NestedMountPoint1. I can build another folder within NestedMountPoint1
and add another LUN to a mountpoint within the second called NestedMountPoint2.
c:\MountPoiint1 (500GB)
|-NestedMountPoint1 (300GB)
|-NestedMountPoint2 (300GB)
First, do people do this? (Is it a normal practice?) (Recommended?)
Second, If it is a normal practice, Is there a limit on how many you can nest?
I can see doing this to add storage to a drive. BUT...Hi,
A mount point is just a logical way to present drives to a system without using drive letters. You can nest mount points, but it is recommended to use the root (host) volume exclusively for mount points. The root volume is the volume that is hosting
the mount points. This greatly reduces the time that it takes to restore access to the mounted volumes if you have to run a chkdsk. This also reduces the time that it takes to restore from backup on the host volume.
For more detailed information, please refer to the articles below:
How to configure volume mount points on a Microsoft Cluster Server
http://support.microsoft.com/kb/280297
Understanding NTFS volume mount points
https://library.netapp.com/ecmdocs/ECMP1217281/html/GUID-C6537E25-1E71-40F8-A1AF-F0DEED4C865D.html
Please Note: Since the website is not hosted by Microsoft, the link may change without notice. Microsoft does not guarantee the accuracy of this information.
Regards,
Mandy
We
are trying to better understand customer views on social support experience, so your participation in this
interview project would be greatly appreciated if you have time.
Thanks for helping make community forums a great place. -
How do you "Instantiate" a Nested Table from within a FUNCTION?
, I managed to compile and create the FUNCTION.
But when I invoked it,
ORA-06531: Reference to uninitialized collection
ORA-06512: at "DEV.SPGETPARENTSTABLE", line ...
I think I need to somehow *"Instantiate"* the Nested Table and I didn't:
CREATE OR REPLACE FUNCTION spGetParentsTable
ObjectId number,
ObjectClassifier varchar2
RETURN types.TmpHiearchyMapTableType
IS
TmpHierarchyMap types.TmpHiearchyMapTableType;
ThisTempId varchar2(32);
CURSOR spGetParents_cursor IS
SELECT
ReferencedId Id,
ParentId,
ChildId,
FROM TMP_HIERARCHYMAP
WHERE TmpUID = ThisTempId;
BEGIN
SELECT sys_guid() INTO ThisTempId FROM dual;
spRecursiveGetParents(ObjectId, ObjectClassifier, ThisTempId);
FOR oMap in spGetParents_cursor LOOP
TmpHierarchyMap.Extend(); **** BUT I haven't "Instantiate" the Nested Table yet ****
TmpHierarchyMap(TmpHierarchyMap.Count) := TmpHierarchyMapObjType( oMap.Id
, oMap.ParentId
, oMap.ChildId
END LOOP;
DELETE FROM TMP_HIERARCHYMAP WHERE TmpUID = ThisTempId;
RETURN TmpHierarchyMap;
END spGetParentsTable;It's annonyingly trivial to fix. In your declaration section try
TmpHierarchyMap types.TmpHiearchyMapTableType := types.TmpHiearchyMapTableType();
...Cheers, APC
blog: http://radiofreetooting.blogspot.com -
Nest a DataGrid within another DataGrid using ActionScript?
I am running into an interesting issue. I am trying to nest a
DataGrid in a column of another DataGrid by setting the
ItemRenderer property. But I am hitting a well that might be due to
the way setting itemRenderers are done in ActionScript or just my
ignorance.
Here's the issue -
When I set the itemRenderer property of for a grid column, it
has to be set as follows -
col.itemRenderer = new ClassFactory(DataGrid);
But if I do that, since I am dealing with the class and not
the instance of the DataGrid, how do I set the dataProvider,
columns and other properties for my nested grid? I know we can do
this in MXML but how to achieve the same in ActionScript?
Thank you.A very interesting question. I should try this myself at some
point. If you were using a drop-in itemRenderer, it might look like
this:
<mx:DataGridColumn dataField="gridData" ... >
<mx:itemRenderer>
<mx:Component>
<mx:DataGrid dataProvider="{data.gridData}" width="100%"
height="100%" ...>
</mx:DataGrid>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
In ActionScript, this might work, but you would need to
extend DataGrid or use a container wrapper.
class DataGridItemRenderer extends DataGrid {
override public function set data(value:Object):void {
super.data = value;
dataProvider = data.
gridData;
This should do it. -
Nesting a Dashboard within a Dashboard problem
Post Author: joseph_atkinson
CA Forum: Xcelsius and Live Office
Guys,
I hope that you can help me with this problem.
I wish to embed a dashboard in another dashboard. To do this, I export the first dashboard as an *.swf and then import it into the new dashboard using an image component.
However, if I then rexport the first dashboard as an *.swf with new data in, the *.swf in the second dashboard is not automatically updated. To update it, I have to re-insert the *.swf.
Is there a solution to this problem?
Many thanks
JoePost Author: amr_foci
CA Forum: Xcelsius and Live Office
i think you need to make your internal swf file get the data dynamically
it will not change unless you make it dynamic.
good luck
Amr -
Multiple queries in a single report?
I'm having some issues with the ColdFusion Report Builder...
I have a database table called "Items" that includes fields
for Reviewer and Status. I want to create a report that will list a
reviewer, then express the number of items where the Status is
"open" as a total or record count. I want to do the same for total
items, and then express the number of "open" items as a percentage.
For example:
REVIEWER, OPEN ITEMS, TOTAL ITEMS, PERCENT OPEN
John Doe, 10, 20, 50%
Jane Smith, 15, 60, 25%
...and so on.
So far I've only been able to get my report to display the
recordcount of the entire query. In order troubleshoot the problem
I created a regular cfm page to do the same thing. Here's what I
did:
<cfquery name="getreviewers"
datasource="#APPLICATION.datasource#">
SELECT DISTINCT Reviewer
FROM Items
ORDER BY Reviewer
</cfquery>
<cfoutput query="getreviewers">
<cfquery name="getopenitems"
datasource="#APPLICATION.datasource#">
SELECT Status
FROM Items
WHERE Status='open'
AND Reviewer = '#Reviewer#'
</cfquery>
<cfset open = getopenitems.recordcount>
<cfquery name="getallitems"
datasource="#APPLICATION.datasource#">
SELECT Status
FROM Items
WHERE Reviewer = '#Reviewer#'
</cfquery>
<cfset all = getallitems.recordcount>
<cfset percent = (open / all) * 100>
#getreviewers.DR_Item_Reviewer#, #open#, #all#,
#Round(percent)#%
</cfoutput>
That worked great, but as you can see I had to nest a couple
of queries inside a <cfoutput>. I don't know how to
incorporate this into the report builder, as it seems you can only
specify a single query. Another thing that occurs to me is perhaps
I'm going about this the wrong way. Is there perhaps a function
that will display things the way I want them without fussing with
multiple queries? Any help would be greatly appreciated. Thanks in
advance.It seems like you are trying to do a subreport. You can nest
reports within the report feature...just check out the subreport
feature under the help section. If that doesn't help let me
know. -
How to develp a subreport in the same page of the main report and processed when is called
SSRS 2012
Hi guys,
I am developing a report that includes a subreport.
therefore The report is made up by 2 sections:
1) Show a grid (several rows - may be 100 or more - and some columns). It represent high level info (Each row represent a specific item)
2) The user click on a Row/column (eg: Item1, to see details that must be shown as graph.
Here the problem: Searching info about SSRS reporting for subreports, drilldown, nested report and so on, no ones accomplish the requirements for the following reasons:
1) Subreports: NOT open in the same page. The user must <go back> to see detail for other items, such as Item 2....
2) Nested and DrillDown: Process data as the Main report (they are hidden and displayed after user action). In my case this leads to performance problem, because: if the main report has 200 objects (it means 200 graphs processed and hidden at the same time
for the main reports).
3) DrillThrough and Subreport: The detail data are processed only when the user select the interested item in the main report. Here the problem: the report is shown externally.
Please, it there any possibility to have a subreport (or anything else) to be executed in the same report as the main report and processed only when the user make action?
Thanks for your help.Hi Fasttrack2,
According to your description, there is a main report with more than 100 rows of summary information, when users click the item of the row, the report need to jump to detail information shows as graph. The problem you are facing is that you are not sure
subreport, drilldown or drillthrough report should be used? You hope to set display detail information in the main report and keep high performance of report.
In Reporting Services, each subreport instance is a separate query execution and a separate report processing task. Subreports are recommended when there are just a few subreport instances. We should not use subreports inside a group when there are many
group instances, instead, consider using drillthrough reports. Drilldown reports process all data even when the data is first hidden. In order to improve the performance of the report, we can split drilldown reports into parameterized drillthrough reports,
because Drillthrough reports do not run until a user clicks the drillthrough link in the main report.
In this case, we can consider using drilldown or drillthrough report. In drilldown report, when we click a plus or minus button to expand or collapse a section of a report, the detail data will be displayed in place. By using drillthrough report, when we
click the link in the main report, the detail data will be displayed, we can come back to the main report by click return button in the drillthrough report.
Reference:
Troubleshooting Reports: Report Performance
Drillthrough, Drilldown, Subreports, and Nested Data Regions
If you have any more questions, please feel free to ask.
Best Regards,
Wendy Fu
If you have any feedback on our support, please click
here.
Maybe you are looking for
-
How to parse crystal report query prompt value via url parameters
HI All, I am creating a employee detail report in crystal report. The recordset is huge and i have created a parameter prompts in the query and thinking to parse the prompt value via url parameters. Not sure why i still could not make it works. for e
-
System asking for storage location in case of Asset GR,
dear all, In our case system is asking for Storage Location in case of Asset GR, though PO was account assigned. I checked for the screen setting, but not getting any clue where to find that entry to make depressed. Pls guide, Regards.
-
CLIENT_OLE2 - Attempting to insert additional rows into a table in MS Word
I cannot find the commands to perform the above. I have looked at the Microsoft site but it only gives the VB equivalent and I cannot work out the syntax for CLIENT_OLE2 commands. Does anyone know where I can find a list of Word.Application commands
-
Can individual projects be backed up/archived?
Before making drastic changes to an existing project, how can I make a backup/archive in case my changes are for the worse? I'd like to duplicate a project, work on it, and if the changes are good, keep this version. If my changes don't work out, I'd
-
Why do we create custome EventQueue?
I see applications creating own custom EventQueues. Toolkit.getDefaultToolkit().getSystemEventQueue().push(customEventQueue); Why do we create our own eventqueues? Please explain. I was not able to find much documentation on java tutorial. thanks vin