MEETUP ONLINE Oracle APEX...

13
MEETUP ONLINE Oracle APEX Latinoamérica Paquete PL-jrxml2pdf para imprimir PDF en Oracle APEX 5.0 16 de Marzo del 2016 Ing. Clarisa Maman Orfali Oracle ACE

Transcript of MEETUP ONLINE Oracle APEX...

MEETUP ONLINE Oracle APEX Latinoamérica

Paquete PL-jrxml2pdf para imprimir PDF en Oracle APEX 5.0

16 de Marzo del 2016

Ing. Clarisa Maman Orfali

Oracle ACE

AGENDA

• Introducción

• Presentar el paquete jrxml2pdf desarrollado por Andreas Weiden basándose en el paquete AS_PDF3 desarrollado por Anton Scheffer

• Crear Listado de la Tabla Empleados en iReport Designer con y sin parámetros

• Desplegar el Listado PDF desde una Aplicación en APEX 5.0

• Cierre

Presentadora

• Fundadora y Directora de ClarTech Solutions, Inc.

• Oracle ACE desde el año 2014

• Co-Fundadora del Grupo de Usuarios Oracle de Argentina

• Fundadora del Grupo Meetup Oracle APEX Latinoamérica

• Autora del primer libro en español de Oracle APEX “Introducción a Oracle APEX 5.0”

• Autora del libro “Integración sin Costo de JasperReports en Oracle APEX 5.0”

• Autora e Instructora de Cursos Online

• Co-organizadora del Oracle APEX Tour Latinomérica desde el 2012 al presente.

• Co-Conductora y Realizadora del Podcast “El Show de la Comunidad Oracle Hispana”

Ing. Clarisa Maman Orfali

Objetivo de la Presentación

Diseñar un reporte básico con y sin parámetro en iReport Designer y desplegarlo en una aplicación en Oracle APEX 5.0 usando el paquete PL/SQL PL-jrxml2pdf.

Paquete PL-jrxml2pdf

El paquete PL/SQL jrxml2pdf es una solución escrita en código PL/SQL puro y que genera archivos PDF tomando la información desde la tabla jrxml-report-definition el cual nos permite ingresar el código XML del reporte creado y lo mejor de todo es que no se necesita ningún middleware.

Sitio Web: https://sourceforge.net/projects/pljrxml2pdf/Files: https://sourceforge.net/projects/pljrxml2pdf/files/?source=navbarAutor: https://sourceforge.net/u/aweiden/profile/

Licencias: el software actualmente cuenta con las licencias MIT y LGPL descriptas en el paquete y podemos elegir la que se ajusta a lo que nosotros necesitamos.

Instalar y usar el paquete PL-jrxml2pdf

Pasos:

• Enlace de Descarga: https://sourceforge.net/projects/pljrxml2pdf/

• Grant a UTL_FILE: Conceder permisos a UTL_FILE al usuario donde se instalará el paquete:

• GRANT EXECUTE ON UTL_FILE TO <esquema donde vamos a instalar el paquete jrxml2pdf>

• Instalar Objetos:

• A) Ejecutar Script de Instalación: desde un CMD nos ubicamos en el directorio de instalación del paquete, abrimos el SQLPlus y ejecutamos el script: @install.sql

• B) Instalar Aplicación Demo en APEX el cual instalará los objetos de la base de datos

• Crear Classpath: Ingresar el archivo jrxml2pdf.jar en iReport-classpath (tener instalado el driver del ODBC de Oracle)

• Crear Conexión: Crear la conexión a la base de datos desde iReport

• Crear Reporte: Crear el Listado de Empleados en iReport

• Importar Imágenes: en la tabla JRXML_REPORTS_IMAGES de nuestro esquema

• Importar Reporte: en la tabla JRXML_REPORT_DEFINITIONS de nuestro esquema

• Mostrar Reporte PDF: Desplegar el Reporte PDF desde una aplicación en APEX

Después de instalar el paquete podemos ver los objetos instalados desde el Explorador de Objetos del Taller de SQL de APEX o desde el SQL Developer si usamos esta herramienta para trabajar con los objetos de la base de datos, si expandimos los Paquetes, vemos que se agregaron los que corresponden al paquete PL-jrxml2pdf:

Objetos del paquete PL-jrxml2pdf

iReport Designer

iReport es una poderosa herramienta de diseño visual para JasperReports y con ella podemos crear informes personalizados para satisfacer los más complejos requerimientos de información, además que es intuitivo, poderoso y muy fácil de usar.

Según la documentación el paquete esta probado usando la versión 4.7.0 de iReport Designer. Para usar versiones superiores de iReport es necesario verificar los términos de la licencia.

Aplicación Demo en APEX del paquete

Procedimiento PL/SQL sin parámetros

PROCEDIMIENTO PARA LLAMAR AL REPORTE PDF SIN PASAR NINGUN PARAMETRO

DECLARE

vcName VARCHAR2(200);

lParams PK_JRXML2PDF_REPGEN.TPARAMLIST;

bl BLOB;

BEGIN

vcName:=‘NOMBRE_DEL_REPORTE_EN_JRXML_REPORT_DEFINITIONS';

bl :=PK_JRXML2PDF_REPGEN.FK_RUN(i_vcName=>vcName);

PK_JRXML2PDF_REPGEN.PR_SHOW_REPORT(bl);

APEX_APPLICATION.STOP_APEX_ENGINE;

END;

Procedimiento PL/SQL usando parámetroPROCEDIMIENTO PARA LLAMAR AL REPORTE PDF USANDO PARAMETROS

DECLARE

vcName VARCHAR2(200);

lParams PK_JRXML2PDF_REPGEN.TPARAMLIST;

bl BLOB;

BEGIN

vcName:='NOMBRE_DEL_REPORTE_EN_JRXML_REPORT_DEFINITIONS';

lParams(1).vcName:='EMPNO';

lParams(1).vcValue:=:P1_EMPNO;

bl :=PK_JRXML2PDF_REPGEN.FK_RUN(i_vcName=>vcName,

i_lParams=>lParams);

PK_JRXML2PDF_REPGEN.PR_SHOW_REPORT(bl);

APEX_APPLICATION.STOP_APEX_ENGINE;

END;

DEMOSTRACIÓN

MUCHAS GRACIAS!

Oracle APEX Latinoamérica

Ing. Clarisa Maman Orfali

Libros: http://www.introduccionaoracleapex5.com

Blog: http://descubriendooracle.blogspot.com

Sitio Web: http://www.clartechsolutions.com

Academia Online:http://www.clartechacademy.com

Grupo Meetup