Sorting based on two columns in report
Hi,
we have one issue on sorting based on two columns in report.
In the report we are doing sorting on two columns(week_id and stage_name). I have attached the screen shot for the same. The sorting is first done on the week_id and then on the stage_name. The issue comes when we have no data for the stage 1 - Prospect in W1. The stage goes to the second position.
Please suggest if there is any work around to show the 1 - Prospect stage in W1.
Regards,
Ambika Nanda.
what is w1? where is screenshot? and is stage seoncd sort? if so what is the issue?
Similar Messages
-
Update column based on two columns
Hi,
MinValue MaxValue Desc
-1 -1
-1 1
-1 2
0 0
0 1
0 2
The above is my table which is having three columns MinValue, MaxValue, Desc. First two columns have data and I need to update the 3rd column 'Desc' based on two columns data.
I need to update like,
when MinValue=-1 and MaxValue=-1 then 'NotSpecified'
when MinValue=-1 and MaxValue=1 then 'Up to 1'
when MinValue=-1 and MaxValue=2 then 'Upto 2'
when MinValue=0 and MaxValue=1 then 'At lest 1'
when MinValue=0 and MaxValue=2 then 'At least 2'
when MinValue=0 and MaxValue=3 then 'At least 3'
The data in 'MaxValue' is like 1,2,3,4,5...50. So for each description it should append this value as mentioned above(till 'Up to 50', 'At least 50'). How can I do this with case statement?
Thanks,
Gangadhardeclare @T table ( MinValue int,MaxValue int, [Desc] nvarchar(100) );
insert @T ( MinValue, MaxValue )
values ( -1, 1 ) , ( -1, 1 ) , ( -1, 2), ( 0, 0), ( 0, 1), ( 0, 2)
select *
from @T
update @T
set [Desc] = case
when MinValue=-1 and MaxValue=-1 then 'NotSpecified'
when MinValue=-1 and MaxValue=1 then 'Up to 1'
when MinValue=-1 and MaxValue=2 then 'Upto 2'
when MinValue=0 and MaxValue=1 then 'At lest 1'
when MinValue=0 and MaxValue=2 then 'At least 2'
when MinValue=0 and MaxValue=3 then 'At least 3'
end
select *
from @T
T-SQL Articles
T-SQL e-book by TechNet Wiki Community
T-SQL blog -
Add Two Column in report ,Download and Delete
Hi Friends,
i have one item File Browser to use browse :P1_file_browser and i have create a Report
My Table Is
CREATE TABLE "ARM_DOC_CER"
( "ID" NUMBER,
"NAME" VARCHAR2(500),
"MIME_TYPE" CLOB,
"BLOB_CONTENT" BLOB,
"SUBJECT" VARCHAR2(500)
i jus want to add two column in my report
1--Download
2--Delete
When i click on download then download file and when i click on delete then delete corresponding file.
How can i do this.
ThanksHi,
You can use concat function or also '||' to combine two columns.
1. with concat-
concat("D4 Product"."P01 Product","D4 Product"."P02 Product Type")
2. With '||' operator
"D4 Product"."P01 Product" || '-'||"D4 Product"."P02 Product Type"
(Remove '-' if not required)
This should resolve. Hope this helps
Regards
MuRam -
Parent-Child hierarchy based on two-column key
Hello
Is it possible to create a parent-child hierarchy, if the primary key of the table consists of two columns?
My table looks like:
TRACE_ID | DIAG_ID | SUPER_DIAG_ID
with TRACE_ID and DIAG_ID as PK.
If I define only DIAG_ID as PK, I can add a logical dimension (PC-hierarchy) without problems.
However when I also add TRACE_ID to my PK, I cannot select a member key in the new logical dimension window and therefore not create a logical dimension.
Is this a limitation of OBIEE and I have to merge the two colums (which would be rather bad, as there are FK relations to DIAG_ID) or is there a solution?
Regards
MatthiasDear Gowtham ,
I am very well aware of the level based hierarchy available in BO .
The issue that i have raised is all about the Parent Child Hierarchy which creates the recursive query.
I.e Every Parent has a child and that child can be parent of some other . (See the original example for more illustration) -
BC4J Objects with PKs based on two columns using multiple sequences
I have implemented a BC4J object that is based on a DB table that has two columns as the primary key. For example Table A's primary key is Group and ID and there is a DB sequence for each Group.
I use the BC4J object using servlets and JSPs and I have been able to implement an Update form.
I now want to implement a Create (New) form. I've read forum postings and info on the help regarding using the SequenceImpl class to override the EntityImpl object's create method as shown below:
protected void create(AttributeList attributeList)
super.create(attributeList);
SequenceImpl mySeq = new SequenceImpl("MY_SEQ",getDBTransaction());
setMyObjectId(mySeq.getSequenceNumber());
But as you can see I need to know the value of the group attribute before I can get the next value sequence:
For new EO belonging in Group1 I need sequence from "GROUP1_SEQ", Group 2 from "GROUP2_SEQ", etc.
I would like to put this code in the Entity Object where it belongs. I guess my problem is simply how to create a new row in the View Object with a passed parameter which is the value of Group.
Thanks in advance!Angelo:
How is the EO suppose to receive the group id? Is it from the view row? If so, the VO can pass that group id to the EO through the attribute list and calling the
public Row createAndInitRow(AttributeList nvp);
API.
Example code would be:
ViewObject myVO;
// myVO is initialized
AttributeList nvp = new oracle.jbo.NameValuePairs();
// GroupID is the attr name of the Group ID
nvp.setAttribute("GroupID", <some-value>);
Row row = myVO.createAndInitRow(nvp);
If you do that the create(AttributeList attributeList) method of the EO will receive the GroupID value coming from the VO.
Then, you can use that for your sequence.
Thanks.
Sung -
Unique row based on two columns and single column
Dear Members,
I have a table which contains duplicate rows, for which a query should be able to fetch the unique row from the table. Here the unique is not based on one column, but it should be on two columns and also check for uniqueness on one column.
create table addr ( firstname varchar2(10), lastname varchar2(10), area varchar2(3));
insert into addr values('bob', 'james', '1');
insert into addr values('bob', 'james', '1');
insert into addr values('harry', 'bert', '1');
insert into addr values('jimmy', 'bert', '1');
insert into addr values('sam', 'mac', '1');
insert into addr values('sam', 'knight', '1');
insert into addr values('tom', 'sand', '1');
insert into addr values('cat', 'mud', '1');
The output of query should contain 3 rows.
bob - james
harry - bert or jimmy - bert [ either one of them, but not both ]
sam - mac or sam - knight [ either one of them, but not both ]
tom - sand
cat - mud
SELECT firstname, lastname as total from addr WHERE area = '1' GROUP by firstname,lastname; This does not take of single column duplication..
Any suggestions..SQL> with t_data
as
select 'bob' as firstname, 'james' as lastname, '1' as area from dual union all
select 'bob', 'james', '1' from dual union all
select 'harry', 'bert', '1' from dual union all
select 'jimmy', 'bert', '1' from dual union all
select 'sam', 'mac', '1' from dual union all
select 'sam', 'knight', '1' from dual union all
select 'tom', 'sand', '1' from dual union all
select 'cat', 'mud', '1' from dual
SELECT
firstname,
lastname,
area
FROM
SELECT
t.*,
row_number() over(partition BY firstname order by 1) rn,
row_number() over(partition BY lastname order by 1) rn1
FROM
t_data t
WHERE
rn = 1
AND rn1 =1 ;
FIRSTNAME LASTNAME AREA
bob james 1
cat mud 1
jimmy bert 1
sam knight 1
tom sand 1
SQL> -
Qualified list item based on two columns
- fact table inludes following columns
key1
key2
measure1
In segment designer, update counts:
the query must counts two columns "key1 and key2" that key1 and key2 together must be distinct.Here you go:
SQL> WITH bill AS
2 (
3 SELECT 1000 AS billno, 101 AS advertiserid, 102 AS agencyid, 5000 AS total_value FROM DUAL UNION ALL
4 SELECT 1001, 101, 103, 5000 FROM DUAL UNION ALL
5 SELECT 1002, 101, 102, 1000 FROM DUAL
6 ), account AS
7 (
8 SELECT 101 AS account1_id, 102 AS account2_id, 'John' AS name, 50 AS empid FROM DUAL UNION ALL
9 SELECT 101, 103, 'James', 40 FROM DUAL UNION ALL
10 SELECT 101, 105, 'Joe', 60 FROM DUAL
11 )
12 /* End Sample Data */
13 SELECT a.name
14 , a.empid
15 , a.account1_id
16 , a.account2_id
17 , SUM(b.total_value)
18 FROM account a
19 JOIN bill b ON a.account1_id = b.advertiserid
20 AND a.account2_id = b.agencyid
21 GROUP BY a.name
22 , a.empid
23 , a.account1_id
24 , a.account2_id
25 ;
NAME EMPID ACCOUNT1_ID ACCOUNT2_ID SUM(B.TOTAL_VALUE)
John 50 101 102 6000
James 40 101 103 5000 -
Compare two tables based on two columns
Hi,
my tables looks like this:
Desc Table A (account)
Account1_id
Account2_id
name,
empid
Table B (Bill )
BillNo
Advertiserid
agencyid
total vvalue
I need to pick up total value from table B where the unique combination of advertiser-Agency id is the same as the given account1_id -Account2_id combination in table A for each employee id.
In other words my output should be like
Empid | Account_id (should be same as advertiserid)| Account2_id (same as agencyid) | sum(total_value) for this adv-agency combination.....
objective: Get the total value from table B for each unique account1-account2 combination (advertiser-agency in other words) .
I am not sure if I should use a coreelated subquery or how to handle the situation....Right now I am just checking the two columns separately like this:
select.......from a,b
where b.advertiser_id = a.account1_id and b.agencyid = b.account2id
Is it correct to do so? I have a feeling that I am missing something if I join them seperately like this......Any advice on this?
I am using Oracle 10g. Hope I am clear.Please let me know. Thankx in advance.Here you go:
SQL> WITH bill AS
2 (
3 SELECT 1000 AS billno, 101 AS advertiserid, 102 AS agencyid, 5000 AS total_value FROM DUAL UNION ALL
4 SELECT 1001, 101, 103, 5000 FROM DUAL UNION ALL
5 SELECT 1002, 101, 102, 1000 FROM DUAL
6 ), account AS
7 (
8 SELECT 101 AS account1_id, 102 AS account2_id, 'John' AS name, 50 AS empid FROM DUAL UNION ALL
9 SELECT 101, 103, 'James', 40 FROM DUAL UNION ALL
10 SELECT 101, 105, 'Joe', 60 FROM DUAL
11 )
12 /* End Sample Data */
13 SELECT a.name
14 , a.empid
15 , a.account1_id
16 , a.account2_id
17 , SUM(b.total_value)
18 FROM account a
19 JOIN bill b ON a.account1_id = b.advertiserid
20 AND a.account2_id = b.agencyid
21 GROUP BY a.name
22 , a.empid
23 , a.account1_id
24 , a.account2_id
25 ;
NAME EMPID ACCOUNT1_ID ACCOUNT2_ID SUM(B.TOTAL_VALUE)
John 50 101 102 6000
James 40 101 103 5000 -
Update multiple rows based on two columns in same row
I have a 1000 rows in a table I would like to update with a unique value. This unique value is a cocatenation of two columns in teh same row.
Each row has a (i) date and a (ii) time and a (iii) date_time column. I would like to update the date_time (iii) column with a cocatenation of the (i) date and (ii) time columns.
I know how I would update a single row but how can I update multiple rows with a cocatenation of each of the two columns - i.e put a different value into the date_time column for each row?this?
update table tab_name
set date_time =date||time
where your_condition -
How to split rows based on two columns..
Hi all...
I have a requirement.
I have product column, sell, purchace prices..(total of three columns) in a data set.
my data set is such a way that..if sale price exists...there is no purchase price and vice versa..
I need too present in a report ,two tables:
table 1 consists of only Sale price items
table 2 should contain only Pruchase Items.
Please see the below picture for clear understanding..
Is that doable? Where do we need to impose a condition?I tried to impose a condition but,it didnt seem to work
http://i51.tinypic.com/29xfdc6.jpg
Please help.Can you send me the template and xml file to [email protected]? I can try to help.
Did you try to filter out the records by the sale price or purchase price column not equal to null?
Thanks,
Bipuser -
Single column value into two column of report
Hi frnds,
I have a column of Adress in my databse table from where i have to fetch values and show it a report
able to get report but showing in single column if i take a printout paper will be wasted so I thought of passing these values to two different columns
please help me in giving some suggestionsIn Oracle 9 you can get rid of the regex functions and use traditional SUBSTR, INSTR and REPLACE:
ABSOLUTELY NOT TESTED...
SELECT col1,SUBSTR ( ','||col2||',', instr(','||col2||',',',',lvl)+1,instr(','||col2||',',',',lvl+1)-instr(','||col2||',',',',lvl)-1)
FROM table_name,
(SELECT LEVEL lvl
FROM (SELECT MAX (LENGTH (REPLACE ( col2, ',',''))) mx
FROM table_name)
CONNECT BY LEVEL <= mx + 1)
WHERE lvl - 1 <= LENGTH (REPLACE ( col2, ',',''));Max -
Method Validator based on two columns
Hi,
I have a table called FndCities with attributes city_id (pk), country_id (fk) and city_name.
I want to check if a city name is unique for a certain country. For example England can have a city name called "London", but USA might have a city called "London". However neither England not USA can have two "London" cities.
I have implemented a custom method validator and here is the logic:
In the FndCitiesImpl.java i created the following method:
public boolean validateCityName(String data) {
FndCitiesDefImpl entityDef = (FndCitiesDefImpl)getDefinitionObject();
String originalValue = (String)getPostedAttribute(CITYNAME);
Number originalValuePk = (Number)getPostedAttribute(COUNTRYPKFK);
if (data != null && !data.equalsIgnoreCase(originalValue)) {
return !(entityDef.existsByCityName(getDBTransaction(),data, originalValuePk));
return true;
and in the FndCitiesDefImpl.java i have implemented the method existsByCityName(DBTransaction, city_name, country_id).
In the creation method my custom validation works fine, however when i edit a record, becuase the if statement watches for changes in the city name, when changing the Country the validation is not performed. I cannot the country id in the validateCityName method because validation is performed on one column.
How can i achieve this?
Thanks
AntonisHi Antonis,
Not sure what you mean again by "JDeveloper does not handle the constraints properly." I have exactly this situation in my application (JDev 10.1.3.1), and I am using a database constraint to enforce uniqueness across 2 columns. I've customized the error messages (see Re: Unique key existence check and ER: ADF BC - allow custom error msgs for common exceptions (e.g. DML) ). Works just dandy.
John -
Hi,
I have been given requirement to make change in report . I have to includetwo column in between already existing
column.
Please suggest how to do this.Hi,
Creation and usage of Calculated Keyfigures and Restricted Key figure are so common when it comes to creation of query.
Just create one, put a formula in place to calculate the KF value and add it in the column section.
Testing is just the normal way you do it.
Easy to maintain. The Key figures will be available on all the queries if the dataprovider is same.
Performance should not be of a concern. The purpose of CKF is add additional columns in the query output for calculated values that are not available in the dataprovider.
Thanks.
Edited by: Venkatesh Iyengar on Jul 2, 2009 11:04 AM -
Percentage calculation in t-sql based on two columns
Hi All
I have a source table with 4 columns and data like this..
ID Cnt Col1 Col2
1 22 17 5
2 20 15 5
3 12 5 7
4 10 null 10
5 25 25 null
My output should look like this..
ID Cnt Col1 Col2 Col1% Col22%
1 22 17 5 77.27 22.73
2 20 15 5 75.00 25.00
3 12 5 7 41.66 58.34
4 10 10 0 100
5 25 25 100 0
Create Statement:
CREATE TABLE [dbo].[Sample] (
[ID] Int NOT NULL,
[Cnt] Int NULL,
[Col1] Int NULL,
[Col2] Int NULL,
CONSTRAINT [Sample] PRIMARY KEY CLUSTERED
[ID] ASC
Insert Statement:
insert into Sample(ID, cnt,Col1, col2) values (1 , 22 , 17 , 5 )
insert into Sample(ID, cnt,Col1, col2) values (2 , 20 , 15 , 5 )
insert into Sample(ID, cnt,Col1, col2) values (3 , 12 , 5 , 7 )
insert into Sample(ID, cnt,Col1, col2) values (4 , 10 , null , 10 )
insert into Sample(ID, cnt,Col1, col2) values (5 , 25 , 25 , null)
Right now I am using below SQL but % fields are not coming correct.
Select (COUNT(CASE WHEN (col1-col2)) < 1) THEN -1 END) /COUNT(*) * 100) AS Col1%
,(COUNT(CASE WHEN (col1-col2) >=1) THEN 1 END) /COUNT(*) * 100) AS Col2%
I need SQL to get correct values in col1% and col2%
Thanks,
RH
sqlIs it what you need:
SELECT Id
,cnt
,col1
,col2
,CASE
WHEN Col1 IS NULL
OR Col1 = 0
THEN 0
ELSE CAST((col1 * 100.0) / cnt AS DECIMAL(10, 2))
END AS [Col1%]
,CASE
WHEN Col2 IS NULL
OR Col2 = 0
THEN 0
ELSE CAST((col2 * 100.0) / cnt AS DECIMAL(10, 2))
END AS [Col2%]
FROM Sample
For every expert, there is an equal and opposite expert. - Becker's Law
My blog
My TechNet articles -
Numbering lines based on two columns
Hi Everyone,
I´d like to know if there is a way to achieve the numbering presented on the second table below with only native Oracle functions, like ROW_COUNT() over partition, etc.
I´m using Oracle 10g.
The logic used is:
Starting from 1, increment one every time the ORIGIN is the same as the FIRST ORIGIN of the group of rows (ID).
ID ORIGIN DESTINATION ORDER
1 A B 1
1 B A 2
1 A B 3
1 B C 4
1 C A 5
ID ORIGIN DESTINATION ORDER NUMBERING
1 A B 1 1
1 B A 2 1
1 A B 3 2
1 B C 4 2
1 C A 5 2In order to compare the ORIGIN of each row with the FIRST ORIGIN of the group I used the LAG function to create a column that will have the FIRST ORIGIN of the group value.
However I was not able to number the lines as shown above (column NUMBERING).
Any help will be much appreciated.
Test query:
WITH T AS
SELECT 1 ID, 'A' ORIGIN, 'B' DESTINATION, 1 ORDERING FROM DUAL UNION ALL
SELECT 1 ID, 'B' ORIGIN, 'A' DESTINATION, 2 ORDERING FROM DUAL UNION ALL
SELECT 1 ID, 'A' ORIGIN, 'B' DESTINATION, 3 ORDERING FROM DUAL UNION ALL
SELECT 1 ID, 'B' ORIGIN, 'C' DESTINATION, 4 ORDERING FROM DUAL UNION ALL
SELECT 1 ID, 'C' ORIGIN, 'A' DESTINATION, 5 ORDERING FROM DUAL
SELECT T.ID
, T.ORIGIN
, T.DESTINATION
, T.ORDERING
, LAG (T.ORIGIN, T.ORDERING -1, 0) OVER (PARTITION BY T.ID
ORDER BY T.ID
, T.ORDERING) FIRST_ORIGIN_OF_GROUP
FROM T
ORDER BY T.ID
, T.ORDERINGHi,
Here's one way:
WITH got_first_origin AS
SELECT id, origin, destination, ordering
, FIRST_VALUE (origin) OVER ( PARTITION BY id
ORDER BY ordering
) AS first_origin
FROM t
SELECT id, origin, destination, ordering
, COUNT ( CASE
WHEN origin = first_origin
THEN 1
END
) OVER ( PARTITION BY id
ORDER BY ordering
) AS numbering
FROM got_first_origin
;This assumes that the combination of id and ordering is unique. Within an id, ordering does not have to be consecutive integers, or anything like that.
Analytic functions can't be nested (the argument to the anlytic COUNT function can't call the analytic FIRST_VALUE function); that's why the sub-query is necessary.
You could do something with LAG, like you tried, rather than FIRST_VALUE, but you'd still need a sub-query, for the same reason.
Maybe you are looking for
-
I dropped my phone is water. How do I get it to work again?
So I dropped my phone in water and I quickly took it out. And it still works, but the speakers are broken on it. How do I get them to work?
-
I have updated my password and it works on my iPhone but not my iPad. Btw I have not installed iOS 7.0.2 on my phone.
-
Missing "plus" sign within CONTACTS
I upgraded my wife's iPhone 3GS to iOS5; now the "plus" sign is missing under CONTACTS. I've tried to RESTORE; tried just about everything. She can add a number/contact after she's called it - but not from the CONTACTS App.
-
Hi I'm running into very big performance problems with QueryBuilder. I'm using asset viewer to browse my CQ DAM images. We have loaded more than 100.000 images... all of them are tagged. Launching an http request like the following one: http://localh
-
Initial download problem with Conditions
According to Building Block Configuration Guide CRM Master and Transaction Data Replication (C03) a new condition customizing download YDNL_CUST_CNDALL was created. The same information for the new object was entered as we have for DNL_CUST_CNDALL. I