Creating a Detail Table Based on an Action in Another Table or Matrix to Display in the Same Report (Not a Drill-Through)
Hello,
I was wondering if it's possible have a matrix which shows total credits by month and have drill-down groupings to display the invoice numbers for each credit. Then, once the drill-down is expanded for a particular month, be able to click on the invoice
number and have another table under the matrix display the details of the invoice.
I don't really want a drill-through because that opens a different report in the window, what I want to be able to do is stay on the main report. I also don't want to drill-into the invoice details from the matrix as that expands the matrix out and
makes it unruly and ugly. I've been playing with subreports but not able to get what I want out of it.
I hope this makes sense - is there a way to do this in SSRS?
Thanks!!
Hi AvenueStuart,
After testing the issue in my environment, we can refer to the steps below to work around the issue:
Create a new table with the details of the invoice under the matrix.
Add a parameter named invoice which get available values from the invoice field in the dataset.
Right-click the [Sum(invoice)] cell to add an action with “Go to report” option, and specify the same report with the parameter below:
Name: invoice
Value: [invoice]
Right-click the table to add a filter in the table:
Expression: [invoice]
Operator: =
Value: [@invoice]
If there are any misunderstanding, please elaborate the issue for further investigation.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support
Similar Messages
-
How to dynamically display the data from a table base on row selection of another table in ADF
Hi ,
I have a requirement in ADF. I need to change the data of a table based on row selection of another Table . Both the table have a Parent Child relationship between them. They have a common attribute say department_id.
For this I created bind variable in view object of employees table and wrote a where clause in the sql query using that bind variable. Then I created method for selection listener of department Table in java bean.
My method is following
public void onrowselection(SelectionEvent selectionEvent) {
RichTable richTable = (RichTable)selectionEvent.getSource();
CollectionModel tableModel = (CollectionModel)richTable.getValue();
JUCtrlHierBinding adfTableBinding = (JUCtrlHierBinding)tableModel.getWrappedData();
Object selectedRowData = richTable.getSelectedRowData();
JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding)selectedRowData;
oracle.jbo.domain.Number newVal = (oracle.jbo.domain.Number) nodeBinding.getAttribute("DepartmentId");
Number pallet = newVal.bigDecimalValue();
System.out.println("Selected values " + pallet);
BindingContext bindingctx = BindingContext.getCurrent();
BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("EmployeesView1Iterator");//access the iterator by its ID value in the PageDef file
ViewObject vo =dciter.getViewObject();
vo.setNamedWhereClauseParam("DepartmentId", pallet);//enter your value
vo.executeQuery();
It is printing the selected value of department id from department table in the log. But it is not able to pass the value to employees view. It is showing the following error in the log
"Definition DepartmentId of type Variable is not found in EmployeesView1."
I will be very thankful if someone helps me to solve this errror or is there any other way to achieve the same requirement.
Thanks
NileshNote quite sure why you simply wont create a viewlink for the viewobject the tables are based on..
The viewlink attribute will be based on the departmentId and it's a simple master detail relationship which automatically uses ppr.
However, if both tables are on the same page; using your hack about;
On the underlying viewobject, define a viewcriteria e.g. "listById" and set your bind variable here.
I would bind table two to a RichTable component:
RichTable t2;
public void onrowselection(SelectionEvent selectionEvent) {
RichTable richTable = (RichTable)selectionEvent.getSource();
CollectionModel tableModel = (CollectionModel)richTable.getValue();
JUCtrlHierBinding adfTableBinding = (JUCtrlHierBinding)tableModel.getWrappedData();
Object selectedRowData = richTable.getSelectedRowData();
JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding)selectedRowData;
oracle.jbo.domain.Number newVal = (oracle.jbo.domain.Number) nodeBinding.getAttribute("DepartmentId");
Number pallet = newVal.bigDecimalValue();
System.out.println("Selected values " + pallet);
refreshTable2(pallet);
BindingContext bindingctx = BindingContext.getCurrent();
BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("EmployeesView1Iterator");//access the iterator by its ID value in the PageDef file
ViewObject vo =dciter.getViewObject();
vo.setNamedWhereClauseParam("DepartmentId", pallet);//enter your value
vo.executeQuery();
private void refreshTable2(Number pallet){
RichTable x=getT2();
CollectionModel cm=(CollectionModel)x.getValue();
JUCtrlHierBinding jcb=(JUCtrlHierBinding)cm.getWrappedData();
BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
DCIteratorBinding dciter = bindingsImpl.findIteratorBinding(jcb.getName()+"Iterator");
ViewObject vo =dciter.getViewObject();
ViewCriteriaManager vcm=vo.getViewCriteriaManager();
ViewCriteria vc=vcm.getViewCriteria("listById");
vo.applyViewCriteria(vc);
vo.setNamedWhereClauseParam("DepartmentId",pallet);
vo.executeQuery();
AdfFacesContext.getCurrentInstance().addPartialTarget(getT2()); -
Multiple Details Sections in the same report
I'm trying to take two different columns from a fact table, and display them in one column on the report. So I'll then have the charge quantities (grouped and summarized) listed above the charge amounts (grouped and summarized) across months (columns).
Is there any way to have multiple detail sections in the same report, something like below? I tried sub reporting, but you can't subreport a subreport. I also tried cross tabs, but they're not flexible enough in the groupings I'm looking for.
Report Header
Group Heading 1
Details
Group Footing 1
Group Heading 1
Details
Group Footing 1
Report Footer
Thanks!!Hi,
Inorder to create new Group Header sections like Group Header a and Group Header b.There are two options
->In the design mode of the crystal reports,Rt.click on the Group Header section-Choose insert section below
OR
->From the Expert tool bar->select the Selection Expert,choose the Group Header->click insert button -
Adding a single table without a logical join to another table (OBIEE 10g)
Sometimes I want to just display a single table without a logical join to another table in the repository. However, everytime I move it to the Business Model and Mapping layer and perform a Global Consistency Check, it tells me that it needs a logical join and I am forced to create another table to join to it. Thus creating a dimension-fact relationship. There are times I don't need this relationship and just want to display some data. Is there anyway to get around this?
Thanks in advance!Yes,You have to create a join.You cannot take single table to BMM layer.You can create an alias of the table.Join this alias and base table through any common column and take both tables to BMM and desired table to presentation layer.
Another way is to create a view in physcial layer.Write a select statement like
Select primary_key from Table
Where primary_key is primary key of base table.Join this view ith base table and repeat the steps defined for Alias.
Regards,
Sandeep -
I need to copy data from a table in one database (db1) to another table in
Hi
I need to copy data from a table in one database (db1) to another table in another database (db2).
I am not sure if the table exists in db2,,,if it doesnot it needs to be created as well data also needs to be inserted...
How am I supposed to this using sql statements..?
I shall be happy if it is explained SQL also...
Thanking in advanceHow many rows does the table contains? There are manyway you can achieve this.
1. export and import.
2. create a dblink between two databases and use create table as select, if structure doesnot exists in other database, if structure exists, use, insert into table select command.
example:
create a dblink in db2 database for db1 database.
create table table1 as select * from table1@db1 -- when there is no structure present
-- you need to add constraints manually, if any exists.
insert into table1 select * from table1@db1 -- when there is structure present.
If the table contains large volume of data, I would suggest you to use export and import.
Jaffar -
Fact table with 2 time keys, measures showing together in the same report
Hello,
I am using OBI EE and I have the following scenario: a fact table hold information about enquiries. An enquiry may or may not generate an appointment. So in my fact table I have two date columns: enquiry date and appointment booked date (not the date of the appointment itself, but when it was actually booked).
This raises a couple of questions. First question is: I can only have one logical FK to the Times table, how to create two LFKs for those 2 dates? Should I create a logical copy of the Times table in the BMM, along with another time dimension?
Second question is how to display both pieces of data in the same report. For instance, in a summary report per month I want to see the number of enquiries made and appointments booked in each month. Most likely they will be different numbers and refer to different rows in the database. What is the best way to model this in the BMM?
For instance, in October there were 10 enquiries, 8 of them were converted into appointments along with 3 enquires made in September. So, the report should show for October: number of enquires: 10, number of appointments: 11 (8 from October + 3 from September)
Sorry if this is a basic question but I couldn't find around any examples of this scenario.
Thanks,
LuisGenius, that works perfectly, thanks!
Just one issue that I noticed... I have other dimensions on that fact table, one of them is "channel". Channel is linked to a column in the original fact table, as is Number of Enquiries.
If I include Channel in a report that shows Number of Enquiries and Number of Appointments, the Number of Appointments column only shows zeros, while the Number of Enquiries column still shows the correct numbers:
Month Channel Enquiries Appointments
Jan 09 Email 100 0
Phone 120 0
Feb 09 Email 87 0
...Then I figured out that I needed to add a PFK for all dimensions to the aliased fact table, not only for the times dimension.
Thanks again
Luis -
Why do vector lines appear different in my Photoshop document compared to the PDF that was created using "Scripts > Layer Comps to PDF"? And how do I get them to look the same?
BOILERPLATE TEXT:
If you give complete and detailed information about your setup and the issue at hand, such as your platform (Mac or Win), exact versions of your OS, of Photoshop and of Bridge, machine specs, what troubleshooting steps you have taken so far, what error message(s) you receive, if having issues opening raw files also the exact camera make and model that generated them, etc., someone may be able to help you.
Please read this FAQ for advice on how to ask your questions correctly for quicker and better answers:
http://forums.adobe.com/thread/419981?tstart=0
Thanks! -
Sub-details in the same report at a double click
Hi All,
Can anyone let me know how to display the below details in the report?
Initially we can display the basic list with month details. Say we have 12 months (12 lines) in the output. Now if I double click on the month (say March), in the same report under the march month, it has to display the number of weeks (say 5 weeks). Is it possible to display the information using the normal ALV function modules.
Kindly do the needful.
Thanks in advance.
Regards
Ramesh.Hello,
You can use Hotspot for the month and Onclick command change the internal table with new entries and display this new internal table with Refresh Command.
Refer SALV_TEST_TABLE_REFRESH.
Thanks.
Nagendra -
In SSMS after creating the query Report, how to export excel the same report from SSMS
for Beginners in SSMS after the report is created , how to export the same report to excel, I did try the option to task and export and follow the procedure, this procedure does not export the same report, the one was created, unless I am missing some steps,
is there a way to do just like we do in SSRS go to solution explorer, and properties and add the Target Server URL or not
in SSMS,
after I save the report it saves in project , can some one please guide me how to do it, and what steps I am doing wrong,
any help will be great. I am not technical person, just starting to learn from internet.
thanks in advance.As you have said you are not a technical person try using Import Export wizard.
Refer this link
http://www.mssqltips.com/sqlservertutorial/203/simple-way-to-import-data-into-sql-server/
And another simplest one is to copy the result set from the query window. Right click the result and select "Copy with Headers".
Regards, RSingh -
How to create one filter for N views in the same report
Hello everybody,
I need to have the same filter for diferent views that I have in the same report. Anyone knows how to do it?
Thanks in advance
Mario MesquitaHi,
In India site, you can create a SMTP connector which point to the local ISP.
Thanks.
Niko Cheng
TechNet Community Support -
Hi I want to create a search form with drop down search criteria. This form should then search on the same site and display the search results. Is there HTML available for this? Or an oline site that I can use to build this form? I created a form in Jotform.com, but this form doesn't search the site, instead it sends me an e-mail. Do you have a solution for me? Thanks.
Hi I want to create a search form with drop down search criteria. This form should then search on the same site and display the search results. Is there HTML available for this? Or an oline site that I can use to build this form? I created a form in Jotform.com, but this form doesn't search the site, instead it sends me an e-mail. Do you have a solution for me? Thanks.
-
Is possible to have a script that makes a text randomly have caps and lower caps... i would love to create a kind of effect so it would look like manuscript - but it cannot be only the same letter in caps or lower caps - I wOuld NeEd oF SOmeTHing LikE This (random) - is it possibel?
Hi,
Sample with 2 regex:
Launching the 1rst regex:
Launching the 2nd regex: -
Creating a combined timeline based on several timelines in several tables
Hi,
I need to extract a timeline for a customer based on valid_from and valid_to dates in several tables.
For example: I have a table named customers with an id, a valid_from and a valid_to date and a table named contracts with an contrat_name, customer_id and valid_from and valid_to:
CUSTOMERS:
ID | VALID_FROM | VALID_TO
1 | 01.03.2010 | 01.01.4000
CONTRACTS:
CONTRACT_NAME | CUSTOMER_ID | VALID_FROM | VALID_TO
ContractA | 1 | 01.03.2010 | 01.10.2010
ContractB | 1 | 01.10.2010 | 01.01.4000
The following statement would now give me the correct timeline:
select cus.id customer, con.contract_name contract, greatest(cus.valid_from,con.valid_from) valid_from, least(cus.valid_to,con.valid_to) valid_to
from customers cus
inner join contracts con on cus.id = con.customer_id;
CUSTOMER | CONTRACT | VALID_FROM | VALID_TO
1 | ContractA | 01.03.2010 | 01.10.2010
1 | ContractB | 01.10.2010 | 01.01.4000
That works, but I get a problem as soon as I have a point of time where there is no contract for a customer but I still would like to have these periods in my timeline:
Let's assume the following data and the same select statement:
CUSTOMERS:
ID | VALID_FROM | VALID_TO
1 | 01.03.2010 | 01.01.4000
CONTRACTS:
CONTRACT_NAME | CUSTOMER_ID | VALID_FROM | VALID_TO
ContractA | 1 | 01.05.2010 | 01.10.2010
ContractB | 1 | 01.12.2010 | 01.03.2011
What I would now get would be:
CUSTOMER | CONTRACT | VALID_FROM | VALID_TO
1 | ContractA | 01.05.2010 | 01.10.2010
1 | ContractB | 01.12.2010 | 01.03.2011
But what I would like to get is the following:
CUSTOMER | CONTRACT | VALID_FROM | VALID_TO
1 | null | 01.03.2010 | 01.05.2010
1 | ContractA | 01.05.2010 | 01.10.2010
1 | null | 01.10.2010 | 01.12.2010
1 | ContractB | 01.12.2010 | 01.03.2011
1 | null | 01.03.2011 | 01.01.4000
What I do not want to do is to generate a result with contract = null any time there is no contract since I actually want to join the timeline of several different tables into one and it would therefore become very complicated to assume things based on what data can or can not be found in one specific table.
Thanks for any help or ideas,
Regards,
ThomasHi, Thomas,
Thomas Schenkeli wrote:
... Is this the way you meant? Because I actually didn't have to change anything about part (b) of the statement since non-matching results were excluded by the where-clause "OR valid_from < valid_to" in the final select anyway.You're absolutely right. Sorry about the mistakes in my last message. I'm glad you solved the problem anyway.
Beware of SELECT DISTINCT . Adding DISTINCT causes the system to do extra work, often because the query was doing something wrong and generating too many rows, so you pay for it twice. In this case, the join conditions in (b) are different from (a) and (c), so b is generating too many rows. The DISTINCT in the main query corrects that mistake, but it would be more efficient just to avoid the mikstake in the first place, and use the same join conditions in all 3 branches of the UNION. (You could also factor out the join, doing it once in another sub-query, and then referencing that result set in each branch of the UNION.)
You can get the same results a little more efficiently, with a little less code, this way:
WITH union_data AS
SELECT MIN (ua.customer_id) AS customer_id
, NULL AS contract_name
, MIN (ua.valid_from) AS valid_from
, MIN (oa.valid_from) AS valid_to
, 'A' AS origin
FROM tmp_customers ua
JOIN tmp_contracts oa ON oa.customer_id = ua.customer_id
AND oa.valid_from >= ua.valid_from
AND oa.valid_to <= ua.valid_to
GROUP BY ua.id
UNION ALL
SELECT ub.customer_id
, ob.contract_name
, ob.valid_from
, ob.valid_to
, 'B' AS origin
FROM tmp_customers ub
JOIN tmp_contracts ob ON ob.customer_id = ub.customer_id
AND ob.valid_from >= ub.valid_from
AND ob.valid_to <= ub.valid_to
UNION ALL
SELECT uc.customer_id
, NULL AS contract_name
, oc.valid_to AS valid_from
, LEAD ( oc.valid_from
, 1
, uc.valid_to
) OVER ( PARTITION BY uc.id
ORDER BY oc.valid_from
) AS valid_to
, 'C' AS origin
FROM tmp_customers uc
JOIN tmp_contracts oc ON oc.customer_id = uc.customer_id
AND oc.valid_from >= uc.valid_from
AND oc.valid_to <= uc.valid_to
SELECT *
FROM union_data
WHERE contract_name IS NOT NULL
OR valid_from < valid_to
ORDER BY customer_id
, valid_from
You may have noticed that this site normally doesn't display multiple spaces in a row.
Whenever you post formatted text on this site, type these 6 characters:
\(small letters only, inside curly brackets) before and after each section of formatted text, to preserve spacing. -
Update one row based on a row from another table
Hi,
I have two tables which are having the same field but with a different name.
CREATE TABLE FAVE_CODE2_NEW_JOIN
BANKID VARCHAR2(5 BYTE) NOT NULL,
CUSTOMERID VARCHAR2(12 BYTE) NOT NULL,
SIXID VARCHAR2(12 BYTE) NOT NULL,
FAVCODE VARCHAR2(13 BYTE),
IDX NUMBER(5),
DEFAULTT NUMBER(1)
TABLESPACE PORTFOLIO_FAVORITE
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
CREATE TABLE SUBSCRIPTION
SUBSCRIPTIONID RAW(16) NOT NULL,
APPID VARCHAR2(64 BYTE) NOT NULL,
DEVICEID VARCHAR2(64 BYTE),
SUBSCRIBERID NUMBER NOT NULL,
TIME_REGISTERED TIMESTAMP(6) DEFAULT SYSTIMESTAMP NOT NULL,
TIME_LAST_USED TIMESTAMP(6) DEFAULT SYSTIMESTAMP NOT NULL,
SUBSCRIPTION_TYPE VARCHAR2(30 BYTE) NOT NULL,
SUBSCRIPTION_INFO VARCHAR2(512 BYTE)
TABLESPACE PORTFOLIO_FAVORITE
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
SUBSCRIPTION_INFO in SUBSCRIPTION is equal to SIXID in FAVE_CODE2_NEW_JOIN. They have the same value
In FAVE_CODE2_NEW_JOIN table there is also a FAVCODE filed.
Now i want to find out the record from VE_CODE2_NEW_JOIN which are having the same sixid like SUBSCRIPTION_INFO in SUBSCRIPTION and then replace that SUBSCRIPTION_INFO with the value in FAVCODE
Here are some sample from both tables:
SUBSCRIPTION:
B31E5F5D3CB6 RIe9pnbe7BtA8IuQ BB2-58CA815F9958 21 2012-01-10 19:18:39 2012-01-11 12:24:04 FT FSB0650444
010FB3AE74AE RIe9pnbe7BtA8IuQ 845-AD375E95ED90 21 2012-01-12 08:31:47 2012-01-24 08:53:09 FT FSB0650444
6119E731A26F RIe9pnbe7BtA8IuQ 76A-DAD2E359BF3F 113 2012-01-04 00:25:05 2012-01-19 16:17:21 FT FSB0632948
FAVE_CODE2_NEW_JOIN:
08999 191111111111 FSB0650444 SWB0553263 11 0
As you see they both have the same 'FSB0650368' but i want to replace this code with the corresponding FAVCODE in FAVE_CODE2_NEW_JOIN which is 'SWB0553263'.
I hope you have got what i mean, please tell me to explain more if you have any problem to understand what i mean.
Many thanks in Advance!
/ HesamHesam wrote:
hi,
I'm trying this code:
update subscription a
set a.subscription_info =
select b.favcode
from fave_code2_new_join b
where b.sixid = a.subscription_info
where exists
select b.favcode
from fave_code2_new_join b
where b.sixid = a.subscription_info
)but its taking a lot of time. Until now 10 minutes and lots of presure on the CPU!!
Can we optimize this or its just due to the number of records?
Edited by: Hesam on Mar 25, 2013 3:01 PMSo now you are getting into performance issues?
I would suggest you read {message:id=9360003} and post the necessory details so that we can see what can be improved and how. -
Update 1 column,1 single table based on where results of multiple tables
I would like the my_id column in 1 table updated to the static value of 247 for my_id stored in the 1 single table based on the where clause, which uses the my_id column in it.
The update statement updates all rows in table1, instead of just the rows where
the condition ( (b.my_id=a.my_id)
and ( b.my_name like 'OIS SrClerk%')
and (a.f_id=m.f_id)
and (trunc(m.cr_time) < '02-Apr-2008')) is true
What needs to be changed?
update table1 a
set a.my_id=247
from table1 a, table2 b, table3 m
where
(b.my_id=a.my_id)
and ( b.my_name like 'OIS SrClerk%')
and (a.f_id=m.f_id)
and (trunc(m.cr_time) < '02-Apr-2008')Are you looking for this?
UPDATE table1 A
SET A.my_id = 247
WHERE EXISTS (SELECT 'x'
FROM table2 b,
table3 M
WHERE b.my_id = A.my_id
AND b.my_name LIKE 'OIS SrClerk%'
AND A.f_id = M.f_id
AND TRUNC (M.cr_time) < to_date('02-apr-2008 00:00:00','dd-mon-yyyy HH:MI:SS') )changed date string to to_date
Message was edited by:
devmiral
Maybe you are looking for
-
TS4268 Why can't I use my existing email for Face Time on my IPad?
Why can't I use my existing email in Face Time and Instant Message?
-
Hi all, This post is the end of a weeks long hair pulling, to save other people the pain of my past week, here is a quick rundown of the issue and the solution that for us at least worked. All the software is legit and fully updated btw, before peopl
-
hi! i have downlowded Java mail API from sun site.how to proceed now.I have already installed JDK on my machine.
-
We are developing a custom application using Developer 6. The application is web enabled using Oracle Application Server 4.0.7 and Developer Server on a Solaris 2.6. This application is an extranet for company use only. The problem that requires the
-
I will be traveling in the far east for several months and have been told I can use my phone but have to unlock it. Any ideas??