Monday, February 23, 2015

APEX IR XLSX Downloader V1.3.0

After a long time I have finally published Release 1.3 of my APEX IR XLSX Downloader.
And because I kept you waiting so long there's one goody included.

Added Features

  • The Interactive Report region ID is now automatically derived if not specified or set NULL.
  • Function get_version which emits the package release you are running.

Bugs Fixed

  • Column header wasn't filled if user didn't give a custom name for a function column in "Group By" view.
    Now the package puts similar names to what the APEX engine generates.

New Demo Application

There is also a new demo application available for download.
You can download it here and install into your own APEX workspace.

As always the source code can be found in the GitHub Repository.
ZIP files for all my GitHub projects can now be found on my GitHub Page.

Enjoy ;-)

4 comments:

  1. Thanks for sharing.
    This package has been very helpful to me.

    ReplyDelete
  2. Love it, easy to use, much faster than another Excel download solution I tried.

    ReplyDelete
  3. The demo application does just what one hopes for! When I get this to work in our application, it will be well received by my users. I have tried two other solutions that were too inconsistent to use.

    ReplyDelete
  4. Hi Moritz Klein,

    I use variables into IR report name &P_XX.

    Here is my contribution:

    APEXIR_XLSX_PKG include function APEXIR_XLSX_REPORT_NAME

    ...
    END transform_rpt_cols;
    BEGIN
    /* Could raise no data found. Check out why... */
    SELECT
    v('APEXIR_COMPANY_TITLE')|| ' ' ||
    CASE
    WHEN rpt.report_name IS NOT NULL THEN
    APEXIR_XLSX_REPORT_NAME(ir.application_id,ir.page_id,ir.region_name) ||
    ' - ' || rpt.report_name
    ELSE
    ir.region_name
    END report_title
    ...

    /**
    * Convert variables in Report Name.
    */
    FUNCTION APEXIR_XLSX_REPORT_NAME (ir_application_id in NUMBER,ir_page_id in NUMBER,ir_region_name in VARCHAR2)
    RETURN VARCHAR2
    AS
    vREPORT_NAME VARCHAR2(32767);
    BEGIN
    vREPORT_NAME := ir_region_name;
    FOR APITS IN (select * from
    APEX_APPLICATION_PAGE_ITEMS
    where
    APPLICATION_ID = ir_application_id and
    PAGE_ID = ir_page_id and
    instr(ir_region_name,ITEM_NAME) > 0)
    LOOP
    vREPORT_NAME := REPLACE (vREPORT_NAME, '&'||APITS.ITEM_NAME||'.', V(''||APITS.ITEM_NAME||'') );
    END LOOP;
    RETURN vREPORT_NAME;
    END APEXIR_XLSX_REPORT_NAME;

    ReplyDelete