Inteactive Report navigate
Hi,
in an interactive report, after going to 5th list, can you come back to 2nd list? how?
Hi,
U can navigate through secondary lists with the help of SY-LSIND.
SY-LSIND is the list index which stroes the number of the secondary index.
So by modifying sy-lsind u can go to second list.
Regards,
Sankar
Similar Messages
-
When drill through from FR report, navigate to FDM landing page.
Hi,
Data loaded in HFM 11.1.2.1 using FDM 11.1.2.1 and it has been replaced by ERP integrator 11.1.2.1.501. When we perform drill through from Financial reporting report it is navigating to the FDM landing page instead of ERP integrator landing page. In FDM landing page, showing the ERROR:
"Error: Error Retrieving recordset"
Anyone please help me to solve this issue.
Thanks,
YamunaHi ,
My guess is that , when you loaded the data from ERPi the drill regions created by FDM have been over written. Hence you are not able to drill down to the FDM page. This happens in most of the scenarios , where if the data is loaded across an intersection using FDM and then again the data is loaded in the same intersection using some other way like Flat Files or ERPi the Drill Regions or Drill POVs get compromised.
To confirm whether your FDM drill back is working or not , create a simple form using any of the intersections from your dimensionS ( not the same ones used above ) and load a single line of data using FDM across those intersections in the form. Try drilling back to the FDM Landing Page and check. Same way , create a report for the same intersections and check drill back to FDM. Remember to check the :Drill - Through" check box in the property grid in the Grid Properties for that report.
Regards -
How to register a report program ins EBS?
HI,
I made a new report program called APVOUCHER.rdf it is developed/tested/ and running on Reports 10g windows. Then I ftp it to my EBS R12 linux server. Then I put it under the base path of $AP_TOP/reports/us.
Then I register it in EBS using this
a) Define the concurrent program executable with the Oracle Application Object Library. This links the execution file and the method used to execute it with a defined concurrent program. Log into Applications as the System Administrator and navigate to Concurrent > Program > Executable
b) Define the concurrent program with the Oracle Application Object Library along with any program parameters or any incompatibilities. Log into Applications as the System Administrator and navigate to
Concurrent > Program > Define.
But in the 2nd define the program APVOUCHER ca not me found in LOVs provided under region
Excutable
Name>
Method>
If I click LOV for Name the report name is not in there :(
Anything I miss in here?
Thanks a lotHi,
Before you define the report, navigate to Concurrent > Program > Executable and fill out the form as follows:
Executable: <REPORT SHORT NAME> --> (Similar to the report name you have uploaded but without .rdf)
Short Name: <REPORT SHORT NAME> --> (Same as above)
Application: Payables
Description: <Description>
Execution Method: Oracle Reports
For more details, please refer to:
Note: 133991.1 - How to Register a Custom Report
https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=133991.1
Once you are done with the above, you need to add this concurrent program to the Request Group which is attached to your responsibility.
- Login to System Administrator responsibility
- Navigate to Security > Responsibility > Define
- Query the Responsibility Name
- Write down the Request Group
- Navigate to Security > Responsibility > Request
- Query the Request Group
- Add the concurrent program
You should be able to see the concurrent program from the responsibility then.
Regards,
Hussein -
How to do outer join select query for an APEX report
Hello everyone,
I am Ann.
I have one select statement that calculate the statistics for one month(October 2012 in this example)
select ph.phase_number
, sum ( (case
WHEN ph.date_finished IS NULL OR ph.date_finished > last_day(TO_DATE('Oct 2012','MON YYYY'))
THEN last_day(TO_DATE('Oct 2012','MON YYYY'))
ELSE ph.date_finished
END )
- ph.date_started + 1) / count(def.def_id) as avg_days
from phase_membership ph
inner join court_engagement ce on ph.mpm_eng_id = ce.engagement_id
inner join defendant def on ce.defendant_id = def.def_id
where def.active = 1
and ph.date_started <= last_day(TO_DATE('Oct 2012','MON YYYY'))
and ph.active = 1
and UPPER(ce.court_name) LIKE '%'
group by rollup(phase_number)
Result is as below
Phase_Number AVG_DAYS
Phase One 8.6666666666666667
Phase Two 14.6
Phase Three 12
11.4615365
I have other select list mainly list the months between two date value.
select to_char(which_month, 'MON YYYY') as display_month
from (
select add_months(to_date('Aug 2012','MON YYYY'), rownum-1) which_month
from all_objects
where
rownum <= months_between(to_date('Oct 2012','MON YYYY'), add_months(to_date('Aug 2012','MON YYYY'), -1))
order by which_month )
Query result is as below
DISPLAY_MONTH
AUG 2012
SEP 2012
OCT 2012
Is there any way that I can join these two select statement above to generate a result like:
Month Phase Number Avg days
Aug 2012 Phase One 8.666
Sep 2012 Phase One 7.66
Oct 2012 Phase One 5.66
Aug 2012 Phase Two 8.666
Sep 2012 Phase Two 7.66
Oct 2012 Phase Two 5.66
Aug 2012 Phase Three 8.666
Sep 2012 Phase Three 7.66
Oct 2012 Phase Three 5.66
Or
Month Phase Number Avg days
Aug 2012 Phase One 8.666
Aug 2012 Phase Two 7.66
Aug 2012 Phase Three 5.66
Sep 2012 Phase One 8.666
Sep 2012 Phase Two 7.66
Sep 2012 Phase Three 5.66
Oct 2012 Phase One 8.666
Oct 2012 Phase Two 7.66
Oct 2012 Phase Three 5.66
And it can be order by either Phase Number or Month.
My other colleague suggest I should use an left outer join but after trying so many ways, I am still stuck.
One of the select I tried is
select a.display_month,b.* from (
select to_char(which_month, 'MON YYYY') as display_month
from (
select add_months(to_date('Aug 2012','MON YYYY'), rownum-1) which_month
from all_objects
where
rownum <= months_between(to_date('Oct 2012','MON YYYY'), add_months(to_date('Aug 2012','MON YYYY'), -1))
order by which_month )) a left outer join
( select to_char(ph.date_finished,'MON YYYY') as join_month, ph.phase_number
, sum ( (case
WHEN ph.date_finished IS NULL OR ph.date_finished > last_day(TO_DATE(a.display_month,'MON YYYY'))
THEN last_day(TO_DATE(a.display_month,'MON YYYY'))
ELSE ph.date_finished
END )
- ph.date_started + 1) / count(def.def_id) as avg_days
from phase_membership ph
inner join court_engagement ce on ph.mpm_eng_id = ce.engagement_id
inner join defendant def on ce.defendant_id = def.def_id
where def.active = 1
and ph.date_started <= last_day(TO_DATE(a.display_month,'MON YYYY'))
and ph.active = 1
and UPPER(ce.court_name) LIKE '%'
group by to_char(ph.date_finished,'MON YYYY') , rollup(phase_number)) b
on a.display_month = b.join_month
but then I get an error
SQL Error: ORA-00904: "A"."DISPLAY_MONTH": invalid identifier
I need to display a report on APEX with option for people to download at least CSV format.
I already have 1 inteactive report in the page, so don’t think can add another interactive report without using the iframe trick.
If any of you have any ideas, please help.
Thanks a lot.
AnnFirst of all, a huge thanks for following this Frank.
I have just started working here, I think the Oracle version is 11g, but not sure.
To run Oracle APEX version 4, I think they must have at least 10g R2.
This report is a bit challenging for me.I has never worked with PARTITION before.
About the select query you suggested, I run , and it seems working fine, but if I try this,
it return error ORA-01843: not a valid month
DEFINE startmonth = "Aug 2012";
DEFINE endmonth = "Oct 2012";
WITH all_months AS
select add_months(to_date('&startmonth','MON YYYY'), rownum-1) AS which_month
, add_months(to_date('&startmonth','MON YYYY'), rownum ) AS next_month
from all_objects
where
rownum <= months_between(to_date('&endmonth','MON YYYY'), add_months(to_date('&startmonth','MON YYYY'), -1))
select TO_CHAR (am.which_month, 'Mon YYYY') AS month
, ph.phase_number
, sum ( (case
WHEN ph.date_finished IS NULL OR ph.date_finished > last_day(TO_DATE(am.which_month,'MON YYYY'))
THEN last_day(TO_DATE(am.which_month,'MON YYYY'))
ELSE ph.date_finished
END )
- ph.date_started + 1) / count(def.def_id) as avg_days
FROM all_months am
LEFT OUTER JOIN phase_membership ph PARTITION BY (ph.phase_number)
ON am.which_month <= ph.date_started
AND am.next_month > ph.date_started
AND ph.date_started <= last_day(TO_DATE(am.which_month,'MON YYYY')) -- May not be needed
AND ph.active = 1
LEFT OUTER join court_engagement ce on ph.mpm_eng_id = ce.engagement_id
and ce.court_name IS NOT NULL -- or something involving LIKE
LEFT OUTER join defendant def on ce.defendant_id = def.def_id
AND def.active = 1
group by rollup(phase_number, am.which_month)
ORDER BY am.which_month
, ph.phase_number
;Here is the shorted versions of the three tables:
A_DEFENDANT, A_ENGAGEMENT, A_PHASE_MEMBERSHIP
CREATE TABLE "A_DEFENDANT"
"DEF_ID" NUMBER NOT NULL ENABLE,
"FIRST_NAME" VARCHAR2(50 BYTE),
"SURNAME" VARCHAR2(20 BYTE) NOT NULL ENABLE,
"DOB" DATE NOT NULL ENABLE,
"ACTIVE" NUMBER(2,0) DEFAULT 1 NOT NULL ENABLE,
CONSTRAINT "A_DEFENDANT_PK" PRIMARY KEY ("DEF_ID"))
Sample Data
Insert into A_DEFENDANT (DEF_ID,FIRST_NAME,SURNAME,DOB,ACTIVE) values (101,'Joe','Bloggs',to_date('12/12/99','DD/MM/RR'),1);
Insert into A_DEFENDANT (DEF_ID,FIRST_NAME,SURNAME,DOB,ACTIVE) values (102,'John','Smith',to_date('20/05/00','DD/MM/RR'),1);
Insert into A_DEFENDANT (DEF_ID,FIRST_NAME,SURNAME,DOB,ACTIVE) values (103,'Jane','Black',to_date('15/02/98','DD/MM/RR'),1);
Insert into A_DEFENDANT (DEF_ID,FIRST_NAME,SURNAME,DOB,ACTIVE) values (104,'Minnie','Mouse',to_date('13/12/88','DD/MM/RR'),0);
Insert into A_DEFENDANT (DEF_ID,FIRST_NAME,SURNAME,DOB,ACTIVE) values (105,'Daisy','Duck',to_date('05/08/00','DD/MM/RR'),1);
CREATE TABLE "A_ENGAGEMENT"
"ENGAGEMENT_ID" NUMBER NOT NULL ENABLE,
"COURT_NAME" VARCHAR2(50 BYTE) NOT NULL ENABLE,
"DATE_REFERRED" DATE,
"DETERMINATION_HEARING_DATE" DATE,
"DATE_JOINED_COURT" DATE,
"DATE_TREATMENT_STARTED" DATE,
"DATE_TERMINATED" DATE,
"TERMINATION_TYPE" VARCHAR2(50 BYTE),
"ACTIVE" NUMBER(2,0) DEFAULT 1 NOT NULL ENABLE,
"DEFENDANT_ID" NUMBER,
CONSTRAINT "A_ENGAGEMENT_PK" PRIMARY KEY ("ENGAGEMENT_ID"))
Insert into A_ENGAGEMENT (ENGAGEMENT_ID,COURT_NAME,DATE_REFERRED,DETERMINATION_HEARING_DATE,DATE_JOINED_COURT,DATE_TREATMENT_STARTED,DATE_TERMINATED,TERMINATION_TYPE,ACTIVE,DEFENDANT_ID) values (1,'AA',to_date('12/08/12','DD/MM/RR'),null,to_date('12/08/12','DD/MM/RR'),null,null,null,1,101);
Insert into A_ENGAGEMENT (ENGAGEMENT_ID,COURT_NAME,DATE_REFERRED,DETERMINATION_HEARING_DATE,DATE_JOINED_COURT,DATE_TREATMENT_STARTED,DATE_TERMINATED,TERMINATION_TYPE,ACTIVE,DEFENDANT_ID) values (2,'BB',to_date('01/09/12','DD/MM/RR'),null,to_date('02/09/12','DD/MM/RR'),null,null,null,1,102);
Insert into A_ENGAGEMENT (ENGAGEMENT_ID,COURT_NAME,DATE_REFERRED,DETERMINATION_HEARING_DATE,DATE_JOINED_COURT,DATE_TREATMENT_STARTED,DATE_TERMINATED,TERMINATION_TYPE,ACTIVE,DEFENDANT_ID) values (3,'AA',to_date('02/09/12','DD/MM/RR'),null,to_date('15/09/12','DD/MM/RR'),null,null,null,1,103);
Insert into A_ENGAGEMENT (ENGAGEMENT_ID,COURT_NAME,DATE_REFERRED,DETERMINATION_HEARING_DATE,DATE_JOINED_COURT,DATE_TREATMENT_STARTED,DATE_TERMINATED,TERMINATION_TYPE,ACTIVE,DEFENDANT_ID) values (4,'BB',to_date('01/10/12','DD/MM/RR'),null,to_date('02/10/12','DD/MM/RR'),null,null,null,1,105);
CREATE TABLE "A_PHASE_MEMBERSHIP"
"MPM_ID" NUMBER NOT NULL ENABLE,
"MPM_ENG_ID" NUMBER NOT NULL ENABLE,
"PHASE_NUMBER" VARCHAR2(50 BYTE),
"DATE_STARTED" DATE NOT NULL ENABLE,
"DATE_FINISHED" DATE,
"NOTES" VARCHAR2(2000 BYTE),
"ACTIVE" NUMBER(2,0) DEFAULT 1 NOT NULL ENABLE,
CONSTRAINT "A_PHASE_MEMBERSHIP_PK" PRIMARY KEY ("MPM_ID"))
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (1,1,'PHASE ONE',to_date('15/09/12','DD/MM/RR'),to_date('20/09/12','DD/MM/RR'),null,1);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (2,1,'PHASE TWO',to_date('21/09/12','DD/MM/RR'),to_date('29/09/12','DD/MM/RR'),null,1);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (3,2,'PHASE ONE',to_date('12/09/12','DD/MM/RR'),null,null,1);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (4,3,'PHASE ONE',to_date('20/09/12','DD/MM/RR'),to_date('01/10/12','DD/MM/RR'),null,1);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (5,3,'PHASE TWO',to_date('02/10/12','DD/MM/RR'),to_date('15/10/12','DD/MM/RR'),null,1);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (6,4,'PHASE ONE',to_date('03/10/12','DD/MM/RR'),to_date('10/10/12','DD/MM/RR'),null,1);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (7,3,'PHASE THREE',to_date('17/10/12','DD/MM/RR'),null,null,0);
Insert into A_PHASE_MEMBERSHIP (MPM_ID,MPM_ENG_ID,PHASE_NUMBER,DATE_STARTED,DATE_FINISHED,NOTES,ACTIVE) values (8,1,'PHASE THREE',to_date('30/09/12','DD/MM/RR'),to_date('16/10/12','DD/MM/RR'),null,1);
The requirements are:
The user must be able to request the extract for one or more calendar months, e.g.
May 2013
May 2013 – Sep 2013.
The file must contain a separate row for each calendar month in the requested range. Each row must contain the statistics computed for that calendar month.
The file must also include a row of totals.
The user must be able to request the extract for either Waitakere or Auckland or Consolidated (both courts’ statistics accumulated).
Then the part that I am stuck is
For each monitoring phase:
Phase name (e.g. “Phase One”)
Avg_time_in_phase_all_particip
for each phase name,
Add up days in each “phase name” Monitoring Phase, calculated as:
If Monitoring Phase.Date Finished is NULL or > month end date,
+(*Month end date* Minus Monitoring Phase.Date Started Plus 1)+
Otherwise (phase is complete)
+(Monitoring Phase.Date Finished Minus Monitoring Phase.Date Started Plus 1.)+
Divide by the numbers of all participants who have engaged in “phase name”.
This is the words of the Business Analyst,
I try to do as required but still struggle to identify end_month for the above formula to display for the range of months.
Of course, I can write two nested cursor. The first one run the list of month, then for each month, run the parameterised report.
But I prefer if possible just use SQL statements, or at least a PL/SQL but return a query.
With this way, I can create an APEX report, and use their CSV Extract function.
Yes, you are right, court_name is one of the selection parameters.
And the statistics is not exactly for one month. It is kind of trying to identify all phases that are running through the specified month (even phase.date_started is before the month start).
This is the reason why I put the condition AND ph.date_started <= last_day(TO_DATE('Oct 2012','MON YYYY')) (otherwise I get negative avg_days)
User can choose either one court "AA" or "BB" or combined which is all figures.
Sorry for bombarding you a lot of information.
Thanks a lot, again.
Edited by: Ann586341 on Oct 29, 2012 9:57 PM
Edited by: Ann586341 on Oct 29, 2012 9:59 PM -
Interactive Report does not maintain / remain on current page
Fellow APEX gurus,
In my APEX application (APEX 4.0), I have an Interactive Report that displays rows of data and each row has an EDIT link which on clicking pops up a Form (Dynamic HTML Page) on top of the Interactive Report Report.
The problem is -- when on the Interactive Report page, when I navigate to next page of records (Page 2 or above), and EDIT a row on that page, the resulting Form pops up correctly on top of the Interactive Report, however, in the background, the Interactive Report navigates back to Page 1.
There is only one default branch on the Interactive Report page and I have "Save State before branching" checked.
How do I maintain the current Page and not allow APEX to navigate back to the First Page of the Interactive Report?
Thanks,
EdMini,
I already had the Reset Pagination Unchecked. I did uncheck the "save state before branching" but the behavior was the same.
Once again, I have only one "Unconditional" Branch on this page with the following settings:
reset pagination for this page - unchecked
include process success message - checked
save state before branching - checked
Anything else to look for?
Thanks,
Ed. -
Regarding Interactive list in alv
Hi Experts,
I want to know how to do a inteactive report in alv.
For example: First i will display a alv list. Then when i double click on a field of a line or click on button (Details) by selecting a line , then it will navigate me to the alv list with corresponding records where i clicked previously.
How to use buttons in this case as we r using in simple interactive report.
Can anyone pls help me in creating a simple example for the above???
Thanks
SudhansuHi,
Example for Interactive ALV report.
Please reward if useful.
report zreport no standard page heading
message-id zw.
Type Pools *
type-pools: icon, slis.
Tables *
tables: tvst,
likp,
t30b,
vekp,
zpallettr,
zvantr.
Types *
types:
begin of ty_data,
lgtor like likp-lgtor, " door
vbeln like likp-vbeln, " delivery
wbstk like vbuk-wbstk, " Goods movement status
kostk like vbuk-kostk, " Picking status
posnr like lips-posnr, " item
route like likp-route, " route
wadat like likp-wadat, " goods issue date
lvsta like vbup-lvsta, " warehouse status
packvorschr like vekp-packvorschr, " pack mnemonic
exidv like vekp-exidv, " handling unit
zpallet_no(10), "like zpallettr-zpallet_no, " pallet no
zcount_check like zpallettr-zcount_check," count check flag
zvan_no(10), "like zvantr-zvan_no, " van no
zvan_print like zvantr-zvan_print, " van manifest print
zeod_print like zvantr-zeod_print, " eod manifest print
zzpackclass like vekp-zzpackclass, " package class
zzti like vekp-zzti, " T.I. value
end of ty_data.
Data *
ranges: r_del for likp-vbeln,
r_lgtor for likp-lgtor.
ranges: r_vanno for zvantr-zvan_no,
r_palno for zpallettr-zpallet_no.
data: begin of number_range occurs 0,
mark(1),
id(3),
num(10) type n,
desc like zpalletmd-zdesc,
end of number_range.
data: t_disp_tab type standard table of zpickdisp,
t_data_tab type ty_data occurs 0 with header line,
t_disp_head type standard table of zpickhead.
data: w_numrnge like number_range,
w_number(10) type n.
data: t_likp like likp occurs 0 with header line,
t_lips like lips occurs 0 with header line,
t_vbuk like vbuk occurs 0 with header line,
t_vbup like vbup occurs 0 with header line,
t_vepo like vepo occurs 0 with header line,
t_vekp like vekp occurs 0 with header line,
t_vantr like zvantr occurs 0 with header line,
t_pallettr like zpallettr occurs 0 with header line,
w_likp like likp,
w_lips like lips,
w_vbuk like vbuk,
w_vbup like vbup,
w_vepo like vepo,
w_vekp like vekp.
ALV DATA *****
data:
g_grid type ref to cl_gui_alv_grid,
g_sort type slis_t_sortinfo_alv,
g_custom_container type ref to cl_gui_custom_container,
g_layout type slis_layout_alv,
gt_fieldcat type slis_t_fieldcat_alv,
t_fldcat like line of gt_fieldcat,
g_keyinfo type slis_keyinfo_alv,
gt_events type slis_t_event,
gs_event type slis_alv_event,
w_sy_repid like sy-repid.
data: begin of seltab occurs 0.
include structure rsparams.
data: end of seltab.
SYSTEM GENERATED TABLE CONTROL DATA ********
DECLARATION OF TABLECONTROL 'TC_TABCON' ITSELF
controls: tc_tabcon type tableview using screen 0100.
LINES OF TABLECONTROL 'TC_TABCON'
data: g_tc_tabcon_lines like sy-loopc.
data: ok_code like sy-ucomm.
Constants *
constants: c_data_class like klah-class value 'DG_DATA',
c_mat_class like rmclf-klart value '001',
c_pack like lips-mtart value 'VERP',
c_a(1) value 'A',
c_b(1) value 'B',
c_c(1) value 'C',
c_yes(1) value 'X',
c_no(1) value ' '.
Selection screen *
standard report select options block
selection-screen begin of block a with frame title text-002.
select-options:
s_wadat for likp-wadat no-extension obligatory. " Goods Issue Date
*parameters: "TR01-
p_vstel like tvst-vstel obligatory. " Shipping Point "TR01-
select-options: "TR01+
p_vstel for tvst-vstel. " Shipping Point "TR01+
select-options:
s_lfart for likp-lfart, " Delivery type
s_lgtor for t30b-lgtor, " Door selection
s_exidv for vekp-exidv, " Handling Unit
s_vbeln for likp-vbeln. " Delivery
parameters:
p_exdata as checkbox. " Show extra columns flag
selection-screen end of block a.
van/pallet specific select options block
selection-screen begin of block b with frame title text-001.
select-options:
s_palno for zpallettr-zpallet_no, " no-extension,
s_vanno for zvantr-zvan_no. " no-extension.
selection-screen end of block b.
Value Request Events *
at selection-screen on value-request for s_palno-low.
clear: number_range, w_number .
refresh number_range.
select numbers and display pop up screen for selection
perform select_pal_nos.
s_palno-low = w_number.
at selection-screen on value-request for s_palno-high.
clear: number_range, w_number .
refresh number_range.
select numbers and display pop up screen for selection
perform select_pal_nos.
s_palno-high = w_number.
at selection-screen on value-request for s_vanno-low.
clear: number_range, w_number .
refresh number_range.
select numbers and display pop up screen for selection
perform select_van_nos.
s_vanno-low = w_number.
at selection-screen on value-request for s_vanno-high.
clear: number_range, w_number .
refresh number_range.
select numbers and display pop up screen for selection
perform select_van_nos.
s_vanno-high = w_number.
At Selection Screen *
at selection-screen.
perform validate_selections.
Initialization *
initialization.
Start of selection *
start-of-selection.
clear all data tables
clear: t_likp,
t_lips,
t_vbuk,
t_vbup,
t_vepo,
t_vantr,
t_pallettr,
w_likp,
w_lips,
w_vbuk,
w_vbup,
w_vepo,
w_vekp.
refresh: t_likp,
t_lips,
t_vbuk,
t_vbup,
t_vepo,
t_vantr,
t_pallettr.
select data for ALV
due to different input parameters being used, to streamline the data
selection process, different selection methods are required
if not s_vanno is initial
or not s_palno is initial.
if selecting by van/pallet number, need to select the data from the
handling unit upwards to delivery
perform select_data_up.
else.
otherwise the data can be selected from the delivery downwards
perform select_data_down.
endif.
End of selection *
end-of-selection.
call hierarchical ALV display function module
call function 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
exporting
i_callback_program = 'ZWMR_PICK_STATUS_REPORT'
i_callback_pf_status_set = 'SET_STATUS'
i_callback_user_command =
'USER_COMMAND' "custom gui status form
is_layout = g_layout "user command form
it_fieldcat = gt_fieldcat
it_sort = g_sort
it_events = gt_events
i_tabname_header = 't_disp_head'
i_tabname_item = 't_disp_tab'
i_structure_name_header = 'ZPICKHEAD'
i_structure_name_item = 'ZPICKDISP'
is_keyinfo = g_keyinfo
tables
t_outtab_header = t_disp_head
t_outtab_item = t_disp_tab.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
FORMS *
Includes inserted by Screen Painter Wizard. DO NOT CHANGE THIS LINE!
include zwmr_pick_status_reporto01 .
include zwmr_pick_status_reporti01 .
include zwmr_pick_status_reportf01 .
*& Form select_pal_nos
select pallet numbers for search help
form select_pal_nos.
data: begin of t_palno occurs 0,
zpallet_no like zpallettr-zpallet_no,
end of t_palno.
select all available pallet numbers
select distinct zpallet_no from zpallettr
into corresponding fields of table t_palno.
loop at t_palno.
get pallet id
select single zpallet_id from zpallettr
into number_range-id
where zpallet_no = t_palno-zpallet_no.
get pallet description
select single zdesc from zpalletmd
into number_range-desc
where zpallet_id = number_range-id.
number_range-num = t_palno-zpallet_no.
append to search help table
append number_range.
endloop.
call pop up dialog box
call screen 0100 starting at 5 5.
endform. " select_pal_nos
*& Form select_van_nos
select van numbers for search help
form select_van_nos.
data: begin of t_vanno occurs 0,
zvan_no like zvantr-zvan_no,
end of t_vanno.
select available van numbers
select distinct zvan_no from zvantr
into corresponding fields of table t_vanno.
loop at t_vanno.
select van id
select single zvan_id from zvantr
into number_range-id
where zvan_no = t_vanno-zvan_no.
select van description (maintained in pallet tables)
select single zdesc from zpalletmd
into number_range-desc
where zpallet_id = number_range-id.
number_range-num = t_vanno-zvan_no.
append to search help table
append number_range.
endloop.
call pop up dialog box
call screen 0100 starting at 5 5.
endform. " select_van_nos
*& Form select_data_down
select data if selecting from delivery down
form select_data_down.
select all deliveries from LIKP that fulfill selection criteria
select * from likp into table t_likp
where vbeln in s_vbeln
and vstel eq p_vstel "TR01-
and vstel in p_vstel
and lgtor in s_lgtor
and wadat in s_wadat
and lfart in s_lfart.
if sy-subrc ne 0.
no data found
message i007.
exit.
endif.
if not t_likp[] is initial.
select sales document headers from VBUK
select * from vbuk into table t_vbuk
for all entries in t_likp
where vbeln eq t_likp-vbeln.
select all relevant delivery items from LIPS
select * from lips into table t_lips
for all entries in t_likp
where vbeln eq t_likp-vbeln
and pstyv ne 'ZPAC'
and pstyv ne 'ZGDP' "TR02+
and lfimg gt 0. "TR01+
endif.
if not t_lips[] is initial.
select all sales document line items from VBUP
select * from vbup into table t_vbup
for all entries in t_lips
where vbeln eq t_lips-vbeln
and posnr = t_lips-posnr.
select corresponding handling unit ID's (venum)
TR03 Replace start
select * from vepo appending corresponding fields of table t_vepo
for all entries in t_lips
where vbeln = t_lips-vbeln
and posnr = t_lips-posnr
and matnr = t_lips-matnr
and charg = t_lips-charg.
select * from vepo
inner join vekp on vepovenum = vekpvenum
appending corresponding fields of table t_vepo
for all entries in t_lips
where vepo~vbeln = t_lips-vbeln
and vepo~posnr = t_lips-posnr
and vepo~matnr = t_lips-matnr
and vepo~charg = t_lips-charg
and vekp~exidv in s_exidv.
TR03 Replace end
endif.
build process table
perform move_to_table.
endform. "select_data_down
*& Form select_data_up
select data if selecting from van/pallet up
form select_data_up.
if not s_vanno is initial.
if van then select van numbers and hence pallet numbers
select * from zvantr into table t_vantr
where zvan_no in s_vanno.
and vstel eq p_vstel."TR01-
if not t_vantr[] is initial.
select * from zpallettr into table t_pallettr
for all entries in t_vantr
where zpallet_no eq t_vantr-zpallet_no.
and vstel eq p_vstel."TR01-
endif.
else.
otherwise can get pallet numbers directly
select * from zpallettr into table t_pallettr
where zpallet_no in s_palno.
and vstel eq p_vstel."TR01-
endif.
if not t_pallettr[] is initial.
from the pallet nos. we can select the handling units
select * from vekp into table t_vekp
for all entries in t_pallettr
where exidv eq t_pallettr-exidv
and exidv ne space
and exidv in s_exidv "TR03+
and ( exida = 'E' "TR01+
or exida = 'F' ). "TR01+
endif.
if not t_vekp[] is initial.
build vbeln range from t_vekp.
loop at t_vekp.
r_del-sign = 'I'.
r_del-option = 'EQ'.
r_del-low = t_vekp-vpobjkey.
append r_del.
endloop.
select all deliveries from LIKP that correspond to HU's
select * from likp into table t_likp
where vbeln in r_del
and wadat in s_wadat
and lfart in s_lfart.
endif.
if not t_likp[] is initial.
select sales document headers from VBUK
select * from vbuk into table t_vbuk
for all entries in t_likp
where vbeln eq t_likp-vbeln.
select all relevant delivery items from LIPS
select * from lips into table t_lips
for all entries in t_likp
where vbeln eq t_likp-vbeln
and pstyv ne 'ZPAC'
and pstyv ne 'ZGDP' "TR02+
and lfimg gt 0. "TR01+
endif.
if not t_lips[] is initial.
select all sales document line items from VBUP
select * from vbup into table t_vbup
for all entries in t_lips
where vbeln eq t_lips-vbeln
and posnr = t_lips-posnr.
select corresponding handling unit ID's (venum)
select * from vepo appending corresponding fields of table t_vepo
for all entries in t_lips
where vbeln = t_lips-vbeln
and posnr = t_lips-posnr
and matnr = t_lips-matnr
and charg = t_lips-charg.
endif.
build process table
perform move_to_table.
endform. "select_data_up
*& Form move_to_table
move data to processing table
form move_to_table.
loop at t_vepo.
clear t_data_tab.
delivery lines.
clear w_lips.
read table t_lips with key vbeln = t_vepo-vbeln
posnr = t_vepo-posnr
into w_lips.
move-corresponding w_lips to t_data_tab.
sales document line items
clear w_vbup.
read table t_vbup with key vbeln = t_vepo-vbeln
posnr = t_vepo-posnr
into w_vbup.
if w_vbup-kosta = space. "TR01-
not relevant for picking
delete t_vepo. "TR01-
continue. "TR01-
else. "TR01-
move-corresponding w_vbup to t_data_tab.
endif. "TR01-
sales doc header
clear w_vbuk.
read table t_vbuk with key vbeln = t_vepo-vbeln
into w_vbuk.
move-corresponding w_vbuk to t_data_tab.
delivery header
clear w_likp.
read table t_likp with key vbeln = t_vepo-vbeln
into w_likp.
move-corresponding w_likp to t_data_tab.
select handling unit info using vepo entry
clear w_vekp.
if t_vekp[] is initial.
select single * from vekp into w_vekp
where venum = t_vepo-venum.
else.
read table t_vekp with key venum = t_vepo-venum
into w_vekp.
if sy-subrc ne 0.
select single * from vekp into w_vekp
where venum = t_vepo-venum.
endif.
endif.
move-corresponding w_vekp to t_data_tab.
select pallet / van load information
select single zpallet_no zcount_check from zpallettr
into (t_data_tab-zpallet_no,
t_data_tab-zcount_check)
where exidv eq w_vekp-exidv.
if not t_data_tab-zpallet_no in s_palno. "TR01+
continue. "TR01+
endif. "TR01+
if sy-subrc = 0.
select single zvan_no zvan_print zeod_print from zvantr
into (t_data_tab-zvan_no,
t_data_tab-zvan_print,
t_data_tab-zeod_print)
where zpallet_no eq t_data_tab-zpallet_no.
if not t_data_tab-zvan_no in s_vanno. "TR01+
continue. "TR01+
endif. "TR01+
endif.
append t_data_tab.
endloop.
*-----> TR01+ start
If the delivery has yet to be packed, then need to include in report
Thus delete t_lips here and if any entries left after looping through
t_vepo, these will also need to be added to t_data_tab
if the selection is by handling unit though we do not want these"TR03+
if s_exidv is initial. "TR03+
loop at t_vepo.
read table t_lips with key vbeln = t_vepo-vbeln
posnr = t_vepo-posnr.
if sy-subrc = 0.
delete t_lips index sy-tabix.
endif.
endloop.
if not t_lips[] is initial.
move any unpacked items to the data table
perform move_lips_to_table.
endif.
endif. "TR03+
*<---- TR01+ End
get relevant status icons
perform select_icons.
prepare ALV data
perform prepare_alv.
endform. " select_data
*& Form select_icons
select icons for display and move data to display table
form select_icons.
data: w_disp_tab like zpickdisp,
w_disp_head like zpickhead,
w_color like zpickdisp-color,
ov_icon like zpickdisp-ov_icon,
gi_icon like zpickdisp-gi_icon,
to_icon like zpickdisp-to_icon,
lp_icon like zpickdisp-lp_icon,
pc_icon like zpickdisp-pc_icon,
lv_icon like zpickdisp-lv_icon,
vm_icon like zpickdisp-vm_icon,
em_icon like zpickdisp-em_icon,
t_ovst_tab like t_disp_tab with header line.
constants: c_col1(3) value 'C10',
c_col2(3) value 'C20'.
sort t_data_tab by lgtor vbeln.
w_color = c_col2.
loop at t_data_tab.
at new lgtor.
fill ALV header table
clear w_disp_head.
w_disp_head-lgtor = t_data_tab-lgtor.
append w_disp_head to t_disp_head.
endat.
goods issue status & overall amber/green only
case t_data_tab-wbstk.
when c_c.
move icon_green_light to gi_icon.
move icon_green_light to ov_icon.
when others.
move icon_red_light to gi_icon.
move icon_yellow_light to ov_icon.
endcase.
transfer order status
case t_data_tab-lvsta.
when c_a.
move icon_red_light to to_icon.
when c_b.
move icon_yellow_light to to_icon.
when c_c.
move icon_green_light to to_icon.
when space.
write N/A
to_icon = 'N/A'.
endcase.
loaded to pallet status
if not t_data_tab-zpallet_no is initial.
move icon_green_light to lp_icon.
else.
move icon_red_light to lp_icon.
endif.
pallet count status
if not t_data_tab-zcount_check is initial.
move icon_green_light to pc_icon.
else.
move icon_red_light to pc_icon.
endif.
loaded to van status
if not t_data_tab-zvan_no is initial.
move icon_green_light to lv_icon.
else.
move icon_red_light to lv_icon.
endif.
van manifest status
if not t_data_tab-zvan_print is initial.
move icon_green_light to vm_icon.
else.
move icon_red_light to vm_icon.
endif.
end of day manifest status
if not t_data_tab-zeod_print is initial.
move icon_green_light to em_icon.
else.
move icon_red_light to em_icon.
endif.
move working data table to display table
move-corresponding t_data_tab to w_disp_tab.
w_disp_tab-ov_icon = ov_icon.
w_disp_tab-gi_icon = gi_icon.
w_disp_tab-to_icon = to_icon.
w_disp_tab-lp_icon = lp_icon.
w_disp_tab-pc_icon = pc_icon.
w_disp_tab-lv_icon = lv_icon.
w_disp_tab-vm_icon = vm_icon.
w_disp_tab-em_icon = em_icon.
w_disp_tab-color = w_color.
fill N/A values for initial fields for display
if w_disp_tab-packvorschr is initial.
w_disp_tab-packvorschr = 'N/A'.
endif.
if w_disp_tab-exidv is initial.
w_disp_tab-exidv = 'N/A'.
endif.
if w_disp_tab-zpallet_no is initial.
write 'N/A' to w_disp_tab-zpallet_no.
endif.
if w_disp_tab-zvan_no is initial.
write 'N/A' to w_disp_tab-zvan_no.
endif.
display different color for new doc number
at end of vbeln.
if w_color = c_col1.
w_color = c_col2.
elseif w_color = c_col2.
w_color = c_col1.
endif.
endat.
append w_disp_tab to t_disp_tab.
clear w_disp_tab.
endloop.
we have all the icons in display but need to check the overall status
as this refers to the line items
green and amber statuses already set and use the same criteria as the
goods issue status unless detected as red here
data: ov_stat_red(1).
clear w_disp_tab.
sort t_disp_tab by vbeln.
loop at t_disp_tab into w_disp_tab.
at new vbeln.
check all line items for delivery
loop at t_data_tab where vbeln = w_disp_tab-vbeln.
if t_data_tab-lvsta = c_a.
set overall status to red
ov_stat_red = c_yes.
exit.
else.
leave green/amber status icon as previosly determined
endif.
endloop.
if ov_stat_red = c_yes.
set overall status to red for all items in that delivery
clear ov_stat_red.
move icon_red_light to w_disp_tab-ov_icon.
modify t_disp_tab from w_disp_tab transporting ov_icon
where vbeln = w_disp_tab-vbeln.
endif.
endat.
endloop.
endform. " select_icons
*& Form fill_layout
fill ALV layout parameters
form fill_layout.
clear g_layout.
g_layout-colwidth_optimize = c_yes. " column width optimisation
g_layout-zebra = space. " alternate line colors
g_layout-box_fieldname = 'MARK'. " checkbox fieldname
g_layout-info_fieldname = 'COLOR'. " highlight row indicator
g_layout-no_vline = space. " vertical line
g_layout-key_hotspot = space. " hotspot field
g_layout-f2code = 'PICK'. " F2 ok_code
g_layout-numc_sum = c_yes. " sum numc fields
g_layout-box_tabname = 't_disp_head'. " checkbox table name
g_layout-expand_fieldname = 'EXPAND'. " expand field name
endform. " fill_layout
*& Form fill_sort
fill ALV sort table
form fill_sort.
data: w_g_sort type slis_sortinfo_alv.
w_g_sort-spos = 1.
w_g_sort-fieldname = 'LGTOR'.
w_g_sort-tabname = 't_disp_tab'.
w_g_sort-up = c_yes.
append w_g_sort to g_sort.
w_g_sort-spos = 2.
w_g_sort-fieldname = 'VBELN'.
w_g_sort-tabname = 't_disp_tab'.
w_g_sort-up = c_yes.
append w_g_sort to g_sort.
w_g_sort-spos = 3.
w_g_sort-fieldname = 'POSNR'.
w_g_sort-tabname = 't_disp_tab'.
w_g_sort-up = c_yes.
append w_g_sort to g_sort.
w_g_sort-spos = 4.
w_g_sort-fieldname = 'WADAT'.
w_g_sort-tabname = 't_disp_tab'.
w_g_sort-up = c_yes.
append w_g_sort to g_sort.
endform. " fill_sort
*& Form fill_fieldcat
Fill field category structure for ALV
form fill_fieldcat.
clear t_fldcat.
create field catalogue for header table
call function 'REUSE_ALV_FIELDCATALOG_MERGE'
exporting
i_program_name = 'ZWMR_PICK_STATUS_REPORT'
i_internal_tabname = 't_disp_head'
i_structure_name = 'ZPICKHEAD'
i_client_never_display = c_yes
changing
ct_fieldcat = gt_fieldcat[].
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
ceate field catalogue for items table
call function 'REUSE_ALV_FIELDCATALOG_MERGE'
exporting
i_program_name = 'ZWMR_PICK_STATUS_REPORT'
i_internal_tabname = 't_disp_tab'
i_structure_name = 'ZPICKDISP'
i_client_never_display = c_yes
changing
ct_fieldcat = gt_fieldcat[].
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
modify field catalogue for this report
set no display flag if not requested on selection screen
if p_exdata ne c_yes.
t_fldcat-no_out = c_yes.
modify gt_fieldcat from t_fldcat transporting no_out
where fieldname eq 'PACKVORSCHR'
or fieldname eq 'EXIDV'
or fieldname eq 'ZPALLET_NO'
or fieldname eq 'ZVAN_NO'
or fieldname eq 'ZZPACKCLASS'
or fieldname eq 'ZZTI'.
endif.
set no display flag for item level LGTOR field
t_fldcat-no_out = c_yes.
modify gt_fieldcat from t_fldcat transporting no_out
where fieldname eq 'LGTOR'
and tabname eq 't_disp_tab'.
prevent display of technical fields
t_fldcat-tech = c_yes.
modify gt_fieldcat from t_fldcat transporting tech
where fieldname eq 'EXPAND'
or fieldname eq 'SELKZ'.
set vbeln as key
t_fldcat-key = c_yes.
modify gt_fieldcat from t_fldcat transporting key
where fieldname eq 'VBELN'.
prevent scrolling for info fields
t_fldcat-fix_column = c_yes.
modify gt_fieldcat from t_fldcat transporting fix_column
where fieldname eq 'VBELN'.
endform. " fill_fieldcat
*& Form prepare_ALV
Fill ALV parameters
form prepare_alv.
fill ALV key info
g_keyinfo-header01 = 'LGTOR'.
g_keyinfo-item01 = 'LGTOR'.
fill ALV events
gs_event-name = 'TOP_OF_PAGE'.
gs_event-form = 'TOP_OF_PAGE'.
append gs_event to gt_events.
fill ALV sort table
perform fill_sort.
fill ALV layout structure
perform fill_layout.
fill ALV field category
perform fill_fieldcat.
endform. " prepare_ALV
*& Form user_command
form called on user command from ALV list
form user_command using r_ucomm like sy-ucomm
rs_selfield type slis_selfield.
data: index type i,
w_disp_head like line of t_disp_head,
w_door like likp-lgtor.
clear r_lgtor. refresh r_lgtor.
case r_ucomm.
when 'PICK'. " Double click line
when 'VANM'. " Van Manifest button
read the header table where has been selected
loop at t_disp_head into w_disp_head where mark = c_yes.
r_lgtor-sign = 'I'.
r_lgtor-option = 'EQ'.
r_lgtor-low = w_disp_head-lgtor.
append r_lgtor.
endloop.
print the van manifest
perform print_van_manifest tables r_lgtor.
when 'EODM'. " EOD Manifest button
read the header table where has been selected
loop at t_disp_head into w_disp_head where mark = c_yes.
r_lgtor-sign = 'I'.
r_lgtor-option = 'EQ'.
r_lgtor-low = w_disp_head-lgtor.
append r_lgtor.
endloop.
print the end of day manifest
perform print_eod_manifest tables r_lgtor.
when 'REFR'. "Refresh
refresh display
w_sy_repid = sy-repid.
call function 'RS_REFRESH_FROM_SELECTOPTIONS'
exporting
curr_report = w_sy_repid
tables
selection_table = seltab.
exceptions
not_found = 1
no_report -
In OBIEE charts, how do you make drill downs work on custom formulas?
I posted this over on Linked In and didn't get an anser, so I'm hoping someone here has an answer.
I'm writing a summary query / chart for a dashboard in OBIEE 10.1 with a drill down (technically it's a "navigation") for more information. This chart breaks down the data by fiscal quarter and by geography (both are columns in the subject area) and I can get this drill down to work just fine. But I also have this chart broken down by some custom calculated fields (CASE WHEN statements) that classify revenue into Forecast / At Risk / Upside etc. (which are not columns or values of columns within the subject area).
When I add a drill down or navigate function onto those calculated columns, I'm getting a full data set ... not a filtered data set for that particular calculated field. (Yes, I have all of the IS PROMPTED filters set up correctly, and yes the formulas in the source and destination queries are identical).
Does anyone have any ideas on how to make the drill down or navigation work on custom formulas?
Thanks
TedUsing the Paint demo
Report 1 Saved as: */shared/Paint Demo/Sample Analyses/Color Analysis*
<saw:report xmlns:saw="com.siebel.analytics.web/report/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sawx="com.siebel.analytics.web/expression/v1" xmlVersion="200705140">
<saw:criteria xsi:type="saw:simple" subjectArea="Paint">
<saw:columns>
<saw:column formula="case WHEN Markets.Region IN ('CENTRAL REGION', 'EASTERN REGION') then 'East Central' WHEN Markets.Region IN ('SOUTHERN REGION', 'WESTERN REGION') then 'South West' else Markets.Region end" columnID="c4">
<saw:tableHeading>
<saw:caption>
<saw:text>Markets</saw:text></saw:caption></saw:tableHeading>
<saw:columnHeading>
<saw:caption>
<saw:text>Region</saw:text></saw:caption>
<saw:displayFormat interaction="default"/></saw:columnHeading>
<saw:displayFormat suppress="default" interaction="navigate" wrapText="true">
<saw:navigation xsi:type="saw:sawNavLink">
<saw:navTargets>
<saw:navTarget xsi:type="saw:reportLink" path="/shared/Paint Demo/Sample Analyses/Color Analysis Navigate"/></saw:navTargets></saw:navigation></saw:displayFormat></saw:column>
<saw:column formula=""Sales Measures"."% Chg Year Ago Dollars"" alias="" columnID="c3"/></saw:columns>
<saw:columnOrder/>
<saw:filter subjectArea="Paint">
<sawx:expr xsi:type="sawx:special" op="prompted">
<sawx:expr xsi:type="sawx:sqlExpression">case WHEN Markets.Region IN ('CENTRAL REGION', 'EASTERN REGION') then 'East Central' WHEN Markets.Region IN ('SOUTHERN REGION', 'WESTERN REGION') then 'South West' else Markets.Region end</sawx:expr></sawx:expr></saw:filter></saw:criteria>
<saw:views currentView="0">
<saw:view xsi:type="saw:compoundView" name="compoundView!1" rptViewVers="200510010">
<saw:cvTable>
<saw:cvRow>
<saw:cvCell viewName="Title"/></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="Table"/></saw:cvRow></saw:cvTable></saw:view>
<saw:view xsi:type="saw:tableView" deck="bottom" headingDisplay="table2Rows" visibleFormats="all" name="Table" rptViewVers="200510010"/>
<saw:view xsi:type="saw:titleView" name="Title" rptViewVers="200510010"/></saw:views>
<saw:prompts/></saw:report>
Report 2 Saved as: */shared/Paint Demo/Sample Analyses/Color Analysis Navigate*
<saw:report xmlns:saw="com.siebel.analytics.web/report/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sawx="com.siebel.analytics.web/expression/v1" xmlVersion="200705140">
<saw:criteria xsi:type="saw:simple" subjectArea="Paint">
<saw:columns>
<saw:column formula="Markets.Region" columnID="c5"/>
<saw:column formula=""Sales Measures"."% Chg Year Ago Dollars"" alias="" columnID="c3"/></saw:columns>
<saw:columnOrder/>
<saw:filter subjectArea="Paint">
<sawx:expr xsi:type="sawx:special" op="prompted">
<sawx:expr xsi:type="sawx:sqlExpression">case WHEN Markets.Region IN ('CENTRAL REGION', 'EASTERN REGION') then 'East Central' WHEN Markets.Region IN ('SOUTHERN REGION', 'WESTERN REGION') then 'South West' else Markets.Region end</sawx:expr></sawx:expr></saw:filter></saw:criteria>
<saw:views currentView="0">
<saw:view xsi:type="saw:compoundView" name="compoundView!1" rptViewVers="200510010">
<saw:cvTable>
<saw:cvRow>
<saw:cvCell viewName="Title"/></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="staticchart!1"/></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="Table"/></saw:cvRow></saw:cvTable></saw:view>
<saw:view xsi:type="saw:tableView" deck="bottom" headingDisplay="table2Rows" visibleFormats="all" name="Table" rptViewVers="200510010"/>
<saw:view xsi:type="saw:titleView" name="Title" rptViewVers="200510010"/>
<saw:view xsi:type="saw:staticchart" name="staticchart!1" rptViewVers="200510010">
<saw:template tid="charts/pie.cxml"/>
<saw:canvasFormat/>
<saw:selections>
<saw:categories>
<saw:category position="0">
<saw:constant value="1"/></saw:category></saw:categories>
<saw:measures>
<saw:column columnID="c3" position="0"/></saw:measures>
<saw:seriesGenerators>
<saw:column columnID="c5"/>
<saw:measureLabels/></saw:seriesGenerators></saw:selections></saw:view></saw:views>
<saw:prompts/></saw:report>
The first report navigates and prompts the second report on the calculated field.
Regards
Chris -
Cannot Create Webi document in Infoview
Hi Guru,
Here is my scenario, I logged in as Administrator in the Infoview and planned create webi document on the available exported universe. I didn't find any option over there not only for webi even for the Deski, Crystal etc..
By searching some thread, Again tired by applying the security right as follows
BOE ( CMC ) >> Applications >> Webi >> Right Click " Check User Rights " >> Select User/group >> rights have been Inherited/ Explicitly >> create New Document.
One more thing just found in Infoview preferences, I didn't found options for Webi where I can find for Deski,Crystal, Voyager, Password Changes etc.....
Finally, I tried logging into Webi Rich client >> Error shows " License not valid " >>> Do we need to have a separate license for Webi ....
Please help me outHi
I just followed this steps... but does not helped on this...
Logon to Central Management Console (CMC) using Enterprise Administrator account.
Click on 'Folders' under Organize.
Select Manage >> Top_Level Security >> All Folders.
If a Windows prompt occurs showing 'You have chosen to set Security for the Top-Level Folder', click on Ok.
Click on 'Add Principals'.
Select the User / Group from 'Available users/groups' who is to unable to create the Web Intelligence document and move it under 'Selected users/groups'.
Click on 'Add and Assign Security' button.
Uncheck the option to Inherit rights from Parent Folder and Parent Group.
Click on 'Advanced' tab and then click on Add/Remove Rights.
Grant the General Rights to the User / Group as per the requirement.
Expand 'Content' option on the left pane.
Select 'Web Intelligence Report' and grant the following rights:
12.1 Download files associated with the object
12.2 Edit Query
12.3 Export the report's data
12.4 Refresh List of Values
12.5 Refresh the report's data
General rights related to the Web Intelligence can also be overridden here.
Click on Apply and then OK.
Click on Apply and then OK on 'Assign Security' and close the User Security for Root Folder.
Navigate to CMC Home >> Universes.
Depending on the requirement, rights can be provided at the Universe level or Folder level.
Repeat Step 5 through Step 10 to add and assign general security for the User(s) / Group(s).
If the security is provided for Folder(s), under Add / Remove rights, Folder rights can be selected from the 'General Rights for Folder' menu.
If the Security is provided for the Universe(s), under Add / Remove rights, following optional rights can be selected:
20.1 Create and Edit Queries Based on Universe
20.2 Data Access
20.3 Edit Access Restrictions
20.4 New List of Values
20.5 Print Universe
Click on Apply and then OK.
Click on Apply and then OK on 'Assign Security' and close the 'User Security for the Root Folder'.
Navigate to CMC Home >> Connections.
Depending on the requirement, rights can either be assigned as the 'Top Level Security' for 'All connections' or providing 'User Security' for the specific connection.
Repeat Step 5 through Step 10 to add and assign General Security for the User(s) / Group(s).
Under 'Connection' option within 'System' on the left pane, following optional rights can be granted:
25.1 Data Access
25.2 Use connection for Stored Procedures
Click on Apply and then OK.
Click Apply and then OK on 'Assign Security' and then close the 'User Security' for the connection.
If the user still fails to create a Web Intelligence Report, navigate to CMC Home >> Applications >> Web Intelligence.
Under 'User Security', 'Add Principal(s) and select 'Assign Security'.
Remove Inheritance from Parent Folder and Parent Group.
Click on Advanced and click on 'Add/Remove Rights'.
Provide the General Rights as per the requirement.
Expand 'Application' on left pane and assign security to the User / Group as required.
Click on Apply and then OK to save changes.
Click on Apply and then OK on the 'Assign Security' and then close the 'User Security' for the Web Intelligence application.
Logon to Infoview and create a new Web Intelligence report. -
Chinese Word List Update 1.7: Please help me update it manually
Apple has released Chinese Word list update on June 7, 2013. This is a small 118 KB update that normally will update itself automatically without any ability for user to control the update.Normally, it will be updated in the backgroud in 7-8 days after released.
I have Chinese Word list updat 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, and 1.6 on my system but this time, Chinese Word list Update 1.7 never update my system. I would like to get assistance from our frieds here to send me the files that can be copied from your Mac to allow me to update it manually.
To make sure that you have Chinese Word list Update 1.7 on your system, do the following:
1, Click on Apple Menu - Abot This Mac - More Info - System Report
2. In System Report, navigate to Software - Installations
3. Scroll down the software list, then see whether you have Chinese Word list Update 1.7 installed on your system
If you have Chinese Word list Update on your system, please copy and send me the following files for me to manual update my system:
1. In FInder, click Go and enter /private/var/db/receipts
2. copy all files: com.apple.chinesewordlistupdate.X-XXX.bom
and all com.apple.chinesewordlistupdtae.X-XXX.plist
also com.apple,chinesewordlist update.bom
and com.apple.chinesewordlistupdate.plist
3. In Finder, navigate to folder: Macintosh HD/usr/share/mecabra/updates
This is a hidden folder, so the Go command will not work. To get there, use Finder to navigate to this folder.
If you cannot see it, try enter this command in Terminal
defaults write com.apple.finder AppleShowAllFiles YES
and you can navigate to Macintosh HD/usr/share/mecabra/updates
After you have copied the following files listed in 4, you can get back to default setting bu entering
defaults write com.apple.finder AppleShowAllFiles NO
4. Copy files: com.apple.pkg.Inputmethod.SCIM.bundle
and com.apple.pkg.inputmethod.TCIM.bunble
Please send all these files to me, and I can put them into respective locations ro get my system, to update to Chinese Word list Update 1.7
Now for anybody who want to complete the update manually:
a. Put all the above files in its respective location
b. Open file Macintosh HD/Library/Recipts/Installhistrory.plist using plist editor software like PlistEdit Pro
This folder is hidden, please use the above terminal command to show it
c. Find Chinese Word list Update and note down the detail of keys there
d. Ceate a new key and enter all information you have copied in c., change version to 1.7
Done!
Thank for kined support for friend and expert that can send me these files to allow me to manually update Chinese Word list Update to verion 1.7
Or if any fiied have the installation file chinesewordlistupdate.pkg verion 1.7, please also send to me
<Email Edited by Host>Purd wrote:
Any suggestion and comment or advise please on this issue?
I'd recommend you take the advice given by Mende1 to you on this question last year: -
Drilldown and Multiple types of Counts
We need an operational analytics around Siebel Activities
Activities dimension are primarily
- Activity Type
- Owner
- Owner Supervisor
Activity Fact in our case comprises of
- Count #s
- Overdue #s [Count where Activity Status = 'Open' AND DUE_DATE < CURRENT_DATE]
- Due #s [Count where Activity Status = 'Open' AND DUE_DATE = CURRENT_DATE+ 1]
- Callback #s [Count where Activity Status = 'Open' AND DUE_DATE = CURRENT_DATE+ 1]
The Answer report should list as follows
Activity counts (Overdue #s, Due #s, Callback #s) should be listed for a call center Owner supervisor - This does not seem to be a problem
Drilling on Call Center Owner Supervisor, the report should show counts for each individuals or Owner under Call Center supervisor - This does not seem to be a problem
But the business is expecting one more drilldown, Ability to click on Individual or Owner and display Overdue Activity Id's, Due Activity Id's and Call back Activity Id's individually
Would appreciate your insight as to how to solve this. Can this be solved by Narratives? Can we show three drilldown, one for each count ? Please helpHi,
Instead of using drill down you can create two diffrent drilled reports.On click of Owner supervisor navigate to first report containing individual or owner and respective counts.From that report navigate to next report which will have Overdue Activity Id's, Due Activity Id's and Call back Activity Id's.
Put necessary columns as is prompted so that context from parent report is passed to child report.
Thanks
Sandeep -
MB51 ..* mark....
Hi ,
When I run the MB51 report i see the * mark in the "quantity unit of entry "column for most of the document.
Can you explain me what does it means??
Qty Eun
0004 201 K 7800477835 2 23.04.2008 23.04.2008 *00,000* LT ME1520 2.640,00- V8CG005 601784 AMSTO012
0004 321 K 7800476852 1 17.04.2008 17.04.2008 *50,741- LT 0,00 V8CG005 AMSTO012Check the variant / layout of the report (navigate through settings> layout> current and press Position) and increase the "Length" of the field "quantity unit of entry".
-
Navigate to the first item in a updatable report
on my page i have a master/detail form. When a new detail - record is created, the cursor navigate to the first item on the page => it is the first item of the master! What I have to do, that the cursor navigate to the first item in the new detail-record ??
Thanks
RobertHi Andy,
thank you for your answer.
When the program start, I can not find the cursor. I think, I have a problem to reference the item in the updatable report. I wrote the following lines:
<script language="JavaScript1.1" type="text/javascript">
alert('Vor Cursor Navigation');
first_field('#FKOM_RUFNR#');
</script>
(FKOM_RUFNR is a column of the select statement in the report!!)
A second problem: The cursor navigate to the field - first_field('FIELD_NAME') - every time. But the cursor should navigate to the field in the updatable report, if the button "ADD" in the region of the updatable report was clicked. If the page was displayed without clicking the ADD - button, the cursor should navigate to the first item in the master form ( like => Cursor focus: first item on the page). How can I do that ??
Thanks
Robert -
Open "Navigate" enabled report in new window - OBI10g.
Hello Experts,
May be its novice user question, i have 2 reports, source and target reports. Both reports are connected using "Navigate" functionality.
Issue is, i wan to open the target report in new window? is that possible?
using GO URL: we have an option like target='_blank'. but in navigate.. what is the option?
Thanks in advance....
Regards,
KiranThe Navigate feature can be modified to open targets in a new window by following the below steps:
- Edit OracleBI\oc4j_bi\j2ee\home\applications\analytics\analytics\res\b_mozilla\viewhelper.js
- Search for function NavigateInfo()
- Find the line with code this.sWindowTarget = "_self";
- Replace the line as this.sWindowTarget = "_blank";
- Clear the browser cache and reload the page.
The navigation targets will now open in a new window. -
How to create a hyperlink in RTF template to navigate within the report
Hi,
I have an RTF template for one of my report and in that i want to provide hyperlink "Top" which will take the user to the beginning of the report. The output of the report is in HTML format which gets displayed on the browser.
Since the report has some many tables and is very lengthy i wanted to provide an hyperlink which will navigate to the top at the end of each table.
I formatted my report title as "Heading1" and created an hyperlink at the bottom of the table in the template and pointed it to the above heading. But still i am not able to navigate to the top from the HTML report that gets generated.
I have the template and the sample xml file at the following shared location:
\\Rakumara-pc\TO_XMLPUB_GURU folder.
Please take a look and help point out what am i doing wrong.
-thanks
Ramesh KHey Ramesh
Thats cheating ... the forum is meant for customers not O developers ;o)
Can you send your template link (I cannot get into your PC) to the xmlp ML and we'll help there.
Regards, Tim -
How do I navigate to a report and select a row to return to a form
I'm using APEX 4.0.
My scenario is that I have a list of associations between Customer and Merchant called Shopper. From my Customers list report page when I click the edit icon, I navigate to a detail page. On this page, I want to be able to select one or more Merchants to associate with the Customer. The Merchant list needs to include multiple columns (not a simple LOV).
How do I add a multi-select multi-column list to my detail page? And, how do I link the selection(s) to the action button ("Associate")?The Previous Import collection up at the top left of Library in the Catalog section will show the set of photos most recently imported, but as soon as you’ve done another import that collection updates to the new set.
I always import my photos into a separate folder so I can go back and find them, later.
Maybe you are looking for
-
My old computer crashed and I purchased a new on with windows vista on it. I tried to transfer my songs purchased on itunes to the new computer from my ipod but it would only transfer a little more than half of them and it won't allow me to add my ju
-
Open website url with buttons in flash
i have a header built in a big flash file that i am using at the top of a website. i would like the buttons i put on the flash document to be able to open different pages of the document, if there is any codes in its simplest form to link a button to
-
We just migrated our 2010 exchange running off a sbs to exchange 2013 running on server 2012 standard. The issues we are having is if you shutdown the old sbs server mail flow stops completly. The other issues is that clients using outlook 2013 get t
-
Does this procedure (deauthorizing iTunes) also effect the Mac app store, or do I need to also deauthorize it somehow before formatting my hard drive?
-
Hello, I've a HP PSC 1110 connected on my computer. I placed hplip before cups in /etc/rc.conf file. The services are started correctly and it seems to recognise my printer since i can see the statistics about it from the console with hp-* stuff.. An