Filtering / Redesigning Reports methodology

Greetings All!
I need your advice on this issue:
We need to implement something like Access Database crosstab / Excel pivot table report
We have PL/SQL function which creates query for this report
Unfortunately Interactive Report cannot take PL/SQL body as datasource
We tried it with regular ApEx SQL Report and it works.
Now we need to create filtering and grouping GUI
And here the question goes:
Should we
a) create form based on database table which will hold all settings for all reports (and fields which users select to view in report and build filters for - with possible ability to save settings) and somehow - thru PL/SQL body, getting session id? - change the source of SQL Report for THAT user session which requested this report layout (and there are a lot of sessions possible)
- this would be universal for any report but is it worth doing?
or
b) create simple dropdowns / list boxes / checkboxes or a Wizard similar to Excel pivot table wizard at the same page where SQL Report resides and simply read these ~..boxes and rewrite report's query thru PL/SQL body here.
- this would be pretty simple (or there will be a lot of coding?) but should be repeated for every report from scratch...
So I'm in doubt which way is better...

My problem is that I should allow users to create CROSSTAB on any field thay choose, so I need best practice:
1) how to organize GUI for users where they could select row/column/sum fields
a) universal form (for any report) based on table which stores saved settings between sessions
b) checkboxes/listboxes hand-made for every single report
c) ...?
2) how to change report's datasource to show results based on p.1.
for p.2 I have function that gets row/column/sum fields as parameters ans builds SQL query (string) for me
and here are your recommendations:
Jens.Gauger >Have you ever tried to to use a "Pipeline"-Function?
Not yet, thanks for example!
So Interactive Report is able to use this syntax
'SELECT ... FROM TABLE(<function name>(<param1>,<param2>...)).
and Interactive Report will magically change number of its fields at run time based on what function returns (because number and names of columns are unknown before user chooses CROSSTAB column field)?
ATD >An Interactive Report can be based on a collection
thanks for example too!
Could you please tell me which approach (pipeline on collection) is better and why?
Maybe it's important that underlying data may have millions of rows and collection will be slower (or faster) on these millions?
And I still need advice from you on p.1

