Reports based on PL/SQL Procedure/Function

Hi all,
After some serious Google and forum searches, it appears as if this is something that just isn't possible (or easy to do).
I've been charged with creating an APEX application that displays reports. There are a series of Procedures that will be written to return a result set, updated to take into account some filters that a user would provide. The key here is that the report won't be displayed until AFTER a user inputs some filters on a form and hits a Submit button. The project requires this functionality - allowing the report to be displayed and THEN filtered using the APEX IR Control is not desired (not my decision).
There doesn't seem to be an easy way to define a report in this manner. It appears that the query for a report query needs to be known ahead of time.
So, with that setup - is there a way to define an APEX report based on the return result of a PL/SQL function? OR is there a way to define a report using a SQL Query that is built based on user inputs?
Any help would be appreciated.
- Pedro

Hi,
Check if this post help you.
Dynamic html table
And normal reports can be also created from select that function is returning.
http://www.oracle.com/technology/products/database/application_express/howtos/dynamic_report.html
Br, Jari
Edit:
Maybe useful
http://www.apex-blog.com/oracle-apex/dynamic-report-regions-tutorial-32.html
http://www.oracleapplicationexpress.com/2009/02/interactive-report-based-on-plsql.html
Edited by: jarola on Sep 9, 2009 5:14 PM

