reportes jdeveloper 11g ii
TRANSCRIPT
![Page 1: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/1.jpg)
Reportes JDeveloper 11g II
Hola, bueno retomando el tema de los reportes en JDeveloper 11g.
En este caso se tiene una pagina que muestra datos de la base de datos HR.
![Page 2: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/2.jpg)
En el boton reportes PDF se tiene la siguiente programacion :
En el backing bean "general" en estado sesion ,se tiene este procedimiento , para mi caso he generado un jar especial que se
encarga de hacer el reporte y descargarlo en el navegador.
Finalmente se descarga el archivo reporte en pdf generado desde un jasper.
![Page 3: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/3.jpg)
Publicado por Javix en 14:46 1 comentarios
domingo 24 de enero de 2010
Drag and Drop en JDeveloper 11G
Esta demo nos permite visualizar una lista de productos y un carrito de compras,la forma en que se añaden productos al carrito es
arrastrandolos (drag and drop), una funcionalidad muy vistosa.
![Page 4: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/4.jpg)
Para descargar la aplicación da clic al siguiente link:
http://uploading.com/files/917781mc/FusionAplicaDrog.zip/Publicado por Javix en 19:59 0 comentarios
Etiquetas: carrito compras, drag, Drag and Drop, Drag and Drop en JDeveloper 11g, drop, jdeveloper, JDeveloper 11g español, RichFaces
domingo 3 de enero de 2010
Reportes en JDeveloper 11G
En el caso de los reportes en la version JDeveloper 11G, modificar el procedimiento para que se invoque desde el backing bean, ya no utilizar
una pagina jsp. Publicado por Javix en 20:46 5 comentarios
Etiquetas: IReport, jasper, jdeveloper, JDeveloper 11G, manual en español, reporte, tutorial ADF JSF
sábado 9 de mayo de 2009
Reportes en JDeveloper - Parte 2
Hola amigos, en esta segunda parte veremos como gestionar los archivos jasper desde JDeveloper y como pasar los parametros que
necesita el reporte.Debemos copiar desde la carpeta lib de nuestro IReport, los siguientes
jar :
itext-1.3.1.jarjasperreports-2.0.4.jar
jasperreports-extensions-1.3.1.jarpoi-2.5.1-final-20040804
Luego pegarlos en la carpeta WEB-INF/lib de nuestro proyecto web.En la lista podemos ver las librerias itext y el poi, estas librerias nos
serviran para los reportes en pdf y excel respectivamente.
![Page 5: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/5.jpg)
Debemos crear una carpeta dentro del WEB-INF, su nombre sera "reports", al interior de este carpeta pegaremos el archivo
mi_reporte_javix.jasper (recuerde que este archivo lo generamos en el anterior articulo), este archivo se encuentra en la carpeta
principal de su IReport.
Vamos al proyecto ViewController darle doble clic y agregaremos las librerias,darle clic al boton add Jar/Directory
Finalmente quedaria de esta manera:
![Page 6: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/6.jpg)
Ahora vamos al faces-config.xml y diseñamos la siguiente navegacion entre paginas:
![Page 7: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/7.jpg)
Tenemos dos paginas , la navegacion tiene el nombre de "dialog:jspreporte".
El diseño de la pagina index.jsp seria el siguiente:
Modifique las siguientes propiedades del boton "Generar Reporte":useWindow="true"
windowHeight="800"windowWidth="600"
Debe capturar el valor del selectonechoice que almacena el area luego cargarlo como variable session a idarea.
![Page 8: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/8.jpg)
Programacion del boton "generar reporte" en el backing:
FacesContext context = javax.faces.context.FacesContext.getCurrentInstance();
HttpSession session = (HttpSession) context.getExternalContext().getSession(false);
session.setAttribute("idarea",idarea);return "dialog:jspreporte";
Para generar el reporte necesita una conexion a una base de datos, en este caso se puede tomar la conexion existente del datasource original, o tambien crear una propia conexion a la base de datos, optaremos por
esta opcion, entonces debera crear una clase "OracleDBConn".
package com.javix.pe.model.db;
import java.sql.Connection;import java.sql.DriverManager;
import javax.naming.InitialContext;import javax.sql.DataSource;public class OracleDBConn {
/***Registramos el driver
*/static {
try {Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (Exception e) {System.out.println("Ocurrió un problema con el driver\n" + e);
}}
/*** Obtiene una conexión a la Base de Datos.
*/public Connection getConexion() {
Connection connection = null;try {
connection = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL","
blog","blog");} catch (Exception e) {
System.out.println("Ocurrió un problema al obtener la conexión\n" + e);}
return connection;
![Page 9: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/9.jpg)
}}
Continuando ya se tiene el archivo reporte, la clase de conexion, ahora falta la pagina que soportara el reporte, para este ejemplo ejecutaremos
un reporte en pdf y al dar clic al boton "generar reporte" automaticamente debera aparecer una ventana emergente mostrando
un pdf con la informacion solicitada.
Para ello debemos programar la pagina reporte.jsp con el siguiente codigo:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http :// www . w3 . org/TR/html4/loose.dtd">
<%@ page import="net.sf.jasperreports.engine.*" %>
<%@ page import="net.sf.jasperreports.engine.design.*" %>
<%@ page import="net.sf.jasperreports.engine.data.*"%>
<%@ page import="net.sf.jasperreports.engine.export.*"%>
<%@ page import="net.sf.jasperreports.engine.util.*"%>
<%@ page import="net.sf.jasperreports.view.*"%>
<%@ page import="net.sf.jasperreports.view.save.*"%>
![Page 10: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/10.jpg)
<%@ page import="java.sql.*"%>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page contentType="text/html;charset=windows-1252"%>
<html>
<head><title>Reporte Javier Calizaya!</title>
<script language="JavaScript">
function regresar(){
history.back();
}
function error(){
alert("Error encontrando procesando el periodo: " + periodo);
history.back();
}
</script>
![Page 11: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/11.jpg)
</head>
<%
try{
com.javix.pe.model.db.OracleDBConn objDBConn =new com.javix.pe.model.db.OracleDBConn() ;
Connection conn = null ;
conn = objDBConn.getConexion();
System.setProperty("jasper.reports.compile.class.path",application.getRealPath("/WEB-INF/lib/jasperreports-2.0.4.jar") +
System.getProperty("path.separator") +
application.getRealPath("/WEB-INF/classes/")
);
System.setProperty(
"jasper.reports.compile.temp",
application.getRealPath("/reports/")
![Page 12: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/12.jpg)
);
File reportFile = new File(application.getRealPath("/reports/mi_reporte_javix.jasper"));
Map parameters = new HashMap();
javax.faces.context.FacesContext context = javax.faces.context.FacesContext.getCurrentInstance();
parameters.put("idlocal",session.getAttribute("idarea").toString());
byte[] bytes =JasperRunManager.runReportToPdf(reportFile.getPath(),parameters,conn);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
}catch (JRException e)
{System.out.println("Error:" +e.getMessage());}
catch (Exception e)
{
e.printStackTrace();
![Page 13: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/13.jpg)
System.out.println("Error2:" +e.getMessage());
}
%>
<body >
</body>
</html>
Ejecutar la pagina index.jsp:
Publicado por Javix en 21:38 3 comentarios
jueves 7 de mayo de 2009
![Page 14: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/14.jpg)
Reportes en JDeveloper - Parte 1
Hola amigos, en esta oportunidad haremos una aplicacion con reportes, claro esta utilizando Jasper and IReport, para ello utilizaremos lo
siguiente:
JDeveloper 10.1.3.4.0
IReport 2.0.4
1. El esquema que utilizare es algo sencillo, a ver:
El codigo sql :
CREATE TABLE TBAREA(
IDAREA NUMBER NOT NULL,DESAREA VARCHAR2(100),
FECHACREACION DATE);
CREATE TABLE TBPERSONAL(
IDPERSONAL NUMBER NOT NULL,PERNOMBRE VARCHAR2(100),
![Page 15: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/15.jpg)
PERPATERNO VARCHAR2(100),PERMATERNO VARCHAR2(100),
DIRECCION VARCHAR2(100),IDAREA NUMBER
);
ALTER TABLE TBAREAADD CONSTRAINT TBAREA_PK PRIMARY KEY
(IDAREA
)ENABLE
;ALTER TABLE TBPERSONAL
ADD CONSTRAINT TBPERSONAL_PK PRIMARY KEY(
IDPERSONAL)
ENABLE;
ALTER TABLE TBPERSONALADD CONSTRAINT TBPERSONAL_TBAREA_FK1 FOREIGN KEY
(IDAREA
)REFERENCES TBAREA
(IDAREA
) ENABLE;
2. Configurar el IReportDebemos tener a la mano el driver de oracle (ojdbc14.jar) y colocarlo en
la carpeta /home/JasperSoft/IReport-2.0.4/lib
Si no lo tienen cerca el driver, pueden buscarlo dentro de las librerias de su JDeveloper.
Ahora abriremos el IReport, y deben darle clic a options/classpathAparecera esta ventana:
![Page 16: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/16.jpg)
Dar clic al boton add Jar, buscar el driver oracle que antes pegamos en la carpeta lib del IReport.
Ahora darle clic al menu Data / Connections - Datasources
Aparecera una ventana , debes darle clic al boton "new".
En la nueva ventana seleccionar "Database JDBC Connection" y darle al next!
La parte final de la configuracion, deberas colocar los parametros de tu conexion, en mi caso es el siguiente:
![Page 17: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/17.jpg)
Eso finaliza nuestra parte de configurar el IReport con nuestro Oracle.
3. Ahora vamos a darle clic al menu File / new DocumentLe damos un nombre y unas caracteristicas adicionales a nuestro
reporte.
![Page 18: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/18.jpg)
Dar clic al menu Data / Report Query , ahora digitaremos un query sencillo:
SELECT A."DESAREA",P."PERNOMBRE",P."PERPATERNO",P."PERMATERNO",
P."DIRECCION",P."IDAREA" AS P_IDAREA,
![Page 19: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/19.jpg)
P."IDPERSONAL" AS P_IDPERSONAL,A."IDAREA" AS A_IDAREA,
A."FECHACREACION" AS A_FECHACREACIONFROM
"TBPERSONAL" P INNER JOIN "TBAREA" A ON P."IDAREA" = A."IDAREA"WHERE
a.idarea= $P{idlocal}
Si nos fijamos el query tiene un parametro, asi que vamos a la parte inferior derecha del IDE, en el panel de "document structure" y le damos
clic derecho parameters/add.
El nombre de nuestro parametro es IDLOCAL y el tipo de dato por defecto sera String.
Hasta este punto asegurese de guardar todos los cambios.
En el "document structure" es factible ver todos los elementos de la plantilla reporte que tenemos.
Dentro del elemento "pageHeader" agregamos un objeto tipo staticText, y le damos de texto "REPORTE DE PERSONAL", para modificar las
fuentes, tamaño del texto, puede ver en la parte derecha el panel de properties.
El diseño del reporte es sencillo, si desea puede agregar una imagen como logo, o tambien un rectangle que haga mas vistoso el titulo, en este caso agregare un rectangle y dentro de el colocare un static text, con el texto "AREA". Al costado de este static text, arrastrare desde el
document structure el FIELD "DESAREA".
En la plantilla tambien del reporte, tambien existe el componente "columHeader", aqui procederemos a colocar static text que
representen titulos de campo de toda informacion que se imprimira.
![Page 20: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/20.jpg)
Finalmente nuestro reporte tendria esta forma:
Como notara los campos "FIELDS" se han colocado en la parte denominada "detail", mientras que los titulos de los campos van en la
parte de "ColumHeader".
Ejecutar : menu build/ execute (with active connection)
(procure que el parametro idlocal tenga activada la opcion "use a promt")
![Page 21: Reportes JDeveloper 11g II](https://reader031.vdocuments.site/reader031/viewer/2022013107/547f9fb4b4af9fb9158b5a91/html5/thumbnails/21.jpg)
En la carpeta principal del IReport, notara que se ha generado el archivo : mi_reporte_javix.jrxml
Este archivo es el que utilizaremos para generar los reportes en pdf o excel desde el JDeveloper