Can the column names be changes dynamically in OBIEE presentation
Hi,
Is thr any way through which I can change the column names depending on the value of a column.
the table structure is
Plan_name Character1 Character2 Character3 ....
so here according to plan_name the meaning of each character column changes. And I want to display each type of meaning on the presentation layer.
I cannot create aliases as the number of different plan name is 1200.
Any help will be appreciated.
Regards,
Akansh Agarwal
Hi,
I haven't tested these options, but you might. Maybe you try to supress the header for your table with data. After that, create a second table, which will be used as the header, and insert the same number of columns as the first table.
So on the 'header' table, create a conditional style (Criteria, Column Properties, Conditional Formatting), pointing to the values on shown in the first table. (You maybe need the data to be queried in both).
If this does't work, you can try to adapt the javascript shown in this blog: DELIVER BI OBIEE 11g & 10g , ODI , OBIA: OBIEE Table make a row BOLD with JAVA
And instead of making the row bold, change the value.
Hope this helps. Sorry if it does't work.
Best regards.
Similar Messages
-
Dynamically Pass the Column Name cursor. || Dynamic Column Name
Hi,
I need to dynamically pass the column name based on a Mapping table in a loop ( Right now i have hardcoded stuff )just like using Execute immediate.... Inside the procedure, I have commented as where i hit the problem.
Thanks for all of your time...
Thanks
Muthu
CREATE OR REPLACE PROCEDURE xml_testing_clob AS
doc xmldom.DOMDocument;
main_node xmldom.DOMNode;
root_node xmldom.DOMNode;
user_node xmldom.DOMNode; item_node xmldom.DOMNode;
root_elmt xmldom.DOMElement;
item_elmt xmldom.DOMElement;
item_text xmldom.DOMText;
item_test xmldom.DOMText;
nodelist xmldom.DOMNodeList;
sub_variable varchar2(4000);
x varchar2(200);
y varchar2(200);
sub_var varchar2(4000);
CURSOR get_users IS
SELECT FIRST_NAME,LAST_NAME,ROWNUM FROM USER_INFO_TBL WHERE WEIN_NUMBER = '1234' ;
CURSOR get_cdisc_name IS
select CTS_COL_NAME,CDISC_NAME from CTS2CDISC_DICTIONARY where CTS_TABLE_NAME = 'USER_INFO_TBL';
BEGIN
-- get document
doc := xmldom.newDOMDocument;
doc := xmldom.NewDomDocument;
xmldom.setVersion(doc, '1.0');
xmldom.setStandalone(doc, 'no');
xmldom.setCharSet(doc, 'ISO-8859-1');
-- create root element main_node := xmldom.makeNode(doc);
root_elmt := xmldom.createElement(doc,'AdminData');
root_node := xmldom.appendChild(main_node,xmldom.makeNode(root_elmt));
FOR get_users_rec IN get_users LOOP
item_elmt := xmldom.createElement(doc,'User');
xmldom.setAttribute(item_elmt,'OID' , get_users_rec.rownum);
user_node := xmldom.appendChild(root_node,xmldom.makeNode(item_elmt));
FOR cv_get_cdisc_name IN get_cdisc_name LOOP
EXIT WHEN get_cdisc_name%NOTFOUND;
sub_var := cv_get_cdisc_name.cts_col_name;
sub_variable := 'get_users_rec.';
sub_variable := 'get_users_rec.'||cv_get_cdisc_name.cts_col_name;
x := sub_variable;
dbms_output.put_line(x); -------------- Here i just see the literal string
y := get_users_rec.FIRST_NAME;
dbms_output.put_line(y); -------------- Here i just see actual value ( data )
item_elmt := xmldom.createElement(doc,cv_get_cdisc_name.cdisc_name);
item_node := xmldom.appendChild(user_node,xmldom.makeNode(item_elmt));
item_text := xmldom.createTextNode(doc,x ); ---- This is the place i am hitting with an error .
If i use variable X then i am able to see only the literal
string in the output. BUT if i put cursor name.coulmname,
then the resumt (XML) is fine.I wanted acheive this
dynamically just like execute Immediate
item_node := xmldom.appendChild( item_node , xmldom.makeNode(item_text));
END LOOP;
END LOOP;
-- write document to file using default character set from database
xmldom.WRITETOCLOB(doc,);
xmldom.writeToFile(doc, 'c:\ash\testing_out.xml');
-- free resources
xmldom.freeDocument(doc);
END;
+++++++++++++++++++++++++++++++++++ XML OUTPUT +++++++++++++++++++++++++++++++++++++++++
<?xml version="1.0" ?>
- <AdminData>
- <User OID="1">
<FirstName>get_users_rec.FIRST_NAME</FirstName>
<LastName>get_users_rec.LAST_NAME</LastName> </User>
- <User OID="2">
<FirstName>get_users_rec.FIRST_NAME</FirstName>
<LastName>get_users_rec.LAST_NAME</LastName>
</User>
- <User OID="3">
<FirstName>get_users_rec.FIRST_NAME</FirstName>
<LastName>get_users_rec.LAST_NAME</LastName>
</User>
- <User OID="4">
<FirstName>get_users_rec.FIRST_NAME</FirstName>
<LastName>get_users_rec.LAST_NAME</LastName>
</User>
- <User OID="5">
<FirstName>get_users_rec.FIRST_NAME</FirstName>
<LastName>get_users_rec.LAST_NAME</LastName>
</User>
++++++++++++++++++++++++++++++++++++++++++++++++++++ MAPPING TABLE DETAILS +++++++++++++++++
CTS_COL_NAME CDISC_NAME CTS_TABLE_NAME XML_TAG -----------> Column Name
FIRST_NAME FirstName USER_INFO_TBL Element -----------> Records
LAST_NAME LastName USER_INFO_TBL Element -----------> RecordsMy scenario is little different, let me explain:
My columns will remain same but values changes (based on column formula) according to the selected prompt value
If I select 'Oct' from prompt then
Curr will contain data for 'Oct' only
Next1 will contain data for 'Nov' only
Next2 will contain data for 'Dec' only
Next3 will contain data for 'Jan' of next year only.
Later if I select 'Jul' from prompt then
Curr will contain data for 'Jul' only
Next1 will contain data for 'Aug' only
Next2 will contain data for 'Sep' only
Next3 will contain data for 'Oct' only.
I don't have different columns for each months but the columns are capable to reflect data for any month.
So, how can I reflect the column name as month name for which that contains data.
Regards,
S Anand -
How to use the column names generated from Dynamic SQL
Hi,
I have a problem with Dynamic SQL.
I have written an SQL which will dynamically generate the Select statement with from and where clause in it.
But that select statement when executed will get me hundreds of rows and i want to insert each row separately into one more table.
For that i have used a ref cursor to open and insert the table.
In the select list the column names will also be as follows: COLUMN1, COLUMN2, COLUMN3,....COLUMNn
Please find below the sample code:
TYPE ref_csr IS REF CURSOR;
insert_csr ref_csr;
v_select VARCHAR2 (4000) := NULL;
v_table VARCHAR2 (4000) := NULL;
v_where VARCHAR2 (4000) := NULL;
v_ins_tab VARCHAR2 (4000) := NULL;
v_insert VARCHAR2 (4000) := NULL;
v_ins_query VARCHAR2 (4000) := NULL;
OPEN insert_csr FOR CASE
WHEN v_where IS NOT NULL
THEN 'SELECT '
|| v_select
|| ' FROM '
|| v_table
|| v_where
|| ';'
ELSE 'SELECT ' || v_select || ' FROM ' || v_table || ';'
END;
LOOP
v_ins_query :=
'INSERT INTO '
|| v_ins_tab
|| '('
|| v_insert
|| ') VALUES ('
|| How to fetch the column names here
|| ');';
EXECUTE IMMEDIATE v_ins_query;
END LOOP;
Please help me out with the above problem.
Edited by: kumar0828 on Feb 7, 2013 10:40 PM
Edited by: kumar0828 on Feb 7, 2013 10:42 PM>
I Built the statement as required but i need the column list because the first column value of each row should be inserted into one more table.
So i was asking how to fetch the column list in a ref cursor so that value can be inserted in one more table.
>
Then add a RETURNING INTO clause to the query to have Oracle return the first column values into a collection.
See the PL/SQL Language doc
http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/returninginto_clause.htm#sthref2307 -
Need to know the column names in my dynamic select clause
Dear All,
Please go through the following code. While executing the following code i am getting an error saying that dbms_sql.describe_columns overflow, col_name_len=35. Use describe_columns2.
Please guide me how to proceed further. Or please help me, how can i get the column names when i issue a dynamic select clause.
DECLARE
CUR INTEGER;
COL_CNT INTEGER ;
A INTEGER;
SEL_CLAUSE VARCHAR2(2000);
DESC_T DBMS_SQL.DESC_TAB;
REC DBMS_SQL.DESC_REC;
b number;
BEGIN
SEL_CLAUSE := 'SELECT 1,2,DECODE(1,1,''ONE'',2,''TWO'',3,''THREE'') FROM DUAL';
--'SELECT ROWID,PARA_SUB_CODE,DECODE('||''''||'ENG'||''''||','||''''||'ENG'||''''||',PARA_NAME,PARA_BL_NAME),NULL,NULL FROM PCOM_APP_PARAMETER';
--'SELECT 1,2,DECODE(1,1,''ONE'',2,''TWO'') FROM DUAL';
DBMS_OUTPUT.PUT_LINE( SEL_CLAUSE );
CUR := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(CUR,SEL_CLAUSE,DBMS_SQL.NATIVE);
DBMS_SQL.DESCRIBE_COLUMNS(CUR,COL_CNT,DESC_T);
B := desc_t.first;
FOR J IN 1..COL_CNT
LOOP
DBMS_OUTPUT.PUT_LINE('J := '||J || ' COL CNT ' || COL_CNT);
END LOOP;
BEGIN
A := DBMS_SQL.EXECUTE(CUR);
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
END;
Regards,
BalajiIs there any way can i have it directly??It does not work with static SQL either. Dynamic SQL is no different.
SQL> select 1 x from dual where x = 1 ;
select 1 x from dual where x = 1
ERROR at line 1:
ORA-00904: "X": invalid identifier
SQL>As suggested already, you will need to use alias if you want your select expression to be referred in the where clause.
SQL> BEGIN
2 FOR rec IN (SELECT *
3 FROM (SELECT 1,
4 2,
5 DECODE(1, 1, 'ONE', 2, 'TWO', 3, 'THREE') "DECODE(1, 1, 'ONE', 2, 'TWO', "
6 FROM DUAL)
7 WHERE "DECODE(1, 1, 'ONE', 2, 'TWO', " = 'ONE')
8 LOOP
9 NULL;
10 END LOOP;
11 END;
12 /
PL/SQL procedure successfully completed.
SQL>Message was edited by:
Kamal Kishore -
Can I change the Column Name without losing data and change the sequence
Dear Experts,
I want to change the column name without changing the sequence and dont want lose the data.Oracle Version : ?
Example Based on 10g.
SQL> conn scott/tiger
Connected.
SQL> create table col1 as select * from all_objects where rownum <= 100;
Table created.
SQL> alter table col1 add constraints col1_pk_objid primary key(object_id);
Table altered.
SQL> desc col1
Name Null? Type
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(30)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NOT NULL NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
SQL> alter table col1 rename column object_id to object_no;
Table altered.
SQL> desc col1;
Name Null? Type
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(30)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_NO NOT NULL NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
SQL> column column_name format a30
1 select column_name,constraint_name
2 from user_cons_columns
3 where table_name = 'COL1'
4* and owner = 'SCOTT'
COLUMN_NAME CONSTRAINT_NAME
OBJECT_NO COL1_PK_OBJID
SQL>
also go through
http://www.dizwell.com/prod/node/65
Message was edited by:
user52 -
Dynamically change the column name....
Hi,
I am facing a problem in displaying name of the columns dynamically as a parameter selected from the dashboard prompt.
I have some facts which contains data according to the selected month (From Prompt).
As of now the column names are:
Curr, Next1, Next2, Next3 which displays the data for the months accordingly to the selected month from prompt.
Data is coming correctly but on the report the column name are displayed as Curr, Next1, Next2 and Next3 which I want to be displayed as the month name for which it contains data.
How can I do that? I have tried presentation variables to be used in custom heading but that is only as string.
Thanks in advance !!!
Regards,
S Anand
Edited by: S Anand on Nov 20, 2009 2:29 AM
Edited by: S Anand on Nov 20, 2009 2:29 AMMy scenario is little different, let me explain:
My columns will remain same but values changes (based on column formula) according to the selected prompt value
If I select 'Oct' from prompt then
Curr will contain data for 'Oct' only
Next1 will contain data for 'Nov' only
Next2 will contain data for 'Dec' only
Next3 will contain data for 'Jan' of next year only.
Later if I select 'Jul' from prompt then
Curr will contain data for 'Jul' only
Next1 will contain data for 'Aug' only
Next2 will contain data for 'Sep' only
Next3 will contain data for 'Oct' only.
I don't have different columns for each months but the columns are capable to reflect data for any month.
So, how can I reflect the column name as month name for which that contains data.
Regards,
S Anand -
Getting the column names dynamically
hi gurus,
i have list item populated with many table names from a schema.
i have grid in oracle forms 10g and i want to fill the grid with the data that should come at least four/more columns.
i want to fire the list change trigger when each time any one table name is selected/changed.
how can i get the column names dynamically
please give me the step by step process
for filling the grid..hi ,
by getting column names dynamically i am creating a record group
using this below query
SELECT COLUMN_NAME, DATA_TYPE FROM USER_TAB_COLUMNS WHERE TABLE_NAME = <table_name>
but when timestamp datatype is there then it is showing error cannot create group groupname
but the record group is running successful on varchar2,number,date dayatypes
if any alternative is there i mean to say without using record group then tell me or where is the problem -
Hello,
Can anyone help me out to write a vb.net script.
I need to read the column names from excel and based on that column names I need to create a table in database(I have more than one sheet in excel).
For each sheet columns will be changing and should create a table dynamically for each sheet.
Any help would be appreciated.Refer the below script to read columns in each sheet.
Dim excelfile As String = Dts.Variables("ExcelPath").Value.ToString
Dim connectionstring As String = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + excelfile + ";Extended Properties=Excel 8.0"
Dim oledbcon As New OleDb.OleDbConnection(connectionstring)
oledbcon.Open()
Dim dt As DataTable
Dim schemaTable As DataTable
Dim OLEDBCMD As New OleDb.OleDbCommand
Dim oledbdatareader As OleDb.OleDbDataReader
Dim columns As String = ""
dt = oledbcon.GetSchema("Tables")
Dim TABCOMMAND(20) As String
Dim TABCOUNT As Integer = 0
For Each row As DataRow In dt.Rows
TABCOMMAND(TABCOUNT) = "SELECT * FROM [" & row.Item("TABLE_NAME").ToString & "]"
OLEDBCMD.CommandText = TABCOMMAND(TABCOUNT)
OLEDBCMD.Connection = oledbcon
oledbdatareader = OLEDBCMD.ExecuteReader(CommandBehavior.KeyInfo)
schemaTable = oledbdatareader.GetSchemaTable()
For Each myfield As DataRow In schemaTable.Rows
For Each myproperty As DataColumn In schemaTable.Columns
If myproperty.ColumnName = "ColumnName" Then
columns = columns & myfield(myproperty).ToString & ","
MsgBox(myfield(myproperty).ToString)
End If
Next
Next
oledbdatareader.Close()
OLEDBCMD.Dispose()
Next
oledbcon.Close()
Regards, RSingh -
Changing the Column names / alias
Hi,
I have an oracle query and it works fine.
select q.sname,
SUM( decode(p.nprofile1,10,1,0)) as "0 - 5",
SUM( decode(p.nprofile1,9,1,0)) as "6 - 10",
SUM( decode(p.nprofile1,8,1,0)) as "11 - 15",
SUM( decode(p.nprofile1,7,1,0)) as "16 - 19",
SUM( decode(p.nprofile1,6,1,0)) as "20 - 20",
SUM( decode(p.nprofile1,5,1,0)) as "21 - 27",
SUM( decode(p.nprofile1,4,1,0)) as "28 - 30",
SUM( decode(p.nprofile1,3,1,0)) as "31 - 40",
SUM( decode(p.nprofile1,2,1,0)) as "41 - 45",
SUM( decode(p.nprofile1,1,1,0)) "46 - Over",
COUNT(q.sname) "TOTAL"
from task_core@cds t, cor_queue q, profile_core@crb p
where t.nmboxid = q.nmboxid
and p.ncodaid = t.nobjectid
and p.ntype=2
GROUP BY q.sname
ORDER BY q.sname
It generates a Cross-tab sort of result and I am using the decode function to generate the result.
My problem is that right now I am using hardcoded column names or alias for the columns generated by the decode function. eg. "0-5", "6-10" etc.
I have another table which contains these values ("0-5","6-10"). I would like to know instead of hard coding the column names like
SUM( decode(p.nprofile1,10,1,0)) as "0 - 5"
can we retrieve the values from the Other table that contains the values "0-5","6-10" etc and display it there in the decode function?
Pls help me with this issue
Thanks
Gilleshi,
the column names are always fixed. You can try dynamic sql in pl/sql or spool then execute, but in pure sql, it is not possible -
How to change the attribute names of viewobj dynamically?
I have a table with columns eg.:
productlineID, month1, month2, month3....
Then I have a view object created for this table, and I would like the column names month1, month2,... to be changed dynamically from another query to get the current month (eg. 200011), such that month1 becomes 200011, month2 becomes 200012, month3 becomes 200101 etc... to make the jsp page for browsing and editing the records display the column name correctly, and also the element tag of the XML output by XMLData bean. I'm using JDev 3.1.1.2. Thank you in advance.five years after nobody has solution to this and I am posting same question.... interesting...
-
How to change the column names in display
Hi,
I want to change the columns names and give the display names as more User friendly..
How should I acheive this in WebI reports.
Regards,
BOBHi,
the columns names are normal text fields. Just selecdt to edit your report , go to the editor panel and select the column header you want to modify. You can enter the text you want to display
Regards,
Stratos -
How to change the column name as bold in adf table
Hi,
How can I change the column name with bolder style and blue colour in adf Table?
I changed the color and font weight in af:column properties, but its effecting the data in that column but not with the column Header Text property.(i have given column name in header text).
can any one have any idea how to do this?
and I have taken panel tabbed layout and in that i'm displaying this table.
but this table has scroll beneath of it to show all columns.
but i want to display all columns (for this, page should have scroll at the bottom side).
how can I achieve this???Hi,
Add the following CSS Code to the custom skin css file that is to be created as per the suggestions above.
*af|column::column-header-cell{*
color:Blue;
font-weight:bold;
This would ensure that all the table column headers are blue in color and bolder font style through-out the application.
By the way, what version of JDeveloper are you using?
Thanks,
Navaneeth -
Hi experts,
I have used tableview in BSP . In the output it displays the column name as per the table which i have referred. I want to change the name of the column. How Should i do that.. anyone plz explain me with an example.
Thanks in Advance
Edited by: Vijay Babu Dudla on Apr 28, 2009 12:59 AMHi ,
If you want to change the column name, you can put your code following:
<htmlb:tableViewColumn columnName = " "
*title = " put the cloumn name here"*
</htmlb:tableViewColumn>
Please try.
Any doubt let me know.
Regards,
Chris Gu
Edited by: Gu Chris on Apr 28, 2009 5:26 AM
Edited by: Gu Chris on Apr 28, 2009 5:26 AM
Edited by: Gu Chris on Apr 28, 2009 5:27 AM -
Change the column names programatically
Hi All,
is it possible to change the column name in a table programatically?? my req is like this..I ve a table which contains 60 columns. out of these 60 columns 53 columns signifies the 53 weeks of the year. so i ve to display the date in the column headers. How can i achieve this?
Thanks in advance,
SreeColumn prompts can be modified through the OAF Personalization screens. This will ensure you are declaratively setting the values.
Regards,
Prabodh. -
Changing the column names displayed via an ODBC driver
Hi we are just starting to used Crystal Reports to improve the reporting capabaility of a legacy application, we can access the data fine using an ODBC driver. What we want to do is change the column names that are displayed within Crystal Reports so they are more user friendly and not in techno speak,, so that the users can create their own reports. Do we need to used Business Objects to setup a Universe to do this, is their a simple cheaper method sorry if this post is in the wrong section
Can you set up "views" in your database? That would probably be the easiest way to do this.
-Dell
- A computer only does what you told it to, not what you thought you told it to!</p>
Maybe you are looking for
-
Sorting items in a region with more than one column
I have an item region that is set up to have 2 columns. When I sort by title, the items are re-sorted in alphabetical order from left to right and then down. This is not very intuitive. Is there a way to have it sort from top to bottom and then left
-
How to locate the caller's location in iPhone.?
I heard that iPhone will display the caller's location after finishing a call. How to turn it on?
-
Recording narration in Menubuilder
Hi, I want to use menubuilder to link some projects (I have had difficulties with Captivate Player). I have 2 questions (and a couple sub questions). 1. Can I put narration on the menubuilder? Do I need to import it from another application? 2. Can I
-
Hi, help me on how to work with datasets
hi, this is bsv. can any one help me on how to work with datasets. regards... srinivas
-
Where's httpd.conf?
I hired someone to set up Apache, PHP and MySQL on my MacBook Pro and create a virtual host, which I could then use as a guide in creating additional virtual hosts. However, I've been unable to repeat the process. I've been advised to forget about us