Issue with Date showing Null in interactive report
I created an interactive report for a customer and was confused to see blanks or more specifically dashes where there should be dates in one of the fields. I knew this field should have data so I did some testing and this is what I have found:
The sql I am running is:
select
assigned_to_company,
last_resolved_date,
incident_id
from
rhpd0009_im_adherence_rpt2_vw
When I run the command in SQL workshop I get the following results with data in the last_resolved_date field:
[http://i83.photobucket.com/albums/j299/yogibayer/apexdateissuesqlcommand.jpg]
I copied and pasted the SQL from SQL workshop and created a new interactive report and got the following results with no last_resolved_dates showing up:
[http://i83.photobucket.com/albums/j299/yogibayer/apexdateissueinteractivereport.jpg]
For some reason the order is different, but the first one INC1117629 shows up in both of them and has a last_resolved_date in SQL workshop, but not in the interactive report. Any help would be appreciated.
Thank You
Scott
Varad,
It seems to be related to the function we use to convert Remedy dates to Viewable dates. Remedy dates are stored as an integer that represents the absolute number of seconds from Jan 1, 1970 at 12:00 AM. We use a function that converts this number into a human readable date. I have tried encapsulating the result of the function in a TO_DATE and a TO_CHAR with the same results as before. There is something about the resulting data from the date convert function that Apex doesn't like. It would be interesting to isolate what exactly the issue is, but right now I'm just trying to find a work around.
Thank You
SCott
Similar Messages
-
Issues with the Radio Group and interactive report
Hi,
I have an interactive report that shows customer names and associated revenues... I want my users to be able to filter customer list by Province and by City in a way that when the user select a province then only associated cities show up (driven by a table)... for the filtration I am using 2 Radio Group items (one for Provinces and the other one for Cities)
Everything is working fine, except for the fact that when I select a province (let's say Prov A) and then select a city (let's say City A1) and again when I select another Province (let's say Prov B) I get the list of all cities associated to Prov B + city A1... Not sure why my previous selection of City is showing up with the list of new cities when I change the province... I SHOULD BE ABLE TO REST ALL CITIES WHEN A NEW PROVINCE IS SELECTED
here is the code
For interactive report
select CUSTOMER_NAME,
SUM(YTD) AS YTD
from T_TABLEA
where
(PROVINCE=
CASE
when :P2_PROV = 'All' THEN PROVINCE
ELSE :P2_PROV
END
and
(CITY=
CASE
when :P2_CITY = 'All' THEN CITY
ELSE :P2_CITY
END
GROUP BY CUSTOMER_NAME
For Province Radio Group I am using a static list:
STATIC2:All;All,Alberta;AB,Ontario;ON,Quebec;PQ,British Columbia;BC
For City, I am using a dynamic list using following code:
select 'All', 'All' return from dual
union
select distinct INITCAP(CITY) display_value, CITY return_value
from T_TABLEA
where
Province = :P2_PROV
order by 1
ThanksCheck the session state of items P2_PROV and *:P2_CITY* when the issue occurs and run the LOV query separately with the session state values.
If that too fetches it wrongly, then you would need to change your query. -
Issue with date formula when running a report on the 1st day of the month
We have a formula that compares last month data against last year last month, the report runs on the 1st of every month although the report errors when it tries to run in January being the first month of the new year it tries to look for a month begining with Zero instead of looking back at decemeber which would be 12.
Does anyone any solutions for this issue?
Thanks,
Chris
Example of some formula's we have tried but none seem to work.
if {@MonthName} = "December" then year({CDCCHD.CDOPDT}) in year(currentdate)-1 to year(currentdate)-2 else year({CDCCHD.CDOPDT}) in year(currentdate)
OR
(if {@Last Full Month Name}= "December" then year({CDCCHD.CDOPDT})= year(currentdate)-2 or
{CDCCHD.CDOPDT} in lastyearytd else {CDCCHD.CDOPDT} in lastyearytd or
{CDCCHD.CDOPDT} in yeartodate)
OR
({CDCCHD.CDOPDT} in dateserial(year(currentdate)-1,month(currentdate),01)-1 to dateserial(year(currentdate)-1,month(currentdate)-1,01) or
{CDCCHD.CDOPDT} in lastfullmonth)
OR
if {@monthname} = "December" then {CDCCHD.CDOPDT} in dateadd("m", -28, (currentdate)) to (currentdate)-14 else {CDCCHD.CDOPDT} in dateadd("m", -14, (currentdate)) to (currentdate)Chris,
Give these formulas a try...
Beg of Last Month
DateAdd("m", DateDiff("m",#1/1/1900#, CurrentDate) - 1, #1/1/1900#)
End of Last Month
DateAdd("m", DateDiff("m",#1/1/1900#, CurrentDate), #1/1/1900#)
Beg December of Last Year
IF DatePart("m",CurrentDate) = 1
THEN DateSerial(DatePart("yyyy",CurrentDate) -2, 12,1)
ELSE DateSerial(DatePart("yyyy",CurrentDate) -1, 12,1)
End December of Last Year
IF DatePart("m",CurrentDate) = 1
THEN DateSerial(DatePart("yyyy",CurrentDate) -1, 1,1)
ELSE DateSerial(DatePart("yyyy",CurrentDate), 1,1)
Note that the "End" formulas produce a value that shows midnight of the following day that you would normally expect to see... For example, if you are expecting to see 12/31/2009, it will show 1-1-2010.
The reason is that the formulas come out to be midnight of the day shown... So a range of 12/1/2009 - 1/1/2010 will include 12/31/2009's data but none of 1/1/2010... (12/1/2009 - 12/31/2009 would actually cut off 12/31/2009).
If for some reason your data is stored w/o time values then an adjustment would need to be mande.
HTH,
Jason -
Issue with Date used to Filter a Report
I have the following source for a report. The source was working correctly before and I am trying to add a date filter to it.
q VARCHAR2(32767); -- query
w VARCHAR2(4000) ; -- where clause
w2 VARCHAR2(4000) ; -- where clause for salesrep
w3 VARCHAR2(4000) ; -- where clause for agent
w4 VARCHAR2(4000) ; -- where clause for date range
we VARCHAR2(1) := 'N'; -- identifies if where clause exists
BEGIN
q := 'SELECT "TBLCALL"."CALLID", "TBLSALESREP"."LNAME" || '', '' || "TBLSALESREP"."FNAME" as "SalesRep", "TBLAGENT"."LNAME" || '', '' || "TBLAGENT"."FNAME" as "Agent", "TBLAGENT"."AGENTID", "COMPLETEDATE", htmldb_util.get_since("CREATEDATE") as "Age", "CREATEDATE",
"TBLDIRECTOR"."DIRECTORNAME",
decode("CREQUESTID",NULL,''None'',"CREQUESTID") as "# REQUESTS", "REQUESTSTATUS", "ESCALATIONNAME" '
||
' FROM "#OWNER#"."TBLAGENT", "#OWNER#"."TBLSALESREP", "#OWNER#"."TBLDIRECTOR", "#OWNER#"."TBLCALL", "#OWNER#"."VW_CALLREQUESTS", "#OWNER#"."VW_CALLSTATUS", "#OWNER#"."VW_CALLESCALATION" '
||
' WHERE "TBLAGENT"."AGENTID" = "TBLCALL"."AGENTID"
and "TBLSALESREP"."DIRECTORID"="TBLDIRECTOR"."DIRECTORID"
and "TBLCALL"."CALLID"="VW_CALLREQUESTS"."CALLID"(+)
and "TBLCALL"."CALLID"="VW_CALLSTATUS"."CALLID"(+)
and "TBLCALL"."CALLID"="VW_CALLESCALATION"."CALLID"(+)
and "TBLSALESREP"."SALESREPID"="TBLCALL"."SALESREPID" ';
IF :P1_COMPLETED = '0'
THEN
w := ' COMPLETEDATE is null';
we := 'Y';
END IF;
IF :P1_COMPLETED = '1'
THEN
w := ' COMPLETEDATE is not null ';
we := 'Y';
END IF;
IF :P1_SELECT_SALESREP != '-1' THEN
w2 := ' AND TBLCALL.SALESREPID= :P1_SELECT_SALESREP ';
ELSE
w2 := '';
END IF;
IF :P1_SELECT_AGENT != '-1' THEN
w3 := ' AND TBLAGENT.AGENTID= :P1_SELECT_AGENT ';
ELSE
w3 := '';
END IF;
IF :P1_STARTDATE is not null AND :P1_ENDDATE is not null THEN
w4:= ' AND TBLCALL.CREATEDATE between ' || to_date(NVL(:P1_STARTDATE,'01/01/1900'), 'MM/DD/YYYY') || ' AND ' || to_date(NVL(:P1_ENDDATE,'12/31/9999'),'MM/DD/YYYY');
ELSE
w4 := '';
end if;
IF we = 'Y' THEN
q := q || ' AND ' || w || w2 || w3 || w4 ;
ELSE
q := q || w2 || w3 || w4;
END IF;
RETURN q;
END;
Each time I try to run the page... the report gives me the following error:
failed to parse SQL query:
ORA-00904: "OCT": invalid identifier
It looks like a date format issue, but I have tried several things to resolve it and it still does not work... What can I do?I think you have a problem with format masks.
Check the format masks that are used in P1_STARTDATE and P2_STARTDATE -
Date Filtering With Equals and Time in Interactive Reports
Using Apex 4.2.0.00.27
I have a date column in an Interactive Report. The default column and action menu filters include things like "in the last 2 hours". If I remove the time component of the date this fails to find any records.
If I leave the time component in the date then the user also has the option (via action->filter menu) to select a filter for "equals" and then this fails to find any records.
I would like to keep the time component but also allow the filter for "equals a specific date".
Gregadamt wrote:
Thank you very much fac586!
It's probably obvious I'm not very familiar with APEX (not HTML/CSS!) but managed to figure out a place to put what you said...If you are unfamiliar with the web technologies used in APEX, spend some time on the tutorials here: start with HTML, then XHTML, CSS, Javascript and the HTML DOM, and now HTML5.
I appended the following in the template definition section for "Region without Buttons and Titles" and the Interactive Report looks how the users want now! I should probably take a copy of that template and only use it for the relevant IRs so that nothing else gets messed up.There are 3 ways to include CSS in web pages. The easiest is using an internal style sheet as you've done, but where you've put it is <a href="https://forums.oracle.com/forums/thread.jspa?messageID=10178616�">invalid according to the HTML specification</a>. The page HTML Header property in the APEX Page Attributes is the appropriate place for such style sheets. However ff you want to apply these styles globally across your application then that's not a scalable approach as it involves modifying every page with an IR. The standards-compliant approach is to modify the required page templates, either to include an external style sheet containing these overrides, or (more ambitiously and efficiently) copying and modifying the theme files in a different location and changing the page templates to reference them.
<style type="text/css">
.apexir_WORKSHEET_DATA th div {
margin-left: 0;
.apexir_WORKSHEET_DATA th,
.apexir_WORKSHEET_DATA td {
border: 1px solid #CCCCCC;
</style>Always post code wrapped in tags<tt>\...\</tt> tags to preserve formatting and special characters. -
Issue with Data Provider name in variable screen for BEx Analyzer
Hello all,
We got an issue with Data Provider name in Variable screen in BEx Analayzer.
We want to change the DataProvider name there to Description of the report instead of its Technical name.
Any inputs are appreciated.
Thanks
KumarYou have to create a workbook to do this.
Refresh your query/report. In Bex analyser, there is one toolbar named BEx design toolbox, If you are not able to see it in analyser, right click on the toolbar space of BEx analyser and click on BEx design toolbox. Here, goto to design mode, by clicking on a sysbol like 'A'. after that place the curser where you want to see the Query description. and click on insert text (T) in BEx toolbox. click on it and check "Query description" in constant tab. in the general tab you need to assign a dataprovider, for that assign your query name in workbook settings (in Bex design toolbox). also check the "display caption" in general tab.
Pravender -
Hi All,
I m facing an issue with Date format in the prompt. I have used date presentation variables in my column formula as shown below:
FILTER("SKU Order Details"."Fulfilled Quantity" USING Time."Calendar Date" <= DATE '@{todate}{2900-01-01}')
The report returns data when I don't select any date range for start & end date prompts on the page. But when I select the start & end date values in the prompt, I m getting the following error:
Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P:OI2DL65P
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 46047] Datetime value 10/22/2009 12:00:00 AM from 10/22/2009 12:00:00 AM does not match the specified format. (HY000)
I included the following formulas for start & end date prompts:
Start Date prompt: case when 1=2 then License."Ips Creation Date" else cast ('1.1.1900' as date) end
End Date prompt: case when 1=2 then License."Ips Creation Date" else cast ('1.1.2900' as date) end
Can you please help me resolve the issue.
Thanks,
KartikHi Nico,
I tried putting the format that you mentioned, I m getting an error message.
My prompts have the following formula :
Start: case when 1=2 then License."Creation Date" else cast('1.1.1900' as DATE) end
End: case when 1=2 then Time."Calendar Date" else cast('1.1.2900' as DATE) end
My column formula has the following syntax:
FILTER("SKU Order Details"."Fulfilled Quantity" USING Time."Calendar Date" between DATE '@{start}{1900-01-01}' AND DATE '@{end}{2999-01-01}')
Error Message:
Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P:OI2DL65P
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 46047] Datetime value 11/17/2009 from 11/17/2009 does not match the specified format. (HY000)
Can you please let me know if something needs to be changed.
Thanks,
Kartik -
Issue with data dictionary -Table maintanance generator
Hi all,
I have an issue with Data dictionary, table maintenance generator. I have entered some records in a custom table (ZBCSECROLETOGRP) and changed the delivery class from C to A. When I create the table maintainance generator, I am encountered with the following errors:
1)Field ZBCSECROLETOGRP-PORTALGROUP shortened (new visible length: 000032)
2)0012 could not be generated
3)In TCTRL_ZBCSECROLETOGRP field LENGTH has the invalid value 01
My main motto is to create the table maintainace generator and transport to the furthur systems .
Please help.
ThnX in advance,
Vishal..HI,
Regenerate the table maintenance by selecting the checkbox of "Modified field structure" => new entry & then save.
Also ensure that the new changes are not affecting old data bcz of data type changes. If that is the case, then delete the old records, regenerate table maint. & re-enter those records which you had deleted.
Thanks,
Best regards,
Prashant -
Problems with Page Break in an Interactive Reporting report
Hello everybody,
Platform: Hyperion System 9.3.1.
I have serious problems in managing the 'page break' in an Interactive Reporting report.
The report shows sales data by store, with article and colour details and it is organized like this:
group 1: geographic area
group 2: country
group 3: city
group 4: store
columns: article, colour
facts: quantity, price, value
My client's request is to perform a page break at the store group level, meaning that apart from the first store occurance, any change in the store value shoul start a new page.
The requested result is like this:
page1: geographic area1
country1
city1
store1
data store1...
page 2: store2
data store2...
page3: store3
data store3...
I tried several combinations of using Break After and Break Before on the store group, with Keep Next / Keep Together and it was impossible to obtain the desired result.
If I use Break Before the result is as follows:
page 1: geographic area1
country1
city1
page 2: store1
data store1...
page 3: store2
data store2...
If I use Break After the result is as follows:
page 1: geographic area1
country1
city1
store 1
page 2: data store1...
store 2
page 3: data store2...
even if I specify 'Keep with next' or 'Keep together' for store group and the store data table.
Any help will be very very appreciated because I've been trying for weeks to figure out this issue.
DanielaFirst start without using any of the Keep with Next and Keep together.
Second. try putting the Page Break in the Group Footer. You do not need to keep it visible
Then you may want to repeat headers on Store in case the Store's Detail rolls onto next page
Hope this helps
Wayne -
Issues with Bex query structures and Crystal Reports/Webi
Hi experts,
I'm having an issue with Bex Query structures and nulls. I've built a Crystal Report against a Bex query that uses a Bex Query structure. The structure looks like the following
Budget $
Budget %
Actual $
Actual %
Budget YTD
etc
if I drag the structure into the Crystal Report detail section with a key figure it displays like this
Budget $ <null>
Budget % <null>
Actual $ 300
Actual % 85
Budget YTD 250
the null values are displayed (and this is what is required). However if I filter using a Record selection or group on a profit centre then the nulls along with the associated structure component are not displayed.
Actual $ 300
Actual % 85
Budget YTD 250
Webi is also behaving similarly. Can anyone explain why the above is happening and suggest a solution either on the Bex side of things or on the Crystal Reports side of things? I'm confused as to why nulls are displayed in the first example and not the second.
Business Objects Edge 3.1 SP2
SAP Int Kit SP2
OS: Linux
BW 701 Level 6
Crystal Reports 2008 V1
Thanks
KeithHi,
Crystal Reports and Web Intelligence will only show data which is in the cube. You could have an actual 0 or Null entry whithout grouping but by changing the selection / grouping in the report the data does not include such entry anymore.
ingo -
Re : Issue with the column display in Bex reports
Hello Gurus,
I have an issue with the reports in Bex, this is a bit confusing scenario I would try to explain in more details. A query was already built for monthly Report in Sales and Billing for which the variable were Calender month/year range 1 (mandatory), range 2 range 3 range 4. These 4 variable were created and moved to column rows in query.
Later the user wanted the copy of same report but he wanted the variables to be Calender date range 1 (mandatory), range 2, range 3 , range 4. I have created them with 0calenderday as reference and moved to the columns.
for the monthly report text variables were already existing for the Calender month/ year, but for the daily report text variable were not existing for Dates. I have created a text variable for the date in the following way processing by
" replacement path" and reference characteristic as 0calday and in the replacement path tab.. in replace variable the selection is info object, the next option Replace with " External charactersitic value key " .
By creating this text variable the dates were being displayed in the colum header like 11/01/2013 - 11/30/2013 which satisfies the requirement.
But the user wanted to see the report same like monthly report when the mandatory variable Calender year/ month is selected, the rest of the columns range 2, range 3, range 4 are displayed as unassigned in the report. but coming back to the daily report when the user is giving the Calender date rage 1, he is finding that Calender date range 2, range 3, range 4 are also being displayed with values. He want to see the Calender date range 2,3,4 as unassigned in the report just like monthly. Please find the images attached.
As Calender month/ year is predefined, if the calender range values are not given it would show up as not assigned default. I have created a separate text variable for Calender day, I believe that could be the reason rest of the columns are not showing up as unassigned. The user want to see them as unassigned like monthly report columns.
I tried different ways changing the text variables but I could not change the display of the columns in Calender date report by the option - replace with ----> External characteristic value key, key, label. when I chose the option external characteristic value then the date was showing up in the text of the column when report is run ( Please find the image for the reference in the attachment ). . I request you to help me out in this. Please find the images of the variables and output below.Anshu,
Thank you very much for above code I made minor changes to the code that finally worked. I created 4 different text variables needed for Calender date range 1, 2 ,3 ,4. Please find the code below for the text variable that worked in the system
WHEN 'ZTEXT_CAL1'.
READ TABLE I_T_VAR_RANGE INTO loc_var_range
WITH KEY VNAM = 'ZCALDATE1'.
IF loc_var_range-LOW = '#'.
dt_low = 'Not Assigned'.
dt_high = 'Not Assigned'.
CONCATENATE dt_low '-' dt_high INTO l_s_range-low.
ELSE.
CONCATENATE loc_var_range-low+4(2) '/' loc_var_range-low+6(2) '/' loc_var_range-low+0(4) into dt_low.
CONCATENATE loc_var_range-high+4(2) '/' loc_var_range-high+6(2) '/' loc_var_range-high+0(4) into dt_high.
CONCATENATE dt_low '-' dt_high INTO l_s_range-low.
ENDIF.
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE. -
Hi All,
I have a table(Revenues) and a view(locations) using which I have created a crosstab report
which has a date as a column in the table and rows contain Region and location and Summary column has the revenues.
Due to some issues I have again created another view which took data from both these (view and table) and I replaced the view in crystal report and build the cross tab.
Now I am unable to change the date time format ( Cross tab column) in the new view as it shows datatype as string.
I need to convert the date i.e this string in form ( yyyy/dd/mm hrs:minutes:sec ) to (mmm - yy)
How can i Acheive this.??
Thank you,
NaniHi
I have solved that Issue By making changes in the view.
But now I am struck with some thing else...
Here Is the Scenario.
Revenues Table has Three Colums ( Date, Revenue, Site _CODE) >>>> It has 650 rows
Locations VW has these columns ( Site_Code, site_DESC, Region,...................) It has 65 Rows.
For a cross tab I need Region and Site_Desc as Rows and Date as a Column And revenue as Summary column ( for month)
I was unable to retrieve all the Site Desc for a region in crystal reports ( Also tried outer joins in LInks tab)
So i have created a new view from both of the above which has ( date,Revenue, site_code,site_desc,Region) and updated it in the Data source location of crystal reports.
I am getting all the data from past 5 years (which has 65 rows in the crosstab)
But when I am trying to filter it to 2010 data It gives only 24rows of data ( I am loosing site desc in the regions.)
I need all the site Desc in table whether they have a revenue or not.
How can I do this.
I have tried applying the select expert but got no luck.
Your assistance will be appreciated.
Thank YOu. -
Issue with OM relationship structure when using report RHSTRU00
In HR, one Person (P) is attached to only one Central Person (CP). So, when we run the report with date period as of Today, we expect a Tree structure in the output with P-CP relationships displayed. However, we see that the report displays one Person attached to many CPs.
The program fetches the 1 P to 1 CP combination. However, it deletes all Persons who are not Active as of today but does not delete the CP. It then attaches all CPs to the first Active Person it can find.
This is a serious bug since it shows data which is different from what exists in the system. In our systems as would be in any HR system in the world, One person can be attached to only one CP and the program shows that the Person is attached to many CPs.
I opened a OSS message but SAP refused to correct this bug.
Has anybody else ever encountered the same issue and do you have a solution to this?I checked the report, and it certainly returns incorrect data, I found exactly what you say regarding active/inactive persons.
What is SAP's reason for not looking into this? It would be interesting to hear their argumentation for this not being a bug.
It may be that SAP expects RHSTRU00 to be called only for active persons? This would require running another report first to get the input for RHSTRU00. This seems like a strange prerequisite for the program, and I do not understand why SAP don't see this as a bug. The error seems rather obvious and reproducable.
I often find that I have to push to get passed first line of support to have SAP see the problem. It is tiring, but I have found this to be the fact far too often.
PS - we never use the program like this, so we do not face the problem ourselves.
/Kirsten -
Retrieve SQL with filters applied from an Interactive Report
I want to use an Interactive report as interface for providing parameters to a base report query.
I would like to capture the full SQL code from the filtered interactive report and then run the sql to create a collection.
I have found this tread
Re: Using Data from filtered Interactive Report
which says that you can use APEX_APPLICATION_PAGE_IR to access the reports SQL. This holds the information about the interactive report when the user saves it. The sql code from the interactive report (after the user has added filters) is stored in the field sql_query.I can only retrieve the base query and not the filtered version even after saving.
Any ideas how this can be done would be appreciated.
regards
PPOK Darren I think I've got it working. My solution is an adaption that follows the steps of a blog I found here: http://stewstools.wordpress.com/2009/02/19/get-ir-where-clause/
My solution allows you to click on a button and the records that are currently displayed in the IR report are saved to an APEX collection. You can then use the collection to save records to a table or run a report on another page. (I haven't included code for this last step but it's easy to find on the forum)
First a bit of background knowledge. The following APEX views hold all the information on IRs that you access via PLSQL code in the package you need to download. Run an IR report, save a version of the report, then in SQL Workshop have a look at:
select * from APEX_APPLICATION_PAGE_IR
select * from APEX_APPLICATION_PAGE_IR_COND
select * from APEX_APPLICATION_PAGE_IR_COL
select * from APEX_APPLICATION_PAGE_IR_RPT
When you run an IR report it has an internal ID that you can access and also a Base Id for each Saved report that is currently in context.
Here are the steps:
1) Download the following package and install it in the workspace schema
http://www.mediafire.com/?nj118x9vmc9
click on the link "click here to download"
2)In the HTML header Attribute of the page where your IR runs, put the following Javascript:
<!--===================================================================-->
<!--FUNCTION TO RETRIEVE IR REPORTS SQL WITH WHERE CLAUSE
<!--===================================================================-->
<script language="JavaScript" type="text/javascript">
function SaveAndRunReport() {
document.location='f?p=&APP_ID.:3:&SESSION.:CONSTRUCT_IR_QUERY:NO::'+
'P3_BASE_REPORT_ID:'+$v('apexir_REPORT_ID');
</script>
<!--===================================================================-->
Notes: You will need to obviously change the URL above to reflect your Page No. (3) and the name of a HIDDEN Item (P3_BASE_REPORT_ID) that you will populate with the base ID of the report.
Setting :P3_BASE_REPORT_ID to +$v('apexir_REPORT_ID') is an internal thing and works out of the box. It returns the Id of the Base report.
3) Create a button called SELECT_SPECIMENS (in region position - top of region) in the IR region that will initiate the execution of the IR background SQL to create a collection with the current selected records.
TARGET= URL
URL Target = javascript:SaveAndRunReport();
You might also want to create a condition that only shows the button when there are records selected
CONDITION TYPE=Exists(SQL returns at least one row)
EXPRESSION 1 - put the SQL of the IR report here.
4)Create a branch back to the same page (3) and with the REQUEST attribute set to the value in the Javascript URL above e.g. CONSTRUCT_IR_QUERY. Create a condition on the branch that uses this branch WHEN BUTTON PRESSED= SELECT_SPECIMENS
5) Create an AFTER HEADER PROCESS with the following code:
declare
v_base_query clob;
v_where clob;
v_query clob;
v_base_where varchar2(12):=' where 1=1 '; -- incase there is no where clause in the base query
begin
if apex_collection.collection_exists('IR_COLLECTION') THEN
htmldb_collection.delete_collection( p_collection_name => 'IR_COLLECTION');
end if;
--GET THE BASE QUERY OF THE IR REPORT
select sql_query
into v_base_query
from APEX_APPLICATION_PAGE_IR
where application_id=:APP_ID
and page_id=:APP_PAGE_ID; -- you can only have one IR report per page
--UNCOMMENT TO VIEW THE PARAMETERS TO THE PACKAGED FUNCTION
--raise_application_error(-20001, :APP_ID||'-'||:APP_PAGE_ID||'-'||:SESSION||'-'||:P3_BASE_REPORT_ID);
--GET THE SQL FILTER CODE
select apex_ir_query.ir_query_where(:APP_ID,:APP_PAGE_ID,:SESSION,:P3_BASE_REPORT_ID)
into v_where
from dual;
--CHECK TO SEE THAT THERE IS A "WHERE" CLAUSE IN THE BASE QUERY
if instr(upper(v_base_query),'WHERE ') > 0 then
v_query:=v_base_query||' '||v_where;
else
v_query:=v_base_query||' '||v_base_where||' '||v_where;
end if;
--UNCOMMENT TO SEE THE FULL QUERY SYNTAX
--raise_application_error(-20001,v_query);
--CREATE COLLECTION FROM IR RECORDS
apex_collection.create_collection_from_query(P_collection_name=>'IR_COLLECTION',p_query=>v_query);
exception
when others then
raise_application_error(-20001, 'Interactive report not found. Contact Administrator. Could not create collection of records.');
end;
remember to update P3_BASE_REPORT_ID above to your HIDDEN ITEM name.
Set the following attributes for the process above
CONDITIONAL PROCESSING
CONDITION TYPE = Request=Expression 1
EXPRESSION 1 --> CONSTRUCT_IR_QUERY (Note: this was set on the branch in step 4 above)
6) Run the IR report, click on the "SELECT SPECIMENS" button then click on the Session link on the Developer's Toolbar and select VIEW COLLECTIONS from the popup list then click GO. You should now see the IR records.
By the way I've been testing in IE not Firefox.
...and that's it!
enjoy
Paul P -
How to link Excel tabs so data shows up in one report
I have a huge excel file with 16 tabs (sheets) of data. Each tab has an excel speadsheet filled. I have the data in Crystal. Each tab shows up as a separate table. I've tried to link each in different ways but can only get one table to show up in the report. I want all the data in one report. If that's possible. It would be very large.
Graham,
Thanks for answering,
Yes I have the tables and can link them (have tried a couple of different ways) One has all the data fields linked between tables and the other way was to run them in series with just one field linked. Either way the Field Explorer on the right side of the screen shows each table and each table lists all the fields. But the problem is that the report only shows data from one table, not all the tables or all the data. The data that it shows is only from the table that I selected the fields from.
Hope this makes sense. Thanks
Maybe you are looking for
-
Using godaddy to host my iweb (2.0.4) website
After talking to godaddy, they convinced me that I should have my site hosted by them, Sounded good. They said iweb would work fine. Well, it does not work. I upload the files I created in iweb three times. The first page shows up fine, but the links
-
Problem with adobe reader while faxing a pdf document
hi all i am working with a windows application (.net windows service) to fax pdf documents periodically. when i started the service the first time the document was sent and next time onwords it is not at all sending fax . when i restarted the system
-
How do I get page numbers on the left and right side of the page?
I am finishing up a book in PAGES '08 on my Mac. How do I get page numbers on the left and right side of the page. I can get them on the page but I'd like them on the left and right sides. Evan
-
Server sizing method for SAP-PS module
Dear Experts, can anybody throw some light on how to do server sizing when the database is Oracle. Thanks in adv. regards Ashis
-
Multiple version of JRE in company..How to manage? (newbie question)
Greetings..this is a newbie question We have 48 versions of JRE running in on XP IE6 in our company. Some version beat up other JAVA applications. It's a mess. How can anyone manage this many versions? Can we consolidate down to a few versions? I saw