Como Agregar Reportes Hechos En Ireport A Un Proyecto Hecho En Scriptcase
Este pequeño manual nació con la idea de ayudar a los muchos programadores que desean agregar a sus proyectos hechos con Scriptcase, informes o reportes elaborados o diseñados con IReports.
Cuando empecé a hacer mi primer proyecto grande me di cuenta que no había mucha información de cómo relacionar este par deexcelentes herramientas, pero buscando por ahí y por allá decidí unir en un solo manual toda la información que encontré diseminada más mi experiencia en el desarrollo del presente proyecto.
Así que sin más que agregar…. Empecemos.
OBJETIVO.-
Presentar un reporte de productos.
REQUISITOS.-
Base de datos creada en Mysql. (Doy por hecho de que el lector ya tiene instalado un servidor apache,mysql, php y Scriptcase). En mi caso la base se llama “dase” y la tabla “dirpro”.
Este ejemplo se hizo sobre un equipo Windows 7 por tanto el instalador del IReports debe ser para este ambiente. Lo puedes descargar desde la siguiente dirección:
http://jasperforge.org/website/ireportwebsite/IR%20Website/ir_download.html?header=project&target=ireport
Recomiendo que instales el “WindowsiReport-4.5.0-windows-installer.exe” y no el plugin para NetBeans….. al menos a mí me dio ciertos problemas. También voy a dar por hecho que lo pediste instalar sin ningún problema.
Bajar la biblioteca PhpJasperXml desde la siguiente dirección:
http://www.simit.com.my/?q=PHPJasperXML
A menos que modifiquen la página la descarga la encuentras en esta línea:
You can download PHPJasperXML 0.8bhere
Esta librería sólo debemos descomprimirla, dentro de ella hay explicaciones para que puedas correr los ejemplos si lo deseas.
DESARROLLO.-
EN LA LIBRERÍA PHPJASPERXML:
Debes modificar el archivo setting.php que se encuentra en la raíz de la librería con los valores de tu conexión y tu servidor.
Ahora debes modificar en el archivo llamado PHPJasperXML.inc.php ubicado dentrode la carpeta class lo siguiente:
Quita el operador de comentario a la línea:
error_reporting(0);
Aunque no es obligación que lo hagas te recomiendo buscar esta sección y agregarle las líneas sombreadas:
if(!$this->con) {
$this->myconn = @mysql_connect($db_host,$db_user,$db_pass);
if($this->myconn) {
$seldb =@mysql_select_db($db_or_dsn_name,$this->myconn);
if($seldb) {
$this->con = true;
return true;
}
else {
echo "Fallo por conexion a base";
return false;
}
} else {
echo "Fallo por conexion a mysql";
return false;}
Explicación:
Si llegas a tener algún error de configuración o ruta que no te permita conectar a la base datos, con estos mensajes podrás determinar dónde está el error, de lo contrario sólo te saldrá por el navegador un mensaje que te dirá FAIL TO CONNECT TO DATABASE y te complicarás. Vuelvo a recalcar no es obligación que hagas este paso pero gracias a esto pude encontrar un errorque se me presentó en la conexión.
AHORA A MOVER LAS CARPETAS
Copia la carpeta de la librería “phpjasperxml_0.8b” aunque te recomiendo que la renombres, yo hice eso y le cambie por “phpjasper” y pégala dentro de la carpeta app del Scriptcase en mi caso la ruta era la siguiente:
C:\Program Files\NetMake\v5\wwwroot\scriptcase\app
Si te habrás dado cuenta en esta carpeta es dónde se alojanlos proyectos de Scriptcase.
Observación no coloques la carpeta phpjasperxml_0.8b dentro de la carpeta de tu aplicación porque no te funciona por problemas de path (a menos que encuentres como solucionarlo). Debes colocarla donde te estoy indicando. De tal forma que en mi caso quedó la ruta de la siguiente manera:
C:\Program Files\NetMake\v5\wwwroot\scriptcase\app\phpjasper
Ahora...
Regístrate para leer el documento completo.