Matrix style report without aggregation
Hi,
I have this source data.
Chassis Blade Server Component
C1 B1 S1 COMP1
C2 B2 S2 COMP1
C3 B3 S3 COMP1
C1 B4 S4 COMP2
C3 B6 S5 COMP2
C1 B1 S6 COMP3
C2 B2 S7 COMP3
C2 B2 S8 COMP3
I need it to look like this:
Components C1 C2 C3
COMP1 S1 S2 S3
COMP2 S4 S5
COMP3 S6 S7,S8
I thought at first matrix report is what I want but it aggregates the data, I do not want to aggregate the data (there are only one or two data items per intersecting cell). Any ideas how I can achieve this with OBIEE or BI Publisher?
The number of rows and columns (chassis) is dynamic and the number of chassis shouldn't exceed 10.
Edited by: 956804 on 04-Sep-2012 04:08
Take a look at the documentation.
It explains how to achieve it:
http://docs.oracle.com/cd/E23943_01/bi.1111/e22254/create_rft_bldr.htm#tb_piv
regards
Jorge Anicama
p.s If this answers your question then please mark the answer as "Correct" or "Helpful"
Similar Messages
-
Need Matrix Style Report...
I need to create a matrix style report. There is a template for matrix reports in Oracle Report Writer, but not in APEX. My report should have a list of countries going down and a list of species going across with data showing how many for each country, each species.
Example of report:
Species Pollack Whiting Tuna
Country
China 5 6 10
Chile 1 2 1
Japan 4 4 8
How do I build this?Is this in Oracle 11g?? If so, you could use the pivot function in your sql to build the output data..
http://technology.amis.nl/blog/1207/dynamic-sql-pivoting-stealing-antons-thunder
Also threads in APEX forum dealing with this:
How to create a matrix report
Thank you,
Tony Miller
Webster, TX -
Hi,
I'd be interested in ideas for producing a matrix-style report (similar to that possible with Oracle Discoverer or Pivot Tables in spreadsheets). Example below. I've tried dynamic SQL (report based on function returning a SQL query) but this quickly gets very complex.
Are API's available (similar to the form item api's) for laying out HTMLDB sytle report headings and rows directly ?
Matrix Example
Imagine you have sales data by product and date e.g.
Product Date Sales
A 2003 100
A 2004 75
B 2003 50
I would like to display a matrix report similar to
Sales 2003 2004 ...
A 100 75
B 50 ...
...htmldb currently installs with a package called wwv_flow_rewrite_query. it's not technically supported, but it's really solid code ...and i think it does pretty much what you're hoping to do (pivot sql query). if you look in your $OHS_HOME/marvel directory you should see a file there called wwv_flow_rewrite_query.sql. fortunately that package isn't wrapped. better yet, it's loaded down with documentation. i'd take a look there to see about your report. if you have questions on the concepts (not the package), the author can be found discussing the topic at...
http://asktom.oracle.com/pls/ask/f?p=4950:8:::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:766825833740,
...but basically, you'd us the package to rewrite your query, returning wwv_flow_rewrite_query.as_pivot to the htmldb reporting engine in your Function Returning SQL Query region.
...hope this helps,
raj -
Problem in matrix style report
i have generate a matrix style report which has 5 X 4 = 20 cells . now in the report all cell values should not be filled according to the data in the tables but every cell in the report is filled . and more is that the filled values in the cell which are supposed to be blank is repeated from other cells . what is this problem and how to correct it ? i have an idea that this might be some varibale issue but cant figure it out .plz somebody help me out from this
Hi,
This problem of REP-1813 because,the data fetched into a matrix cell exceeds the capacity of the cell--
e.g., the cell may contain a variable field, and the data may be longer than expected.
Therefore, to solve this issue u may want to either enlarge your matrix cells until they are able to contain the data fetched into them, or redefine your data.
regards
~sudha -
ALV Tree Report without using ABAP Objects
Hi all,
I want to know the name of a function module to create ALV Tree in SE38 as a report. I am required to create this ALV Tree Report without using ABAP OBJECTS. Can u pls help me as early as possible.Hi
see this link
http://www.sapdev.co.uk/reporting/alv/alvtree.htm
*& Report ZBCALV_TREE
REPORT ZBCALV_TREE.
class cl_gui_column_tree definition load.
class cl_gui_cfw definition load.
data tree1 type ref to cl_gui_alv_tree.
data mr_toolbar type ref to cl_gui_toolbar.
include <icon>.
include bcalv_toolbar_event_receiver.
include bcalv_tree_event_receiver.
data: toolbar_event_receiver type ref to lcl_toolbar_event_receiver.
data: gt_VBAK type VBAK occurs 0, "Output-Table
gt_fieldcatalog type lvc_t_fcat, "Fieldcatalog
ok_code like sy-ucomm. "OK-Code
start-of-selection.
end-of-selection.
call screen 100.
*& Module STATUS_0100 OUTPUT
text
module STATUS_0100 output.
SET PF-STATUS 'MAIN'.
if tree1 is initial.
perform Zinit_tree.
endif.
call method cl_gui_cfw=>flush.
endmodule. " STATUS_0100 OUTPUT
*& Form Zinit_tree
text
--> p1 text
<-- p2 text
form Zinit_tree .
perform Zbuild_fieldcatalog.
create container for alv-tree
data: l_tree_container_name(30) type c,
l_custom_container type ref to cl_gui_custom_container.
l_tree_container_name = 'TREE1'.
if sy-batch is initial.
create object l_custom_container
exporting
container_name = l_tree_container_name
exceptions
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5.
if sy-subrc <> 0.
message x208(00) with 'ERROR'. "#EC NOTEXT
endif.
endif.
create tree control
create object tree1
exporting
parent = l_custom_container
node_selection_mode = cl_gui_column_tree=>node_sel_mode_single
item_selection = 'X'
no_html_header = ''
no_toolbar = ''
exceptions
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
illegal_node_selection_mode = 5
failed = 6
illegal_column_name = 7.
if sy-subrc <> 0.
message x208(00) with 'ERROR'. "#EC NOTEXT
endif.
create Hierarchy-header
data l_hierarchy_header type treev_hhdr.
perform zbuild_hierarchy_header changing l_hierarchy_header.
create info-table for html-header
data: lt_list_commentary type slis_t_listheader,
l_logo type sdydo_value.
perform Zbuild_comment using
lt_list_commentary
l_logo.
repid for saving variants
data: ls_variant type disvariant.
ls_variant-report = sy-repid.
create emty tree-control
call method tree1->set_table_for_first_display
exporting
is_hierarchy_header = l_hierarchy_header
it_list_commentary = lt_list_commentary
i_logo = l_logo
i_background_id = 'ALV_BACKGROUND'
i_save = 'A'
is_variant = ls_variant
changing
it_outtab = gt_VBAK "table must be emty !!
it_fieldcatalog = gt_fieldcatalog.
create hierarchy
perform Zcreate_hierarchy.
add own functioncodes to the toolbar
perform zchange_toolbar.
register events
perform zregister_events.
endform. " Zinit_tree
*& Form Zbuild_fieldcatalog
text
--> p1 text
<-- p2 text
form Zbuild_fieldcatalog .
get fieldcatalog
call function 'LVC_FIELDCATALOG_MERGE'
exporting
i_structure_name = 'VBAK'
changing
ct_fieldcat = gt_fieldcatalog.
sort gt_fieldcatalog by scrtext_l.
change fieldcatalog
data: ls_fieldcatalog type lvc_s_fcat.
loop at gt_fieldcatalog into ls_fieldcatalog.
case ls_fieldcatalog-fieldname.
when 'AUART' .
ls_fieldcatalog-no_out = 'X'.
ls_fieldcatalog-key = ''.
endcase.
modify gt_fieldcatalog from ls_fieldcatalog.
endloop.
endform. " Zbuild_fieldcatalog
*& Form zbuild_hierarchy_header
text
<--P_L_HIERARCHY_HEADER text
form zbuild_hierarchy_header changing
p_hierarchy_header type treev_hhdr.
p_hierarchy_header-heading = 'Hierarchy Header'. "#EC NOTEXT
p_hierarchy_header-tooltip =
'This is the Hierarchy Header !'. "#EC NOTEXT
p_hierarchy_header-width = 30.
p_hierarchy_header-width_pix = ''.
endform. " zbuild_hierarchy_header
*& Form Zbuild_comment
text
-->P_LT_LIST_COMMENTARY text
-->P_L_LOGO text
form Zbuild_comment using
pt_list_commentary type slis_t_listheader
p_logo type sdydo_value.
data: ls_line type slis_listheader.
LIST HEADING LINE: TYPE H
clear ls_line.
ls_line-typ = 'H'.
LS_LINE-KEY: NOT USED FOR THIS TYPE
ls_line-info = 'ALV-tree-demo: flight-overview'. "#EC NOTEXT
append ls_line to pt_list_commentary.
STATUS LINE: TYPE S
clear ls_line.
ls_line-typ = 'S'.
ls_line-key = 'valid until'. "#EC NOTEXT
ls_line-info = 'January 29 1999'. "#EC NOTEXT
append ls_line to pt_list_commentary.
ls_line-key = 'time'.
ls_line-info = '2.00 pm'. "#EC NOTEXT
append ls_line to pt_list_commentary.
ACTION LINE: TYPE A
clear ls_line.
ls_line-typ = 'A'.
LS_LINE-KEY: NOT USED FOR THIS TYPE
ls_line-info = 'actual data'. "#EC NOTEXT
append ls_line to pt_list_commentary.
p_logo = 'ENJOYSAP_LOGO'.
endform. " Zbuild_comment
*& Form Zcreate_hierarchy
text
--> p1 text
<-- p2 text
form Zcreate_hierarchy .
data: ls_vbak type vbak,
lt_vbak type vbak occurs 0.
get data
select * from vbak into table lt_vbak
up to 200 rows . "#EC CI_NOWHERE
sort lt_vbak by AUART.
add data to tree
data: l_AUART_key type lvc_nkey.
loop at lt_vbak into ls_vbak.
on change of ls_vbak-AUART.
perform Zadd_AUART_line using ls_vbak
changing l_AUART_key.
endon.
endloop.
calculate totals
call method tree1->update_calculations.
this method must be called to send the data to the frontend
call method tree1->frontend_update.
endform. " Zcreate_hierarchy
*& Form Zadd_AUART_line
text
-->P_LS_vbak text
-->P_0379 text
<--P_L_AUART_KEY text
form Zadd_AUART_line using p_ls_vbak type vbak
p_relat_key type lvc_nkey
changing p_node_key type lvc_nkey.
data: l_node_text type lvc_value,
ls_vbak type vbak.
set item-layout
data: lt_item_layout type lvc_t_layi,
ls_item_layout type lvc_s_layi.
ls_item_layout-t_image = '@3P@'.
ls_item_layout-fieldname = tree1->c_hierarchy_column_name.
ls_item_layout-style =
cl_gui_column_tree=>style_intensifd_critical.
append ls_item_layout to lt_item_layout.
add node
l_node_text = p_ls_vbak-AUART.
data: ls_node type lvc_s_layn.
ls_node-n_image = space.
ls_node-exp_image = space.
call method tree1->add_node
exporting
i_relat_node_key = p_relat_key
i_relationship = cl_gui_column_tree=>relat_last_child
i_node_text = l_node_text
is_outtab_line = ls_vbak
is_node_layout = ls_node
it_item_layout = lt_item_layout
importing
e_new_node_key = p_node_key .
endform. " Zadd_AUART_line
*& Form zchange_toolbar
text
--> p1 text
<-- p2 text
form zchange_toolbar .
get toolbar control
call method tree1->get_toolbar_object
importing
er_toolbar = mr_toolbar.
check not mr_toolbar is initial.
add seperator to toolbar
call method mr_toolbar->add_button
exporting
fcode = ''
icon = ''
butn_type = cntb_btype_sep
text = ''
quickinfo = 'This is a Seperator'. "#EC NOTEXT
add Standard Button to toolbar (for Delete Subtree)
call method mr_toolbar->add_button
exporting
fcode = 'DELETE'
icon = '@18@'
butn_type = cntb_btype_button
text = ''
quickinfo = 'Delete subtree'. "#EC NOTEXT
add Dropdown Button to toolbar (for Insert Line)
call method mr_toolbar->add_button
exporting
fcode = 'INSERT_LC'
icon = '@17@'
butn_type = cntb_btype_dropdown
text = ''
quickinfo = 'Insert Line'. "#EC NOTEXT
set event-handler for toolbar-control
create object toolbar_event_receiver.
set handler toolbar_event_receiver->on_function_selected
for mr_toolbar.
set handler toolbar_event_receiver->on_toolbar_dropdown
for mr_toolbar.
endform. " zchange_toolbar
*& Form zregister_events
text
--> p1 text
<-- p2 text
form zregister_events .
define the events which will be passed to the backend
data: lt_events type cntl_simple_events,
l_event type cntl_simple_event.
define the events which will be passed to the backend
l_event-eventid = cl_gui_column_tree=>eventid_expand_no_children.
append l_event to lt_events.
l_event-eventid = cl_gui_column_tree=>eventid_checkbox_change.
append l_event to lt_events.
l_event-eventid = cl_gui_column_tree=>eventid_header_context_men_req.
append l_event to lt_events.
l_event-eventid = cl_gui_column_tree=>eventid_node_context_menu_req.
append l_event to lt_events.
l_event-eventid = cl_gui_column_tree=>eventid_item_context_menu_req.
append l_event to lt_events.
l_event-eventid = cl_gui_column_tree=>eventid_header_click.
append l_event to lt_events.
l_event-eventid = cl_gui_column_tree=>eventid_item_keypress.
append l_event to lt_events.
call method tree1->set_registered_events
exporting
events = lt_events
exceptions
cntl_error = 1
cntl_system_error = 2
illegal_event_combination = 3.
if sy-subrc <> 0.
message x208(00) with 'ERROR'. "#EC NOTEXT
endif.
set Handler
data: l_event_receiver type ref to lcl_tree_event_receiver.
create object l_event_receiver.
set handler l_event_receiver->handle_node_ctmenu_request
for tree1.
set handler l_event_receiver->handle_node_ctmenu_selected
for tree1.
set handler l_event_receiver->handle_item_ctmenu_request
for tree1.
set handler l_event_receiver->handle_item_ctmenu_selected
for tree1.
endform. " zregister_events
*& Module USER_COMMAND_0100 INPUT
text
module USER_COMMAND_0100 input.
ok_code = sy-ucomm.
clear sy-ucomm.
case ok_code.
when 'EXIT' or 'BACK' or 'CANC'.
perform Zexit_program.
when others.
call method cl_gui_cfw=>dispatch.
endcase.
clear ok_code.
call method cl_gui_cfw=>flush.
endmodule. " USER_COMMAND_0100 INPUT
*& Form Zexit_program
text
--> p1 text
<-- p2 text
form Zexit_program .
call method tree1->free.
leave program.
endform. " Zexit_program
<b>Reward if usefull</b> -
Print crystal report without preview
Dear All,
i want print crystal report without preview.
when i click print button i want show printer list install in that computer.
so user can choose which printer that use to print. I means like if we printing document from office, we can choose the printer.
how that i can do that?
please help.
best regards,
SurbaktiSince this issue has little to do with sql server, I suggest you post your question to a forum for CR
SAP CR community -
How to show more than one record at a form-like style report?
Hi All,
I developed a form-like style report
I want it to show more than one record at once (At the same page)
I tried that by setting the value to "Maximum records per page" property for the repeating frame to 10
but when I close the property palete and open it agian the value is returned to 1 !!!
how to show more than one record at the same page?????
Thank uHi,
there's perhaps another property like "page protect". If than 2 records didn't fit at one page there's a page break. Or is there any object inside the repeating frame with page-break properties? Sorry .. it's like looking into a chrystal ball ...
Regards
Rainer -
How to create a report without any data
HI All, <BR> Can anyone help me in writing a report without any data. I want to create a report with list of memebers from a dimension where UDA is "My UDA". I wrote a report "<UDA(CHANNEL,'My UDA')" but this fetches me data too in the report. How to eliminate the data in the report. <BR><BR>Thanks<BR>Murali
Hi<BR><BR>Assuming you are using the essbase report writer the following script will work: <BR><BR>{ SUPPAGEHEADING }<BR>{ SUPCOLHEADING }<BR>{ SUPFORMATS }<BR>{ SUPFEED }<BR>{ NOINDENTGEN }<BR>{ FIXCOLUMNS 1 }<BR> <ROW("Dimension") <BR> <UDA(Dimension,MyUDA)<BR>!<BR><BR>the fixcolumns 1 will ensure that you only get the UDA without it you will get the variable followed by the corrosponding value.<BR>
-
Vendor open items report without page break after changing vendor account
Hi,
I would like to get the vendor open items report without pagination when the vendor account changes.
The option of deleting the * mark in the Filter page is not valid for me, because this way the vendor's name dissappear. I mean, it would be ok if I could show in the output of the report the name of the vendors.
Thanks in advance.HI,
If I understood your issue correctly then in the report S_ALR_87012085 is a field "Summarization level (0-4)" in the output controls.
You just have to set this field to the value '2'.
When you set the field to two, the page break will first executed, when the page is "full".
If you want to see information about the "Summarization level (0-4)" field, you just have to set the cursor in it, and press F1.
I believe this answer solve your problem.
Please assign points if it useful.
Regards
Ravinagh Boni -
Report without input screen working diffrently in debugging and background
hai,frds
I have one report without input-screen,But it is working diffrently in background and debugger.
please help me for this and i am bapi inside the program to create entries.but
if its in debugging it is crates corectly but if is in back ground it not working cooetly bapi working one time only.
plese help me for this.
Moderator Message: Too much of text-speak/sms-speak. Thread Locked. Write complete words and check their spellings using the Spell-Check tool in the editor here.
Edited by: kishan P on Jan 19, 2012 4:40 PMHI,
In SM37,Put the cursor on the Job, Type 'JDBG' in Command line and press Enter.
You can able to debug your Background job now.
Find out where it is going wrong.....
how to debug background job -
How to create new Custom XML Report without using Form Builder
Hi,
What are the steps to create new Custom XML Report without using Report Builder ?
Thanks and Regards,
AbhiHi,
Steps we now follow
1)Create Data Model in Reports Builder
2)Create xml
3)Insert xml in Publisher to build Fomat
4)FTp rdf
5)Create Data Definition and Template
6)Create executable and Concurrent Program
Is there any way we can build reports without use of Report Builder ? By writing PL SQL Package for Before Report and After Report etc ...
Thanks and Regards,
Abhijit Rode -
Access table directly from database in BO 4.0 WebI Report without using Universe
Can i use the table avilable in database directly to make BO 4.0 WebI Report without create any universe.
I realy appeiciate your help.
Thank you in advance.You need to create a universe for Relational SQL databases. Universe is a must. The reason you create universe is for the end users. WebI is designed for end users to create their own reports. It is a self service reporting tool. In order to do that, you need universe which allows users to query database using SQL without knowing SQL language.
If you don't want to create a universe for reporting then you can use Crystal Reports instead of WebI -
Linking to an OBIEE report without showing the user and password
Hi!
we are trying to access to an obiee report from an external portal (coded with php).
The idea is that the user clicks on a link an gets the report in pdf format. For that purpose we are using this url:
http://ttivobiee01:7001/analytics/saw.dll?Go&Path=/shared/Prueba/ogp_obi&Action=Print&P0=1&P1=eq&P2="Criteria"."Key"&P3=1402&NQuser=user&NQPassword=pass&format=pdf
But this url is expossing OBIEE's user and password.
In order to avoid this security issue we tried to do an wget of the url but it doesn't return the report. Instead we get an html, which seams to download the report chunk by chunk (using javaScript).
The question is, is there any way that we could let our portal ussers access to an obbie report without expossing the user and password?
I have been looking into oracle forums and have found this: OBIEE Go URL with password protected
but we couldn't use this aproach due to security issues.
Thanks!
NuriaHi!
We have finally done this (and it works!)
<?php
$urlInforme='http://obi:7001/analytics/saw.dll?Go&Path=/shared/Prueba/ogp_obi&Action=Print&P0=1&P1=eq&P2="Criterios"."Clave oficial"&P3=1402&NQuser=user&NQPassword=pass&format=pdf';
$ch = curl_init($urlInforme);
$ckfile = tempnam ("./", "CURLCOOKIE");
$ch = curl_init ($urlInforme);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec ($ch);
$ch = curl_init ($urlInforme);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $ckfile);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$fp = fopen("salida.pdf", "w");
curl_setopt($ch, CURLOPT_FILE, $fp);
$output = curl_exec ($ch);
curl_close($ch);
fclose($fp); -
How we can print directly a report without preview to a local printer in web
How we can print directly a report without preview to a local printer in web-environment, whith Oracle 9ias Report server release 6i patch 11.
The user want to print ticket, built by Oracle Report, without previuw on PDF format, in a web three-tier environment.
Please supply my documentation in detail and sample code if you can.Hello,
Take a look to the example provided in the note :
Note.253881.1 How to Create a Report With a Frame Only on the Last Page at a Fixed Position
Regards -
CREATE XML PUBLISHER REPORT WITHOUT USING RDF
Hi Every one ,
Can anybody share his/her expertise on following issue ?
"How to create XML Publisher Report without using RDF?"
Your help is appreciated.Hi Swapnesh
YOu do not need to create the XDODTEXE, its seeded for you. You need to do the following:
1. Create and test the data template
2. Load the data template to the template manager against a data definition
3. Create a concurrent program definition that uses the XDODTEXE as its executable
4. Create parameters (if required) for the CP and DT that match in name
You're done
Regards
Tim
Maybe you are looking for
-
Does anyone have a clue how you reload a purchased song or get credit for a partial download. This has happended three times to me.
-
Hi, when i made payment through f-58 and selecting check lot no 7 of account ID HD15 and House bank HDF14 than system prompt me message that "check lot not found". when i check FCHI there is already check lot created, and also we have issued 15 check
-
Can we make server fingerprint field optional instead on mandatory in SFTP adapter
Dear All, We are integrating SAP HCM with Success-factor only for Employee profile as client is only using the "SF PMS" module. ABAP program(installed through SH addOn provided by SAP) is generating the Employee profile ".csv" file. I am developing a
-
How do I import AVCHD clips from my hard-disk?
Has anybody been able to import AVCHD clips stored in a hard-disk? I save my clips onto my hard-disk after downloading from the media card from the camera however iMovie does not seem to recognize the folder structure. S.r.
-
Can't open my personal folder in Bridge
In the "favorite"-window, I can choose pictures of my personal-folder. But I have no chances to choose subfolders of it; neither in the "Favorite"-window nor in the "folder"-window. When I choose the "desktop", I get a lock-sign at my personal-folder