Pass detail items from a SSRS Matrix report - matrix

In a SSRS matrix report there is a need to click a data value and go to another report to display the details of that aggregate data.
Here is the table:
student_id course School
1 English A
2 Math A
3 English B
4 English A
The corresponding SSRS report is as following:
School English Math
A 2 1
B 1 0
requirement is: click 2 (school A with English) it will go to another report as below:
Student_id School
1 A
4 A

You need to create a sub report that takes the required parameters. It's hard to read the question as the formatting of your data sample needs cleaning up but let's assume your subreport will take parameters aclled pSchool and pSubject with values such as 'School A' and 'English'.
Create a new report and name it (e.g. mySubReport) that accepts the required parameters (e.g. pSchool and pSubject). Add whatever you need to this report so it shows the correct results and and test it as normal. This is the report that will get called when you click on the data value.
Once this is working, got back to your original report, right-click the matrix cell you want to be able to click on and click "Textbox properties".
Click the "Action" tab and choose "Go to report".
Select the subreport you created earlier (mySubReport).
In the area below the report selection, add your parameters (e.g. pSchool and pSubject) and set the values from the dropdown list. The dropdown list will show you dataset fields that your matrix is based on.
That's it!
Now when you run the man report and lick on a value, it will pass the fields you from the cell you selected to the subreport and display the results.
If this does not help, edit you question so the structure of your data is clear and I will give a full example.

Related

Oracle Apex 5.1: Report column based on LOV(List of values) showing returned value not display value

I have created an interactive report with a form. In the form I have two select lists. The first select list is a list of values defined in the shared component. And the second select list is another list of values which is also defined in the shared component but this select list populates its LOV based on the selected item in the first select list.
Let the names of the select lists are:
Region.
Country(which is dependent on the selected item in Region field).
Now when I press save/create button in the form, a row is created in the report. The Region column and Country column in the report are both "Plain Text(based on List of Values)". But what I see is the Region column is showing the correct display value of the LOV but the Country column is showing the returned value of the LOV.
I want both of these columns show the display values rather than the returned value. Could anyone help me find the solution?
Are you using the same LOVs in form and interactive report? If so and in the conditional LOV (countries) you refer your form item (ex. PX_REGION) it will not work correctly in IR. Probably IR is showing the returned value because the option "show extra values" is checked.
If this is the case my suggestion is to change your IR and instead of a "Plain Text(based on List of Values)" you make it plain text and change the query to an inline query in IR query to obtain the value you want to show.
If you don't want/like to put your LOV queries in different places I suggest you to use this approach shared by Nick Buytaert
Hope this helps you solve your problem.

Show tablix total outside of table

I have a weekly report which totals anywhere from 200 - 1000 rows of data. For my accounting people, the total is the only value of import as they simply use it for accrual purposes. I would like to either have the total appear at the top of the report or in a separate text box indicating this is the total for the report. Does anyone have a good idea on how to accomplish this?
If I understand correctly you need to get the result of some aggregate function on a tablix shown in a textbox outside the tablix.
That can be achieved by placing a textbox anywhere on the report, and in the expression for that textbox add a reference to the dataset you need to aggregate, e.g.:
=Sum(Fields!SomeValue.Value, "myDataSet")
Where SomeValue is the name of the field you need to aggregate, and myDataSet is the name of the DataSet that fieldis in.
Your question has already been answered by the other answer. Just as an alternative, you could try one more thing.
On the "details" row group(which appears by default), right click and choose "Add Total".
This will appear in a separate text box outside the report.

PowerDesigner 16 - generate a list of tables and column definitions

Does anyone know how to generate a simple report showing all tables in a model, and their columns (name and a few attributes including NOT NULL)? I worked through the Report Wizard and got totally confused.
I didn't find the previous answer to be very clear.
Select the model from the object browser.
Select Report -> List Report Wizard from the main menu.
Select "EntityAttribute" (logical model) or "Column" (physical model) in the Object Type field of the dialog box and click Next.
Select the columns to include in the report (example) and click Next.
Select the filter and/or sort columns, if any, and click Next.
Enter a name for the List Report and check the "Generate the list report to an external file" (example) if you want the report written to a file, and then click the Finish.

Creating a Form in APEX to set Variables in a Query for an Interactive Report

I am a relative APEX noob.
I'm running APEX 4.0 against a 10gR2 database.
I've written a query that takes a few inputs (two date fields, for start and end, and a text field for further filtering) and created a dynamic report out of it that works when I pull the input variables (:START_DATE, :END_DATE, :OFFICE) out of it or replace them with static values.
I want to create a form on a page that submits those values to the dynamic report page for use in the query to filter the results the user sees when he or she hits the report.
I'm not having much luck finding a good step-by-step example of this. I created a blank page with two Date Pickers and a LOV select dropdown, but am unsure how to best translate those values into the dynamic report.
Can somebody point me at the right documentation for this?
The following was developed using Apex 4.1 but apart from some cosmetic changes the principles should be the same.
The data comes from the standard scott.emp schema.
Overview
This is page 1, the user can enter an empno and\or a hiredate.
When submit is pressed the following report on a different page is displayed:
How it works
On page 1 I have created the three items shown. The text items are called them P1_EMPNO, and P1_HIREDATE. The action for the button is "Submit Page"
Still on page 1, create a branch with the following values:
This branch navigates to page 2 (which is yet to be developed) and sets the values of items on page 2 with the values from page 1.
Create a new page, in this example this will be referred to page 2.
On page 2 create a new interactive report using the following query:
select e.*
from emp e
Next create two text items in the same region as the report and call these :P2_EMPNO and :P2_HIREDATE. I have found it useful to show these items during development so you can see that the correct values are being passed through to the page. You can always set them as hidden once you happy with the report.
Finally amend the query used by the interactive report to use the values supplied by page 1
Run the application.
You want to reference your page items in your query, which means you'll have to submit your page before your query will pick up the session state of them. What I do when I provide a small parameter form, is to put a button up there as well (i.e. labeled 'Query'), which does a submit.
In your report you can then reference your items. If for example you have 2 items P1_DATE_START and P1_DATE_END, your query could look like:
SELECT firstname, lastname, job
FROM employees
WHERE employment_start BETWEEN to_date(:P1_DATE_START) AND to_date(:P1_DATE_END);

Interactive sorting to matrix report in reporting services 2005

i created a matrix report that have 2 rows and 6 columns.
picture 1 (see album picture in the bottom)
i want so active a interactive sort on the last columns that named 'Matrix1_ObjName'.
to do so i clicked right click on the field and go to properties > interactive sort.
than i entered the parameters like in the picture 2 (see album picture in the bottom).
i have done some research and the closes answer was posted on this link
the interactive sort doesn't work.
to be clear i want that the LoginName column will be sorted by the grade that shown in the objName row.
sea picture 3 (see album picture in the bottom)
album pictures
thanks to all...
I never use interactive sort. When I want to be able to change sorting behavior, I do it with a parameter. Create a new report parameter and specify values. Use something descriptive for the labels, then I use integers beginning at zero for the values. After the param is set up right click on a field in report design and go to Row Group then Group Properties. Select Sorting from the menu and build an expression with an if statement similar to this:
=IIf(Parameters!sort.Value=0,Fields!First_Sort.Value,Fields!Second_Sort.Value)
Might help you.

Resources