Similar Messages

  • T-code or SAP Table Sales report based on Document Pricing Procedure

    Hi Experts,
    Please suggest me some SAP Standard T-code or Sales Report based on Document Pricing Procedure and Sales Area.
    Or suggest me SAP Table for the above mentioned combination. Thanks in advance.
    With Best Regards,
    Bharat B

    Hi
    There is no standard t code available. You have to go for Zee using the below tables
    first you need to get the VBAK-KALSM(Pricing procedure)or VBRK-KALSM  next you have to pass the VBAK-KALSM to table T683V-KALSM(field) now you will get all the Document Pricing Procedures (KALVG) assigned to these pricing procedures along with sales area.
    So using these tables you can get the required data.
    regards
    Prashanth
    Edited by: Prashanth@SD on Jan 18, 2011 7:58 AM

  • Module component based on pl/sql procedure....

    Hi everyone,
    could anybody help me with step by step instructions on how to generate module component which is based on PL/SQL procedure and how the procedure must look like.
    Well, I make it in Forms Builder but I want to build it in oracle designer too, just to have consistent state of all forms in designer.
    Well, what to say at the end... thanks a lot for help,
    Zlatko

    I'm a user of the Web PL/SQL generator, not the Forms generator, so I was hoping that someone else would step in with some help for you. Seeing as no-one else gave this a try, here is my two cents worth:
    As far as I know, the module components based on a procedure expect to use the Table API (TAPI) packages, and I think they can optionally use the Module API (MAPI) packages. I think MAPI calls TAPI, so if you use MAPI, you must also generate TAPI. These are generated from the Design Editor, TAPI from the Table Definition. The Web PL/SQL generator REQUIRES the TAPI, so I'm very familiar with them. The on-line help has some good descriptions of TAPI.
    The advantage of using TAPI/MAPI instead of direct table updates from your Form is that TAPIs can enforce business rules at the database level, no matter how your table is updated, whether with Forms, Web PL/SQL or even SQL*Plus. They can also do trigger-like actions that would not be possible with actual database triggers (can you say, mutating table?) You might also want to use TAPI if you have both Forms modules and Web PL/SQL modules against the same table.
    Now - if someone with more Forms generator experience than I wants to chime in with a better answer, please do, especially if anything I said is wrong.

  • Oracle PL/SQL procedure/function to post message into weblogic jms queue

    Hi All,
    Is it possible to post messages to weblogic JMS queue from pl/sql procedure/function?
    From this Queue, message will be read by OSB interface.
    Any help will be highly appreciated.
    Regards,
    Steve

    904640 wrote:
    Hi All,
    Is it possible to post messages to weblogic JMS queue from pl/sql procedure/function?
    From this Queue, message will be read by OSB interface.
    Any help will be highly appreciated.
    http://www.lmgtfy.com/?q=oracle+pl/sql+weblogic+jms+queue

  • Function Activity based on PL/SQL procedure

    Hi All
    I have a function activity in a workflow, which is based on a PL/SQL procedure. When I make any changes to the package or the stored procedure, workflow gives "Could not find package or program unit" error, even though the status of the package is valid in database.
    Essentially everytime I re-apply the package, I get this error. I then drop the package and then recreate it. Even then the error is not resolved immediately. Does this requires Apache bounce? Is there any other step that I am missing when we make changes to database packages that are based on workflow activities?
    It would be of great help if someone can throw light on the above.
    Many thanks in advance
    cheers
    Murari

    Hi,
    Have you tried searching this forum for the error message? There are plenty of posts about it here, on the WorkflowFAQ forum, and also in my blog about the issue, why it happens, and how you can avoid it.
    HTH,
    Matt
    WorkflowFAQ.com - the ONLY independent resource for Oracle Workflow development
    Alpha review chapters from my book "Developing With Oracle Workflow" are available via my website http://www.workflowfaq.com
    Have you read the blog at http://thoughts.workflowfaq.com ?
    WorkflowFAQ support forum: http://forum.workflowfaq.com

  • Interactive Report based on pl/sql function body

    Can an interactive report be based on a pl/sql function body returning the query sql? Or does it have to be based directly on the SQL?
    Thanks

    Hello "unknown user",
    As far is I know an Interactive Report can only be based on 'regular' SQL. If you have a Report based on a 'PL/SQL function body returning SQL' the option to migrate the report to an interactive report is not there.
    Regards,
    Roel
    http://roelhartman.blogspot.com/
    http://www.bloggingaboutoracle.org/
    http://www.logica.com/

  • Block based on PL/SQL Procedure

    Hello,
    I have been thinking about building an architecture with
    database views to support block querying and stored procedures
    for DML. By doing this I keep the forms entirely seperated from
    the table model, which is good maintenance. Changes to the data
    model will affect the views and the stored procedures, not so
    much the forms. Another advantage is that block-fields that come
    from lookup-tables will be queryable and updateable without too
    much programming. And of course perfomance is good since all SQL
    is server-processed.
    Does anyone know where to look for documenation on basing a
    block on stored procedures ? The online help does not contain
    too much on this.
    Has anyone used this technique successfully and can tell me
    about a few advantages of it ? Disadvantages ?
    Regards
    /Stefan Nilsson, Sigma
    null

    Yes, I've tried that since Forms 5.0. I remember 3 possible
    sources for the block, FROM CLAUSE SUBQUERY, TRANSACTIONAL
    TRIGGERS , and PROCEDURES.
    Advantages,
    It is now easier to design screen with any functionality, like
    blocks where you are going to manipulate columns from different
    tables. Exactly what you have in mind when you mentioned about
    views.
    It also supports sources other than relational tables .like
    the object tables or even non-Oracle data sources.
    All you have to code are procedures to support the SELECT,
    LOCK, INSERT, DELETE, and UPDATE functions.
    Disadvantages,
    You have to code advanced PL/SQL procedures. Price to pay for
    excellent functionality.
    I can't exactly remember the documentation, but there is a
    book titlted Advanced Developers or domething...
    Stefan Nilsson (guest) wrote:
    : Hello,
    : I have been thinking about building an architecture with
    : database views to support block querying and stored procedures
    : for DML. By doing this I keep the forms entirely seperated from
    : the table model, which is good maintenance. Changes to the data
    : model will affect the views and the stored procedures, not so
    : much the forms. Another advantage is that block-fields that
    come
    : from lookup-tables will be queryable and updateable without too
    : much programming. And of course perfomance is good since all
    SQL
    : is server-processed.
    : Does anyone know where to look for documenation on basing a
    : block on stored procedures ? The online help does not contain
    : too much on this.
    : Has anyone used this technique successfully and can tell me
    : about a few advantages of it ? Disadvantages ?
    : Regards
    : /Stefan Nilsson, Sigma
    null

  • What is this message in report based on "return SQL"

    After changing some parameter value in one report based on "function return SQL body"", we get:
    Invalid set of rows requested, the source data of the report has been modified.
    reset pagination
    We get this notice without error....just link "reset pagination" (*http://server:port/pls/htmldb/f?p=100:203:2666560392386347:NO::RP) which leads to error:
    Error      No checksum was provided to show processing for a page that requires a checksum when one or more request, clear cache, or argument values are passed as parameters.
    Any help ?
    THX!
    Message was edited by:
    Funky

    Found out...
    Originaly one search field was POPUP LOV type. Later we change them to "Text Field", bud LOV definition remains ...regardles it points to LOV which was not in use now.
    When remove LOV reference and delete the definition ...all works like a charm...

  • Conditional Display of Interactive Report Based On Different SQL Query

    Hello,
    I have two drop down list on top of my page and below that I have a interactive report.
    Based on user selection of values from drop down, interactive report should change based on different SQL queries.
    Is it possible to have different SQL queries based on values from drop down and generate interactive report based on that?
    Thanks

    I am passing my drop down value to apex_collection like the following:
    APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY( p_collection_name => 'IR_LIST',
    p_query => REQUEST_VIEW(:P12_VIEW));However when I change the values from the drop down, :P12_VIEW is not getting the value from drop down even though I could see value being changed in URL. I have created page process for apex_collection
    Process Point - OnLoad - Before Header
    Run Process - Once Per Session or When ResetCould someone suggest as why I cannot get the values in function when drop down is changed?
    Regards

  • How to call pl/sql procedure/function from XML

    Hi,
    I have a requirement to call pl/sql function/procedure from the RTF template. How can I do this?

    Hi,
    I have got the same requirement. We need to call the store PL/SQL procedure from the XML template to generate the fixedwidth files. Could you tell me if you are able to call PL/SQL procedure from XML template?
    Thanks,
    Ram

  • Need a Little Help embedding a Hyper Link in Report  based on Dynamic SQL

    I am trying to have a column in my report link to a document on my network when the column in the report is clicked. I have a table that contains a row for each document I want to link to. The URL to the document is stored in a column named NDDL.DOC_LINK. I would like the text "Linked" to appear as the value in the report column and to be a hyper link to the document.
    The report is a "Classic Report" based on PLSQL retuning a SQL stament. I am on Apex version 4.2.1.00.08
    I have been fighting with the '''''' stuff and can not get it worked out. have pasted the line in question but I can not get it to display correctly so I am hoping someone can help out.
      q := q || '  NDDL.DOC_TITLE as FILE_NAME, ';
      q := q || '  NDDL.DOC_DESC, ';
      q := q || '  ''<a href="http:'' || NDDL.DOC_LINK || ''target="_blank"> </a>'' as LINKED , ';
      q := q || '  NDDL.MOD_DATE, '; 
    ...The # in the line above should be:
    {code}
    http:'' || NDDL.DOC_LINK || ''target="
    Thanks!
    Edited by: Sky13 on Mar 7, 2013 12:45 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    I anwered your email. The PL/SQL block is like this:
    /* Formatted on 2013/03/07 23:05 (Formatter Plus v4.8.8) */
    DECLARE
       q   VARCHAR2 (4000);
    BEGIN
       q := 'select * from ( ';
       q := q || 'select ';
       q := q || '  NDDC.NDDC_UID, ';
       q := q || '  NDDC.NDND_UID, ';
       q := q || '  NDDC.LSVL_DOC_CAT_UID, ';
       q := q || '  NDDC.DATE_POSTED, ';
       q := q || '  NDDC.CREATE_DATE, ';
       q := q || '  NDDC.CREATE_BY, ';
       q := q || '  NDDC.MOD_DATE, ';
       q := q || '  NDDC.MOD_BY, ';
       q := q || '  NDDC.MIME_TYPE, ';
       q := q || '  NDDC.FILE_NAME, ';
       q := q || '  NDDC.CHARACTER_SET, ';
       q := q || '  NDDC.BLOB_MOD_DATE, ';
       q := q || '  NULL as DOC_DESC, ';
       q := q || '  NULL as DOC_LINK, ';
       IF :p24_doc_contains IS NOT NULL
       THEN
          q := q || '  score(1) as SCORE ';
       ELSE
          q := q || ' NULL as SCORE ';
       END IF;
       q := q || 'from ';
       q := q || '  NDDC_NODE_DOC NDDC ';
       q := q || 'where ( ';
       q :=
             q
          || ' INSTR(UPPER(CREATE_BY),UPPER(NVL(:P24_SEARCH,CREATE_BY))) > 0  or ';
       q := q || ' INSTR(UPPER(MOD_BY),UPPER(NVL(:P24_SEARCH,MOD_BY))) > 0  or ';
       q :=
             q
          || ' INSTR(UPPER(MIME_TYPE),UPPER(NVL(:P24_SEARCH,MIME_TYPE))) > 0  or ';
       q := q || ' INSTR(UPPER(FILE_NAME),UPPER(NVL(:P24_SEARCH,FILE_NAME))) > 0 ';
       q := q || ') ';
       IF :p24_doc_contains IS NOT NULL
       THEN
          q := q || '  and CONTAINS(document, :P24_DOC_CONTAINS,1) > 0 ';
       END IF;
       q := q || 'union all ';
       q := q || 'select ';
       q := q || '  NULL as NDDC_UID, ';
       q := q || '  NDDL.NDND_UID, ';
       q := q || '  NDDL.LSVL_DOC_CAT_UID, ';
       q := q || '  NDDL.DATE_POSTED, ';
       q := q || '  NDDL.CREATE_DATE, ';
       q := q || '  NDDL.CREATE_BY, ';
       q := q || '  NDDL.MOD_DATE, ';
       q := q || '  NDDL.MOD_BY, ';
       q := q || '  NULL as MIME_TYPE, ';
       q := q || '  NDDL.DOC_TITLE as FILE_NAME, ';
       q := q || '  NULL as CHARACTER_SET, ';
       q := q || '  NDDL.MOD_DATE as BLOB_MD_DATE, ';
       q := q || '  NDDL.DOC_DESC, ';
       q :=
             q
          || '  ''<a href="http:'''
          || '||nddl.doc_link||'''
          || '-.htm" target="_blank"> </a>'' as DOC_LINK , ';
       q := q || '  NULL as SCORE ';
       q := q || 'from ';
       q := q || '  NDDL_NODE_DOC_LINK NDDL ';
       q := q || 'where ';
       q :=
          q
          || '  ( INSTR(UPPER(CREATE_BY),UPPER(NVL(:P24_SEARCH,CREATE_BY))) > 0 ';
       q := q || '  or INSTR(UPPER(MOD_BY),UPPER(NVL(:P24_SEARCH,MOD_BY))) > 0 ';
       q :=
             q
          || '  or INSTR(UPPER(DOC_TITLE),UPPER(NVL(:P24_SEARCH,DOC_TITLE))) > 0 ';
       q :=
             q
          || '  or INSTR(UPPER(DOC_DESC),UPPER(NVL(:P24_SEARCH,DOC_DESC))) > 0 ) ';
       q := q || '  ) ';
       --htp.p(q);
       DBMS_OUTPUT.put_line (q);
    END;Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.apress.com/9781430235125
    http://apex.oracle.com/pls/apex/f?p=31517:1
    http://www.amazon.de/Oracle-APEX-XE-Praxis/dp/3826655494
    -------------------------------------------------------------------

  • ViewObject based on PL/SQL procedure

    Hi there,
    I'm using JDeveloper 11.1.1.6.0.
    I'm wondering if i can base my ViewObject on a PL/SQL procedures out parameter instead of a SQL query?
    It is also ok when the view object is not updateable.
    Is there a way to achieve this? perhaps directly over the ViewObject, or otherwise over an EntityObject?
    Thanks in advance.

    Hi,
    its quite a time ago but there are some information from Avrom
    http://www.avromroyfaderman.com/framework-for-database-api-based-adf-bc/
    The sourcecode was hosted on samplecode.oracle.com which seems not to be available....
    Nevertheless you might find some usefull information on an older version
    http://www.avromroyfaderman.com/framework-for-database-api-based-adf-bc/framework-for-package-api-based-adf-business-components/
    Andreas.

  • N level tree based on PL/SQL procedure

    Hi everyone,
    I want to display a tree of n levels of employees (n is not known in advance) :
    Root(Boss)
    | Employee1
    | Employee11
    ......... | Employee1NN...
    | Employee12
    | EmployeeN
    .....| EmployeeNN..
    The problem is that I don't have access to tables containing the employees. For each employee I get the "sub-employees" list by calling a PL/SQL stored procedure getEmployees(masterEmployeeName).
    So is there a way in ApEx to create a n level and sublevel tree, each level corresponding to a PL/SQL procedure ?
    Best regards,
    Othman.

    Hi Othman,
    I haven't tried this for a while, the last time I had to do anything like this was to construct a folder structure starting from a root folder.
    Assuming that you can retrieve ID's and employee names in your function, the principle would be something like:
    1 - Create two collections - one for the Tree (to hold ID, Name and Parent ID) and one to hold a list of Employee IDs
    2 - Into the Tree collection, create a new member and insert 0, Root, null (Where 0 is the ID for the top boss and Root is whatever name you need to give this), into c001, c002 and c003
    3 - Into the Employee collection, create a new member and insert 0 into column c001
    4 - Now create a loop to run while the Employee collection contains at least one member
    5 - In the loop:
    5 A) Get the value from c001 in the first member in the collection (this will be the "Parent ID")
    5 B) run your function to retrieve a list of employees relating to that Parent ID, if any
    5 C) Loop through the list and insert a member into the Tree collection: ID, Name, Parent ID and insert the employee's ID into the Employee collection
    5 D) Delete the first member from the Employee collection and resequence the collection (to give you a new member number 1)
    6 - Eventually, you will have no members left in the Employee Collection - your loop should terminate
    7 - You should now have a complete structure in the Tree collection which can be used on the page
    Regards
    Andy

  • Generating webform based on pl/sql procedures

    Who can tell me to solve the following problem with trigger-event 'QUERY_PROCEDURE':
    I want te generate een webform base on pl/sql-procedures in stead of tables or views. In my module only query is allowed.
    In order to implement the module I created a MAPI and a TAPI.
    When i run the form i notice that my enter-query argument doesn't has any effect. All the records are shown instead of one. The fill of the 'default_where' clause has has no effect.
    In formsbuilder i notice that only parameter 'bk_data' is given. The where_clause has been erased.
    How can i run the MAPI-procedure 'qry' including a 'where_clause' on runtime?

    Dear All,
    This thread helped me a lot since I was facing the same problem and had a doubt that QBE is not supported by stored procedures (MAPI) and this thread confirms it.
    BUT what about module components based on Queries (i.e. FROM clause) ?
    It says in the Designer Forms Generation training material that is also does not support QBE, BUT forms supports QBE for blocks based on Queries is support in the Forms Developer.
    When I added a WHERE restriction the designer generates this inside the FROM Clause property of the block rather than in the WHERE Clause property of the block, and so i receiver an error ORA-01008 not all variables bound.
    Can anybody tell me how can i force designer to generate the WHERE restriction in the WHERE Clause property of the block rather than the FROM Clause property of the block?

  • Send a report to report server from PL/SQL Procedure

    Hi Report Gurus,
    Please can I know how to run a report from pl/sql stored procedure. Is there any way to execute URL from PL/SQL?
    Thanks,
    Simi.

    Why, yes there is!
    If you're talking about PL/SQL stored in the database, check the function UTL_HTTP.REQUEST. A "describe utl_http" in SQL*Plus will do the trick.
    But if you're talking about PL/SQL inside Forms, you can use WEB.SHOW_DOCUMENT instead.
    Hope this helps,
    Pedro das Neves
    ([email protected])

Maybe you are looking for