Multiple Rows for Same Value in Matrix Report
Hello
I am trying to create a matrix report that shows different page for each Category. Report looks like follows:
Page1( for Category '1')
Agent |
Calls |
Sales
TestAgent1 18
3
TestAgent1 5
1
Page2( for Category '2')
Agent |
Calls |
Sales
TestAgent1 26
5
TestAgent1 13
2
The issue is as you can see in above table, that i am getting repeated rows for same agents. I have tried making a parent group on Agent but it would still keep showing multiple rows. Ideally, it should show each agent only once in each page.
Any help would be appreciated.
PS: I am new to SSRS and this is my first time on microsoft blog, so i apologize if i wasn't able to follow the protocols/culture here.
Thanks
Hi M Adnan,
According to your description, you want to show a total Calls and total Sales for same agent so that it has only one row for each agent in your category group. Right?
In this scenario, if you only have a row group for category, it will show all “detail rows” in this groups even the agent of these rows are same one. So we can add a row group, set those detail rows group by agent and use Sum function to get the total Calls
and Sales. It looks like below:
If we want to display each Page in horizontal, we just need one Category column group for grouping rows and use sum function to get total Calls and Sales for each agent. It looks like below:
Reference:
Understanding Groups (Report Builder and SSRS)
If you have any question, please feel free to ask.
Best Regards,
Simon Hou
Similar Messages
-
Update multiple row for different values
hi,
Please provide me the sql query to update multiple row in a table with different values.
i need to change the old date to new date
we have only 3 column id,name,old date.now i need to update the old date to new date
ID name old date new date
1 A 2012-12-20 12/7/2012
2 B 2012-12-20 12/9/2012
3 c 2012-12-20 12/5/2012
thank you.Here are two ways to do this. Thanks to ranit for the table creation script, which I adapted.create table test_x
as
select 1 id, 'A' name, to_date('2012-12-20','yyyy-mm-dd') old_date
from dual UNION ALL
select 2 id, 'B' name, to_date('2012-12-20','yyyy-mm-dd') old_date
from dual UNION ALL
SELECT 3 ID, 'C' NAME, TO_DATE('2012-12-20','yyyy-mm-dd') OLD_DATE
from dual;First method using MERGE:MERGE INTO TEST_X O
USING (
select 1 id, to_date('12/7/2012','mm/dd/yyyy') new_date
from dual UNION ALL
select 2 id, to_date('12/9/2012','mm/dd/yyyy') new_date
from dual UNION ALL
SELECT 3 ID, TO_DATE('12/5/2012','mm/dd/yyyy') NEW_DATE
FROM DUAL
) n
ON (O.ID = N.ID)
WHEN MATCHED THEN UPDATE SET OLD_DATE = n.NEW_DATE;Second method using UPDATE:UPDATE TEST_X SET OLD_DATE =
CASE WHEN ID = 1 THEN TO_DATE('12/7/2012','mm/dd/yyyy')
WHEN ID = 2 THEN TO_DATE('12/9/2012','mm/dd/yyyy')
WHEN ID = 3 THEN TO_DATE('12/5/2012','mm/dd/yyyy')
END
where id between 1 and 3;
You probably don't want to use these methods.*
You say the "user" will enter these values. Will he always enter exactly 3 values?
The "user" will enter values into a screen I suppose. What language is the user interface programmed in? -
Counting one of multiple rows with same value for same ID
Hello,
I have this query:
SELECT
count( case when EXISTS (
SELECT *
FROM business_log bl, subject su
WHERE su.ID_SUBJECT = s.ID_SUBJECT
and bl.id_subject = su.id_subject
AND bl.value = 'Solved'
then 1 else null end) num_solved
FROM subject s
It is posible that one subject is more than once 'Solved' in table BUSINESS_LOG
I want to count only one row solved for one subject.
I must to use only SUBJECT table in the main query because of other counts.
Thank You very much.
Regards
Milos
Message was edited by: 2796614so in case you have no solved entry...you get NULL back instead of 0.....
and....there is no need for the group by ....as you are only looking for one subject
SELECT COALESCE((SELECT max(1)
FROM business_log bl
WHERE bl.id_subject = s.id_subject
AND bl.value = 'Solved'),0) num_solved
FROM subject s
but....I would like to have a proof, that this one is faster than the outer-join solution.
So...perhaps we'll see an execution plan for both of them.
corrected....missing bracket -
Merge multiple rows of same ID into Single row
Hi All,
I need the requirements of merging multiple rows of same ID as single row.
My Table Data:
ID Language1 Language2 Language3 Language4
1001 NULL JAPANESE NULL NULL
1001 SPANISH NULL NULL NULL
1001 NULL NULL NULL ENGLISH
1001 NULL NULL RUSSIAN NULL
Required Output Should be,
ID Language1 Language2 Language3 Language4
1001 SPANISH JAPANESE RUSSIAN ENGLISH
Please help me to achieve this output.
Tried grouping but its not working also producing the same result.
Thanks.
Live freee....Joy forever................ :)Try the below:
create Table Test_Sample(ID int,Language1 varchar(50), Language2 varchar(50), Language3 varchar(50), Language4 varchar(50))
Insert into Test_SAmple Values(1001,NULL,'JAPANESE', NULL, NULL),
(1001,'SPANISH', NULL, NULL, NULL),
(1001,NULL, NULL, NULL, 'ENGLISH'),
(1001,NULL, NULL, 'RUSSIAN', NULL)
Select ID,MAX(Language1),MAX(Language2),MAX(Language3),MAX(Language4)
From Test_Sample
Group by ID
Drop table Test_Sample -
*a bit urgent * How to take multiple rows of same input?
Hi,
I need to make an user interface which takes multiple rows of same input.
For eg.. online eGreetings sites..
You select the the number of eCard receipents froma drop down and the page refreshes and that many number of text fields appear.. where you can put in multiple addresses..
Its like a dataTable.. but instead of showing the data it should input data...in each row
I hope I could clarify myself..
I would like to know
- how to map the fields to the managed bean
- how to create the user interface
Some could be appreciated..
Thanks and regardsarijit_datta wrote:
Its like a dataTable.. but instead of showing the data it should input data...in each rowThen just change h:outputText by h:inputText? -
How to make RECORD for saving multiple rows for each employee..
Hi,
How can I create a record for saving multiple rows for each employee... (parent child relationship)
I have created all required fields, then created a record, and then created a page. in that page i dragged-n-dropped a scroll area on that page and dropped all required fields from record into that scroll-area.
whats is happening that its saving ONE (the first) record fine, but for the second record its not storing EMPLID for that row..
Will I have to make some change at RECORD level ?
OR Will i have to make some configuration in parent component ?Hi, the problem is solved. The record will be created in same way. just create more then one keys (allowing to make composite key in DB table)
-
Getting wrong values for decimal value in Bex report
Hi,
I am getting some problem in Bexreport decimal values.
In ODS i am able to look the values for this key figure
(Total PO Release Val)= 140.692,00,the same value in Bex report looks like this $ 140,692.00.
Here one calculation is going with these above values
% Used = 'Total PO Release Val' / 'Target Value' * 100
as per ODS value calculation it is correct = 140.692/1000 * 100 =14.692
as per Bex it is coming like this = 140,692.00/1000 *100 = 142.692.
in Bex report Percentage valus is not considering value is taking as 140,692.00 rather than 140.692.I mean to say decemal values are ignoring while calculation in Bexreport.can you any please advice me how to comeout of this problem.Appreciate your help.
Regards
Ramesh<i> "(Total PO Release Val)= 140.692,00,the same value in Bex report looks like this $ 140,692.00."
</i>
How do you check the ODS value? The amount will only have two decimal places after it, so you can't have a value like 140.692,00. It seems to be an issue of user's decimal notation (where decimal is represented by comma, and thousand seperator by '.'). Go to user profile, change this setting (in default tab) to correct one (ie decimal being represented by '.') and login again and check it. The value that you see in ODS is 'one hundred forty thousand six hundred ninety two, the same that you get in Bex, only the representation is different). -
Reg:Multiple UOMs for same item
Hi,
How to define the multiple UOMs for same item.And the item should be converted in one UOM.
Iam using 9.0 PL.08Hi,
Please check SAP help file:
http://help.sap.com/saphelp_sbo900/helpdata/en/89/7ca0a701c64e4a97f4ea5a4edca8b2/content.htm?frameset=/en/44/c4c1cd7ca22e17e10000000a114a6b/frameset.htm
Thanks & Regards,
Nagarajan -
How to avoid multiple listing for same artist?
How to avoid multiple listing for same artist?
Sounds like there might be blanks in the artist name.
For instance "Lou Reed" and "Lou Reed_" will not match.
(Pretend the underscore _ is a blank).
Select all the Lou Reed songs, Get Info, and type "Lou Reed" in the artist field. That should fix it. -
Comma separated column into rows for each value
experts,
I have a two column table. The second column has comma separated string values. How can I put the values separate for each comma separated and make one row for each value?
example,
column1 | StringColumn
s1 | test, joy, happy
s2 | USA, England, India
I want the result to be like below
column1 | StringColumn
s1 | test
s1 | joy
s1 | happy
s2 | USA
s2 | England
s2 | India
thanks in advance
ebroHello ebro,
See the following for a possible solution:
http://gallery.technet.microsoft.com/scriptcenter/Convert-Small-CSV-Value-to-ffc142ff
Olaf Helper
[ Blog] [ Xing] [ MVP] -
How to insert multiple rows in same table at once
hi ,
How can I insert more than one row in the same database table on single submit button.
(i am using the ADF , EJB and Toplink for this example.)
EMPLOYEEand DEPARTMENT tables will hold a common coloum deptno
The method I have tried is as follows.
I have created the UI that holds EMPLOYEE(DETAIL) details and a DEPARTMENT(MASTER) table and I have created two separate bean classes which hold the getters and setters for the corresponding tables.
I have created a method in Department bean which will be called when we add the employee details
public String addEmpdetails() {
this.employeedetailslist.add(empdetails);
return null;
where employeedetailslist is a Arraylist and I want to pass the reference of employeebean in the array list.
But this method will fail as I need to create the new employee bean object every time when ever I need to pass.
How can I store values of multiple rows in bean.
In the EJB session bean how can I commit multiple EMPLOYEE rows and DEPARTMENT values at once.The use of &variable in a script is actually syntax for a "substitution variable" in the SQL*Plus tool (other tools may also do the same), not an inherent part of SQL or PL/SQL itself.
Whenever SQL*Plus is given a script it parses through it and if it encounters one of these it prompts for a value. This value is then substituted into the script before the script actually get's sent to the SQL or PL/SQL engine (process) on the database server. Once the script has gone to the database server it executes there and the results are passed back for SQL*Plus to display. However, the SQL and PL/SQL processes on the database server have no way to interface to the client machine, so they themselves cannot prompt for input from the client and you can't expect to prompt inside a loop as you are doing.
What you need is a user interface on the client that can prompt repeatedly for values and then re-send the script, or call a procedure on the database each time. This can be done using shell scripts or dos batch files (depending on your client being unix/dos based) or using a front end application tool such as Java, .NET, Powerbuilder, PHP, Application Express (APEX) etc. -
Row column group hiding in matrix report
Hi ,
I need to hide the repeated rows in matrix report,in below with red rounded (4%,4%) is coming twice for single resource.
I need to show only one 4% for this resource.How to do this in matric report.
thanks
bhupesh.rthose rows are not duplicates as far as SSRS is concerned as date values for them are different. So you need to change the logic at your backend query to return one out of these two records. Logic you alone can come up with as we dont know your business
rules, neither your tables and you've not posted anything barring a report screenshot.
Alternatively, if you want our help on this post your backend tables with some sample data and explain your rules for getting the required output.
Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs -
Sorting and null for monetary values in a report
All,
I think this should be an easy one, and I've just missed something obvious.
I have a standard report in APEX 3.2.1 that includes a column with a monetary amount in it. I want the column to show the UK Pound sign, be sortable, and show nulls where appropriate.
The issue I have is I can't find a way to achieve all 3 in a satisfctory way. As I see it the options would be:
1) In the SQL for the report, concat the pound sign to the column required, e.g. SELECT '£'||amount FROM....
The issue is that this makes this field a CHAR field, so sorting would not sort in the same way as for a number field.
2) Use the Number format FML999...etc. in the Column Attribute.
The problem with this is that this is a multi-country database, and the default monetary unit is set to the US dollar.
3) Use the HTML expression box in the Column attribute to display £#COL#
This fulfills the pound sign and retaining the number format, but unfortunately a null value is displayed as a £ sign with no numbers. I can't think how to get it to leave that value in the report as completely blank.
As I said, I'm sure I've missed soemthing obvious. If anyone can spot how to achieve this it'd be much appreciated.
Regards,
Jon.>
2) Use the Number format FML999...etc. in the Column Attribute.
The problem with this is that this is a multi-country database, and the default monetary unit is set to the US dollar.
>
The NLS currency symbol can be modified on the fly if you have some means of identifying user location/preference: {thread:id=990848} (ignore the last post)
However, it probably doesn't make sense to do that—£100 ≠ $100 (at least I hope not!)—unless there's some kind of conversion occurring in the report? Is there a currency stored along with the amount?
>
3) Use the HTML expression box in the Column attribute to display £#COL#
This fulfills the pound sign and retaining the number format, but unfortunately a null value is displayed as a £ sign with no numbers. I can't think how to get it to leave that value in the report as completely blank.
>
Use 2 columns, one for the amount, and one for the currency, with a switch to include or exclude the latter as necessary:
select
ename
, comm amount
, nvl2(comm, '£', null) currency
from
emp
where
job in ('SALESMAN', 'MANAGER')
ENAME AMOUNT CURRENCY
ALLEN 300 £
WARD 500 £
JONES
MARTIN 1400 £
BLAKE
CLARK
TURNER 0 £ Then use both columns in the Amount HTML Expression:
#CURRENCY##AMOUNT# -
Finalize() method being called multiple times for same object?
I got a dilly of a pickle here.
Looks like according to the Tomcat output log file that the finalize method of class User is being called MANY more times than is being constructed.
Here is the User class:
package com.db.multi;
import java.io.*;
import com.db.ui.*;
import java.util.*;
* @author DBriscoe
public class User implements Serializable {
private String userName = null;
private int score = 0;
private SocketImage img = null;
private boolean gflag = false;
private Calendar timeStamp = Calendar.getInstance();
private static int counter = 0;
/** Creates a new instance of User */
public User() { counter++;
public User(String userName) {
this.userName = userName;
counter++;
public void setGflag(boolean gflag) {
this.gflag = gflag;
public boolean getGflag() {
return gflag;
public void setScore(int score) {
this.score = score;
public int getScore() {
return score;
public void setUserName(String userName) {
this.userName = userName;
public String getUserName() {
return userName;
public void setImage(SocketImage img) {
this.img = img;
public SocketImage getImage() {
return img;
public void setTimeStamp(Calendar c) {
this.timeStamp = c;
public Calendar getTimeStamp() {
return this.timeStamp;
public boolean equals(Object obj) {
try {
if (obj instanceof User) {
User comp = (User)obj;
return comp.getUserName().equals(userName);
} else {
return false;
} catch (NullPointerException npe) {
return false;
public void finalize() {
if (userName != null && !userName.startsWith("OUTOFDATE"))
System.out.println("User " + userName + " destroyed. " + counter);
}As you can see...
Every time a User object is created, a static counter variable is incremented and then when an object is destroyed it appends the current value of that static member to the Tomcat log file (via System.out.println being executed on server side).
Below is the log file from an example run in my webapp.
Dustin
User Queue Empty, Adding User: com.db.multi.User@1a5af9f
User Dustin destroyed. 0
User Dustin destroyed. 0
User Dustin destroyed. 0
User Dustin destroyed. 0
User Dustin destroyed. 0
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin destroyed. 1
User Dustin destroyed. 1
User Dustin destroyed. 1
User Dustin destroyed. 1
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin destroyed. 2
User Dustin destroyed. 2
User Dustin destroyed. 2
User Dustin destroyed. 2
User Dustin destroyed. 2
User Dustin destroyed. 2
User Dustin destroyed. 2
User Dustin destroyed. 2
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
User Dustin destroyed. 3
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
User Dustin destroyed. 4
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
User Dustin destroyed. 5
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
User Dustin destroyed. 6
Joe
USER QUEUE: false
INSIDE METHOD: false
AFTER METHOD: false
User Dustin pulled from Queue, Game created: Joe
User Already Placed: Dustin with Joe
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
User Dustin destroyed. 7
INSIDE METHOD: false
INSIDE METHOD: false
USER QUEUE: true
INSIDE METHOD: false
INSIDE METHOD: false
User Dustin destroyed. 9
User Joe destroyed. 9
User Dustin destroyed. 9
User Dustin destroyed. 9
User Dustin destroyed. 9
User Dustin destroyed. 9
INSIDE METHOD: true
INSIDE METHOD: false
USER QUEUE: true
INSIDE METHOD: false
INSIDE METHOD: false
INSIDE METHOD: true
INSIDE METHOD: false
USER QUEUE: true
INSIDE METHOD: false
INSIDE METHOD: false
It really does seem to me like finalize is being called multiple times for the same object.
That number should incremement for every instantiated User, and finalize can only be called once for each User object.
I thought this was impossible?
Any help is appreciated!Thanks...
I am already thinking of ideas to limit the number of threads.
Unfortunately there are two threads of execution in the servlet handler, one handles requests and the other parses the collection of User objects to check for out of date timestamps, and then eliminates them if they are out of date.
The collection parsing thread is currently a javax.swing.Timer thread (Bad design I know...) so I believe that I can routinely check for timestamps in another way and fix that problem.
Just found out too that Tomcat was throwing me a ConcurrentModificationException as well, which may help explain the slew of mysterious behavior from my servlet!
The Timer thread has to go. I got to think of a better way to routinely weed out User objects from the collection.
Or perhaps, maybe I can attempt to make it thread safe???
Eg. make my User collection volatile?
Any opinions on the best approach are well appreciated. -
ME01 LSMW multiple record for same material issue.
Hi Experts,
I have an issue with multiple record for the same material and plant when I upload the data from the file. Lets I have the records.
Material Plant Start date Enddate Vendor Porg.
1 0010 20060101 99991231 2 0010
1 0010 20060101 99991231 3 0010
When I upload the above data there are 2 IDOCs created when I am using the method LSMW-IDOC method, but only last record is getting updated and the first one is not getting updated in ME01 souce list. But I am getting the success message for both IDOC in LSMW. So I am not sure how to fix this why only last record is updated and not other records??why do you have 2 idocs?
wouldn't be 1 idoc with 2 items be more logical?
1 record in structure E1EORDH
and 2 records in structure E1EORDM
I believe your 2 IDOCs get posted, but I think your 2nd Idoc overwrites the values entered from the first IDOC.
Maybe you are looking for
-
I am having trouble with my audio software and CoreAudio (seemingly)
Hi. I use my computer to run several audio-based programs on my Macbook such as Logic Pro, Ableton Live and junXion. Today, when practicing a laptop-based set with a friend, I used firewire into a Digidesign interface (I can't remember the exact make
-
I deleted the app from the muttitask as well. But once I open it and skip one song it does not stop? Haven't restarted my phone maybe somebody wants to run some diagnostics on it. But it is pretty frustrating. Have an iPhone 4 btw
-
i have made an xquery function library which incorporates the add_month function of sql. add_months($date as xs:dateTime,$value as xs:int) as xs:dateTime? But while using this function in a let clause in xquery: let $nextMonth:= ns1:add_months(fn:cur
-
Need to reintall PS CS5 on new computer after a crash. It was purchased/downloaded online. How do I get the serial number without my original purchase email? How do I download & reinstall?
-
Como eliminar imagenes de la biblioteca en Edge Animate ??
Hola . A ver si alguien puede ayudarme en como eliminar imagenes de la biblioteca activa de Edge animate ?? Ya que luego cuando guardo el codigo resultante , me guarda todas las imagenes y muchas son pruebas y que luego no quiero en la web. Y no cons