BI Publisher Integration with Oracle Apex

In modern business applications, generating professional reports such as invoices, salary sheets, sales reports, purchase orders, and management reports is an essential requirement.

Oracle APEX provides powerful capabilities for building web applications, while BI Publisher-style report templates allow developers to create professionally formatted reports using familiar tools such as Microsoft Word and RTF templates.

In this tutorial, you will learn how to integrate report printing with Oracle APEX step by step. We will create a report query, generate XML data, design a professional report layout using Microsoft Word, save the template in RTF format, upload it to Oracle APEX, and finally generate the report directly from an APEX application.

What You Will Learn

By the end of this tutorial, you will understand how to:

  • Create a Report Query in Oracle APEX

  • Generate and download XML data from an APEX report query

  • Use XML data to design a report template in Microsoft Word

  • Create and save an RTF report template

  • Upload and associate the RTF layout with Oracle APEX

  • Configure report printing settings

  • Generate reports using the PRINT_REPORT request

  • Add an APEX button to generate and open the report

How the Reporting Process Works

The overall reporting flow will be:

Oracle Database → SQL Query → Oracle APEX Report Query → XML Data → Microsoft Word RTF Template → Report Generation → Final Output

This approach separates the data from the report design:

  • XML provides the report data.

  • RTF Template controls the report layout and presentation.

  • Oracle APEX connects the data and template to generate the final report.

Let's get started and build a complete report printing solution step by step.


Download the following Sequentially.


MS Word Version is : 



From -  https://drive.google.com/drive/folders/1JtrSvokMpJoGpuua5c09s8-L2VO6dXSO


Oracle Apex Instance Settings : Internal Admin

Email :



Report Printing :


In Oracle Apex , Normal Workspace :


Shared Components :






select * from emp




Press Download and download Query1.xml file.

Now go to MS word.




Import the Query1.xml file that was downloaded.

Data loaded successfully.



Next > Next > Finish.


Save As the doc file as template.rtf (Rich Text Format).


Now, Go to Oracle Apex .....



Press Next Button....



Upload the report layout file. Which was saved as template.rtf



Copy the URL:  f?p=&APP_ID.:0:&SESSION.:PRINT_REPORT=Query1

My Oracle Apex URL was :

http://localhost:9091/ords/

Re-create the report URL:

http://localhost:9091/ords/f?p=&APP_ID.:0:&SESSION.:PRINT_REPORT=Query1


Now go to the Oracle Apex page to run the report.
Add a Button. 
Action > Redirect to URL:


Report output on button press.



Enjoy!


Muhammad Abdullah Al Noor

Muhammad Abdullah Al Noor, An Oracle Apex Consultants and founder of Noors Technology (www.noorstech.com). Core Expertise : Database Administration, Oracle Forms and Reports Development, Oracle Apex Application Designer and Development, Linux Professional etc. Also the owner of TrainerBD Training and OraDemy E-Learning. WhatsApp +8801790721177

Post a Comment

Previous Post Next Post