Similar Messages

  • Issue filtering a report (based on narrative view) with a dashboard prompt.

    I used HTML and java-script codes in narrative view to solve the issue of "linking different reports on selecting values from a drop-down". A new issue has cropped up due to that implementation. The issue is that i can't attach a dashboard prompt to such a report. This means, when i put this report on a dashboard page with a dashboard prompt to help filter the report, the report does not gets filtered (it does not seems to be connected to the dashboard prompt).
    Has anyone faced this issue before? If yes, please let me know how to tackle it at the earliest.
    Regards,
    Ramil

    Hi,
    sorry , i could not solve the problem. the below case statement i put in the formula of a date column but i got some syntax error.One more thing is case statement is appearing in the select query not in where condition. Do u mean to say if i will put the same column as is prompted then it will come in where condition.
    Could u plz help me where i am doing wrong .
    case when '@{Period}'='Weekly' then Alerts."Creation Date and Time"  between  '@{PStartDate -7}' and  '@{PStartDate}' end
    [nQSError: 10058] A general error has occurred. [nQSError: 27002] Near <between>: Syntax error [nQSError: 26012] . (HY000)
    SQL Issued: SELECT Alerts."Business Domain(s)", Alerts."Closing Action Type", Alerts.Closer, case when ''='Weekly' then Alerts."Creation Date and Time" between '' and '' end FROM "Common Productivity Reports for Alerts"

  • Adding Every Row From a Filtered Interactive Report to a Collection

    I'm creating an email list maintenance application in Apex 3.1. I have an Interactive Report on an email address table. I want the users to be able to run this IR and then click a button to add all of the resulting email addresses into a selected mailing list table. The interface needs to be as quick and simple for the user as possible, so I don't want to force them to click a checkbox beside hundreds of rows.
    Is there a way to add every resulting row from a custom IR to an apex_collection?
    I know that collections can be created based on a query with the CREATE_COLLECTION_FROM_QUERY call. But I don't think it's possible to reference the SQL statement which is dynamically generated through an Interactive Report. I'm referring to the SQL created after the user has applied filters. If there were, then I would just create the collection that way. Please correct me if I'm wrong.
    Thanks,
    Martin

    Hi Martin
    I couldn't find a place where the filters are stored either - it would be nice to know.
    It is possible to get to the filters via javascript as they are actually stored in a table with an id of "apexir_CONTROL_PANEL_COMPLETE". Within there, there are rows for each filter and each row has four cells. The second cell contains an A tag that has the filter itself as the text displayed as a hyperlink on screen. The third cell contains the checkbox that enables/disables the filter. Strings and numbers seem to be formatted ok, so you could pick up these values and create your own WHERE clause, populate a hidden field somewhere and then pick that up to generate a full select statement to get to the id's that you need.
    I haven't yet tried this, so this is theory only - but I can't see that it wouldn't work
    Andy

  • HELP IR Download filtered saved report to CSV

    Hi there
    My enquiry is to do with the saved reports feature in Interactive Reports Apex 4.1
    I create a default IR report and then I subsequently define a filter on this report effectively limiting the displayed output to the rows of data I want to see. I then save the report which is now a 'private' report. If I run the 'saved' (with the filter condition) IR report it displays the data correctly, with the 'saved' report displaying the correct data on the screen I then click Actions->Download and then select CSV - the entire 'primary' report is downloaded -- The filter is ignored!!! Surely the Actions->Download should 'know' that I want download the report that's being displayed (just run) on the screen?
    I think that when you click on the CSV icon the report is re-submitted - How can I get the CSV download to apply the filter that I've defined in the saved report.
    I've searched this forum and found the following similar question being asked
    Re: Problem with export from a saved interactive report
    Interactive Report Download to csv problem
    how to download only filtered data in csv?
    Re: Download Saved Report in IR 4.1
    Thanks in advance
    PS: Is the above an undocumented feature of Apex IR Reports?
    Edited by: boketi on Sep 25, 2012 7:05 AM

    Hi Sathish,
    Thanks for your comment.
    I agree with just a 'default' report the CSV download always gives what is displayed on the screen. If you then define another report with a filter condition and run this 'private' report 'sometimes' the CSV download gives the origional primary report, ignoring the filter condition. Please see the attached links as other people are also getting the same problem.

  • Performance of filtering a report using another report

    Hello,
    There are really two questions in this post:
    i) Is there an easier way to select all contacts who have never responded positively to a campaign than to filter our report using the output of another report which selects all contacts who responded positively to at least one campaign? While this approach works properly, I have only been able to successfully run the report on a small sample of the entire data set. The report including all contacts who responded positively to at least one campaign contains about 8k records, and our system contains about 12k contacts. When I ran the report on the full data set, I was unable to obtain any output even after waiting for up to 10~15 mins.
    ii) If I am using the right approach, does anyone know if CRMOD can handle a report filtered on another report with a data set the size of the one described above?
    Any help/comments would be greatly appreciated.
    Thanks,
    JP

    Hi,
    There are a few things I would suggest here:
    1. Run all your reports individually and export the results to excel. Use the VLOOKUP function in excel to get the dataset you're looking for, once you have the final set you can always create a custom checkbox field and import all your records flagging your field as a 'Y'. That will make things nice and simple for reporting and anything else as all of your records can be identified with a simple filter. I do however guess this is probably a fluctuating on-going process and this may not be appropriate
    2. In your reports add another 'Contact ID' column. Change the calculation to: RCOUNT(Contact.ID). This report should count the unique Id's in your report, you can then apply a filter on it e.g. My Column < 4000 or My Column > 4000. This will limit the number of rows in your report so that you can have multiple feeds. You will obviously need another report for each filter but it should trim the records numbers down for you an make this all possible
    3. Use the MINUS functionality as per my first suggestion on the 1st post, this does not have these limitations but it a pain to setup. You shouldn't have an issue with this if you're using the same subject area for each report, when you start combining lots of different subject areas then it all gets a little more tricky
    Thanks
    Oli @ Innoveer

  • Filtering a Report on the active record of another Report on the same page

    Hello,
    I have a Form and Report on the same page in an APEX app. The interactive report is used for sorting/filtering etc. and the Form is used to present the data for one record at a time, as well as allow updates in selected fields. This was done using the wizards, the little 'edit' button is clicked to change the form to the selected record.
    I also have (or want to have) a second non-interactive report on the page, which displays some records based on the record of the main report that is currently selected and appearing in the form.
    I tried doing a simple 'SELECT fields WHERE link field is equal to main report', but it always says no data found.
    Basically, I need to be able to have a query for the second report that says 'SELECT these fields WHERE the site is equal to the site currently being displayed in the form'.
    When the little pencil/paper 'edit' button is clicked on a report, does this set some ActiveRow or something like this that I can use to filter the second report?
    As you can tell from this post, I am in my database skill infancy, and any literature/pointers on how to achieve this (outside of MS ACCESS...) would be appreciated.

    Okay, I have somewhat got my head around Column Links, and have put the key link field into the URL:
    The value is P4_MDF, and in this URL example it has taken the value of 'WLAH01'
    f?p=880:4:3924084145794812::NO::P4_MDF,P4_ESA_CODE,P4_SITE_NAME:WLAH01%2CWLAH%2CWYRALLAH
    Now I just need to work out how to use this value in the URL to filter the classic report.
    I have used this query:
    SELECT *
    FROM
    "MACHINE_INFO"
    WHERE CCP = :P4_MDF
    As CCP in the report im trying to filter is the same as MDF in the IR that I am clicking the Column Link
    This is the Debug for the 2nd 'filtered' report (which filters everything)
    0.09: show report
    0.09: determine column headings
    0.09: parse query as: EXPAT
    0.09: binding: ":P4_MDF"="P4_MDF" value="WLAH01"
    0.09: print column headings
    0.09: rows loop: 15 row(s)
    I'm slowly getting the hang of this, any assistance would be great!

  • Cascading Filters in Report Model

    Hi
    I have created a Report Model for Adhoc Reports, we are using Report Builder 1.0 as Adhoc tool. Now the issue is when the user filters the data. First, user applies filter on Product Catogery Table (ProductCatogery_ID = 1) , now when trying to apply
    filter on Product Sub Catagory Table, in the filter drop down it is showing all the Sub_Catagory_IDs, but the user wants to see only those Sub_Catagory_IDs related to (ProductCatogery_ID = 1). How can we acheive this in Report Builder.
    Royal Thomas

    Hi Royal Thomas,
    According to your description, you created an Ad-hoc report with report model as data source in Report Builder 1.0. You want to create a cascading parameter, after ProductCatogery_ID is selected, the list of values for Sub_Catagory_ID will be displayed depends
    on the value chosen in preceding parameter.
    I tested the issue in my local machine, I can add a filter by dragging an entity or field name to the filter area and specify a comparison operator and criteria. But I’m afraid we could not create cascading parameters achieve that in Report Builder 1.0,
    as a workaround, we can achieve Cascading Parameter in Report Designer and in Report Builder 2.0.
    For more information about Add Cascading Parameters to a Report, please refer to the following document:
    http://msdn.microsoft.com/en-us/library/dd255197(v=sql.100).aspx
    If you have any more questions, please feel free to ask.
    Thanks,
    Wendy Fu

  • Filtering union report

    Hi,
    I've built a union report with 2 criteria.
    1st Criteria : Contact Relationship Subject Area
    Contact ID | '' | Related Contact Relationship | Related Contact ID
    Filter 1 : Contact ID belonging to user(filtered using a separate report)
    Filter 2 : Related Contact ID belonging to user(filtered using a separate report)
    2nd Criteria : Contact Subject Area
    Contact ID | Contact State | '' | ''
    Joined using Union Set.
    I created a pivot table to get the Contact State for each Contact ID.
    Problem im facing is that for each Contact ID there is a blank row. How do I remove this row?
    Also the results I get show me all the Related Contacts even those not belonging to the user.
    If I filter the 2nd Criteria Column Contact ID to show the records only belonging to the user, then i get results showing all the Related Contact IDs including those not belonging to the user however the rows which do not belong to the user show up as blank.
    How can i remove the blank rows of data?
    Thank you so much for any advice.

    Check this link Re: How to add columns from different table(subject area)
    The discussion in the above thread will help to resolve your issue of removing those blank cells

  • Blocking or Filtering Delivery Reports / Read Receipts

    Using Mail, Is there any way to filter or block my Mac (and iPhone) from sending delivery reports or read receipts to senders that imbed this request into their emails that are sent to me?
    If not available within Mail or OSX , are there 3rd party filters/pgms available to give me this capability?
    Thx!

    I have used my Online Web Access to my work Outlook account to send an e-mail to my Mac to be read by the Mac's Mail program. I've sent an HTML message with a request for a Read Recipt and a Delivery Receipt. Outlook got replies for both. I then sent a plaintext message and requested a Read Receipt and a Delivery Receipt. Outlook again got replies from both.
    This started because a person that had emailed my wife said they receieved a read request. I told her that the Mac Mail program does not respond to those. We decided to test and I was shocked that I received the receipts. I then tested with my own Mac and was again shocked to receive both receipts.
    My test used her work account and her .mac account. I then further tested using my .mac account as the recipient.
    So while I believed as you said that the Mac Mail program does not respond to those, it clearly is.
    Both Macs are running the latest operating system. My mac was just purchased last June.
    Any ideas on how to stop the Mac Mail program from responding to Read Receipts and Delivery Receipts?

  • Filters in Reporting

    Hi Experts,
    Can anyone gve the information regarding Filter in reporting ie., in which senario this will helps and where we r going to use these filter.
    Regards,
    Ramakrishna K

    Hi...
    In addition to the above, I would like to add the following.
    Filters..as the name suggests we are going to filter the data for the query..
    This can be done in two ways..
    1> Give the restriction in the filters by including the character to be filtered under the filter tab and restricing it over there.
    2> Another way is to restrict on rows and columns, this acn be done by right-click and restrict.
    The difference between these two ways of filetering is
    Option 1 will allow the query to fetch the data only for the given restriction
    Option 2 will allow the query to fetch the data irrespective of the restriction, but while displaying it will display according to the restriction.
    By using option we can improve the query performance.. as it reduce the time to fetch the data..
    Hope it helps..
    To say more we can filter with a fixed value or with a variable..
    Variable might be
    SAP exit
    Customer Exit
    user entry variable..

  • URL filtering and report

    I was filter outgoing traffic by url and can view the report of outgoing drop packets.
    The problem is want to view report of incoming packets (Response) of outgoing urls. OR Take a report of bandwidth by extension.
    Attach1 is some part of "sho run" .
    Attach2 is output of "show policy-map interface gigabitEthernet 0/1.115".
    Filtering deploy on Router 3845.

    Hi Bro
    What websites are slow when your LAN users are accessing them? It’s common knowledge that some websites, such as banks, online shopping sites, or other special purpose servers that require extra backend processing before responding to a client request.
    Not many people know this, bu the CSC SSM has a non-configurable, 90-second timeout between the client request and the server response to prevent transactions from tying up resources on the CSC SSM for too long. This means that transactions that take a longer time to process will fail.
    The workaround is to exclude the site from scanning.
    For example, for a site on the outside network with the IP address, 202.188.5.43:
    access-list 101 remark ### exempt http traffic inspection by CSC SSM to 202.188.5.43 ###
    access-list 101 deny tcp any host 202.188.5.43 eq http
    access-list 101 remark ### inspection all other traffic ###
    access-list 101 permit tcp any eq http
    class-map my_csc_class
    match access-list 101
    policy-map my_csc_policy
    class my_csc_class
    csc fail-open
    service-policy my_csc_policy interface inside
    Furthermore, you could also perform packet capture;
    access-list cap_acl permit tcp any host 202.188.5.43
    access-list cap_acl permit tcp host 202.188.5.43 any
    capture cap access-list cap_acl interface inside
    OR
    capture csc_cap interface asa_dataplane OR cplane
    P/S: If you think this comment is useful, please do rate them nicely :-)

  • Filtering interactive report question

    hi all,
    i created an interactive report that uses a query like this..
    SELECT i.issue_id "ID",
      i.title "TITLE",
      i.module "MODULE",
      u1.last_name || ', ' || u1.first_name || ' ' || SUBSTR(u1.middle_name,   1,   1) || '.' "OWNER",
      u2.last_name || ', ' || u2.first_name || ' ' || SUBSTR(u2.middle_name,   1,   1) || '.' "REPORTED BY",
      i.report_date "DATE REPORTED",
      u3.last_name || ', ' || u3.first_name || ' ' || SUBSTR(u3.middle_name,   1,   1) || '.' "SUBMITTER"
    FROM issues i,
      users u1,
      users u2,
      users u3
    WHERE 1 = 1
    AND i.owner = u1.user_id
    AND i.reported_by = u2.user_id
    AND i.submitter = u3.user_idi created an application item called APP_USERID and added a process on the 101 page to select the userid into :APP_USERID from users_table where username = :app_user.
    i want to create a default filter based on the current user's user_id. if i change my query like this
    WHERE 1 = 1
    AND i.owner = u1.user_id
    AND i.reported_by = u2.user_id
    AND i.submitter = u3.user_id
    AND i.owner = :APP_USERIDit works fine but if i wanted to view all records not just owned by the current user, i will have a problem.
    can anyone suggest an approach on how i can solve this.
    thanks.
    regards,
    allen

    Hi Allen,
    I tried some different things in the Interactive reports (make a default with :ITEM or &ITEM.), but they didn't work.
    The only why I can think of now how to get it work is by adding in your query a DECODE or NVL
    WHERE 1 = 1
    AND i.owner = u1.user_id
    AND i.reported_by = u2.user_id
    AND i.submitter = u3.user_id
    AND i.owner = NVL(:APP_USERID,i.owner)
    Basically what it does, if the value of :APP_USERID is set it will use that, if that value is null it will return all records. So you would have a process or computation that sets the item APP_USERID to null when you hit something to get all records.
    Regards,
    Dimitri
    -- http://dgielis.blogspot.com/
    -- http://apex-evangelists.com/
    -- http://apexblogs.info/

  • Filtering Interactive Report which has combo box

    Hi,
    I am a rookie in apex.I have an interactive report in which I have a column which contain's only combo box's. Let me say for example that the display values are Yes and No and the return values are Y and N and the name of the column as "required". When I try to filter the report, I can do so for all the other column's but when I try to do so for this column, I get two combo box's when I click on the expression filter instead of the Yes or No choices. I want the choices to appear in the filter for 'required' column instead of the combo box's. How can I do this? ...I have been searching google in vain...Thanks in advance
    Edited by: user13073434 on May 3, 2010 8:27 PM

    Do I have to recompile this .rdf on the UNIX box again? No.
    How to go about this problem?Have a look at the following notes:
    Note: 337302.1 - Error REP-0756 Unable to find PL/SQL library 'inv.pll' when Opening Report POXPRPOP in Reports Builder
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=337302.1
    Note: 1015074.1 - REP-756,REP-735,REP-736 OPENING REPORT WITH FILESYSTEM ATTACHED LIBRARY
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=1015074.1
    Note: 1016542.6 - Getting REP-0756 : Unable to Find PLsql when Running Standard Reports
    https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=1016542.6

  • Display filters in report BeX Analyzer 3.5 X 7.0

    Hi,
    we used fronted for version 3.5, where after executing query in BEX 3.5 you can see information about filters, which is used in query or which we used in selection screen, in after 1st executing query in  Excel sheet.
    In BEX 7.0 - when we look to button Filter you can see only empty fields after 1st executing query, not filters which we used in selection screen or in definition query, as in BEX 3.5.
    Do you know if is it possible change this feature?
    Thanks
    Petr

    Hi Anita,
    If you open a 3.x query in 7.0 it does NOT change the query technical name.
    But yes if you have opened the query once in 7.0 you cannot open it in 3.x later. If you want to reopen 7.0 BEx queries back in 3.x BEx follow the below steps.
    1) Goto se38.
    2) put program name COMPONENT_RESTORE
    3) Click "Display"
    4) Click "Direct Processing" button from set of buttons available above the program.
    5) It wil ask for "Info Provider" & "Comp. Type"
    6) Put your concerned "Info Provider" and "Comp. Type" is "REP".
    Hope this helps,
    Thanks,
    Mihir

  • Filtering/customizing reports

    Does anyone have experience setting parameters in crystal reports (or through Crystal server) that limits the data a user can see? For example, we have reports that have a parameter set up for our loan officer codes. When I run the report, I can pick the loan officer codes I want and all loans for those loan officers will be displayed. We are using Crystal Server to provide access to the reports to other users. We need to limit the loans a loan officer would see based on his loan officer code. We've been working with SAP support, trying to use the "current user name" or "current user id" feature but can't seem to get it to work in all situations. If we get it to work for the individual loan officers, then when logged into Infoview (through the Crystal Server software) as a user that isn't a loanofficer, no loans appear on the report. Just thought I'd check and see if anyone knew of a simple way to do this.

    Hi Praveen,
    The following link tells you what you need to know; -
    http://technet.microsoft.com/en-us/library/ms166576(v=sql.105).aspx
    I confirm you do not need a third party tool to deploy a cube and empower your users to access this cube.
    So in summary; -
    Within your Analysis Services solution within BIDs; -
    1) Right click your mouse over the Analysis Services database icon, which is immediately below the solution icon.
    2) Select the sub tab "Deployment".
    3) Enter the name of the server you need to deploy to.
    4) Click "OK".
    5) Right click your mouse (again) over the Analysis Services database icon, which is immediately below the solution icon.
    6) Select "Deploy"
    Kieran Patrick Wood http://www.innovativebusinessintelligence.com http://uk.linkedin.com/in/kieranpatrickwood http://kieranwood.wordpress.com/

Maybe you are looking for