Reportes en PDF con Codeigniter 2.1.0 , alguna libreria para usar y algun que otro ejemplo??

2,915 views
Skip to first unread message

Oscar Andres Argueyo

unread,
Sep 4, 2012, 11:01:15 PM9/4/12
to codeignit...@googlegroups.com
Hola, que tal?

Hace unos meses que estoy en el grupo, todavia no ayude a nadie pero espero hacerlo pronto cuando me sienta capaz!

Tengo un sistema de control de protesis, usando CI 2.1.0, tengo ya todo el trabajo de la base de datos realizada, pude implementar ajax con jquery muy bien, sin ningun problema!

Ahora llego el turno de hacer reportes.

Yo vengo de trabajar con JAVA , y hacia los reportes con JasperReports. Algo sencilllo, no llegaba a los 10 reportes asi que tengo una idea como se hacen las consultas para los reportes y el  tipico output()

Hay alguna libreria para implementar para poder hacerlos!

Googlee mucho y lo que enconte son todas para versiones anteriores al 2.1.0 de CI ya que usaba la carpeta de plugins que se dejo de usar!

Encontre uno usando R&OS PDF Class (la pagina oficial parece que fue cerrada asique no encontre documentacion)y  algo increible, que no funciona en Chrome un reporte simple pero si en Firefox, asi que no me ayuda mucho!

Seguro alguno paso por el tema de reportes y les agradeceria si me dijeran como incluirla en Codeigniter alguna buena libreria o algun buen ejemplo para tener como punto de partida!


Muchisimas gracias y un calido saludo a la comunidad de CI desde Buenos Aires!!


Oscar






Daniel Carrero

unread,
Sep 4, 2012, 11:08:55 PM9/4/12
to codeignit...@googlegroups.com

Oscar yo estoy desarrollando los reportes con fpdf www.fpdf.org lo que hice fue muy sencillo, mañana temprano te mando el detalle de lo que hice. Pero ya al menos tienes un dato donde comenzar
Saludos

Atte.
Daniel Carrero Canales.
+56974726453

--
 
 

Lautaro Ramos

unread,
Sep 4, 2012, 11:13:38 PM9/4/12
to codeignit...@googlegroups.com
Hola Oscar,

       Yo en el trabajo he usado TCPDF(http://www.tcpdf.org/). A mi me pareció bastante fácil de usar. Además en la pagina hay varios ejemplos con distintos casos y una documentación bastante completa.

Saludos

--
[:Lautaro]

Oscar Andres Argueyo

unread,
Sep 4, 2012, 11:16:04 PM9/4/12
to codeignit...@googlegroups.com
Uy muchisimas gracias, y sobre todo por responder enseguida! Ya me pongo a leer a ver que saco, y te agradeceria mucho ver ese detalle de lo que hiciste!

Gracias, de verdad! cuando lo termine lo publico tambien asi queda para aclarar futuras dudas!

Oscar Andrés Argueyo

unread,
Sep 5, 2012, 12:27:17 AM9/5/12
to codeignit...@googlegroups.com
Gracias  a Daniel por fpdf pude avanzar un poco! Configure la libreria y los fonts! Y pude hacer que apareciera la hoja en blanco en formato pdf! Significa que reconocio la libreria y no hubo errores con el PATH de la carpeta font!

Por lo que lei en la documentacion, fpdf no transforma la vista en formato pdf sino que hay que usar las primitivas (no se bien que seran) de la libreria en si para armar tablas, pies de pagina o encabezados! o para darle estilos

Yo con armar una tabla o una lista con datos ya me alcanza! Tienen idea de como se hacen las consultas (con paso de variables) y transformar los datos a tablas? o algun ejemplo, no entiendo eso de las primitivas de fpdf.


Gracias otra vez por los datos y responder apenas surgio la duda! Eso hace grande a este grupo!

Saludos desde Bs As!


hasta mañana!

Date: Tue, 4 Sep 2012 20:16:04 -0700
From: ozz....@hotmail.com
To: codeignit...@googlegroups.com
Subject: Re: [codeigniter-spanish] Reportes en PDF con Codeigniter 2.1.0 , alguna libreria para usar y algun que otro ejemplo??
--
 
 

Juan Manuel Castro

unread,
Sep 5, 2012, 7:19:20 AM9/5/12
to codeignit...@googlegroups.com
Oscar fijate en este link http://www.fpdf.org/en/script/index.php

Busca
 Write HTML
 Example with MySQL
 MySQL report

son ejemplos genericos de lo que presumo necesitas hacer.-

Saludos.-
--
     Juan Manuel Castro
     Solis 168 - C.P. 2705
     Rojas - Buenos Aires
Tel. 54 - 02474-15-56-4189

Oscar Andrés Argueyo

unread,
Sep 5, 2012, 4:51:09 PM9/5/12
to codeignit...@googlegroups.com

Muchisimas gracias, ya pude hacer un pdf de prueba con datos de mysql y me devolvia los valores sin los espacios, algo asi (Ej: nombre: Roberto Sanchez , me lo dejaba Asi RobertoSanchez) sera cuestion de leer bien la documentacion y armarme de paciencia para hacer los encabezados y los pies de pagina (es todo bien bien a mano con esta libreria) Nada que ver Jasper Reports que tenias para arrastrar y soltar!


Les comentare como me fue y si puedo solucionar el problema de los espacios asi ya queda para futuras dudas en el grupo!

Graciaas!!


Date: Wed, 5 Sep 2012 08:19:20 -0300

Subject: Re: [codeigniter-spanish] Reportes en PDF con Codeigniter 2.1.0 , alguna libreria para usar y algun que otro ejemplo??
--
 
 

Daniel Carrero

unread,
Sep 5, 2012, 4:58:06 PM9/5/12
to codeignit...@googlegroups.com
Para crear un header y un footer tienes que sobreescribir estas funciones en la libreria que creaste, por ejemplo
class Pdf extends FPDF {

public function __construct(){}
public function Header() {}
public function Footer() {}
}

Y todos los reportes tendran el mismo encabezado y pie de pagina

Saludos

--
 
 



--
Daniel Carrero Canales
Analista programador de sistemas
+56974726453
http://kodecl.wordpress.com

Oscar Andrés Argueyo

unread,
Sep 6, 2012, 1:05:28 AM9/6/12
to codeignit...@googlegroups.com

Que tal, despues de un dia probando la libreria, pude lograr tener un pdf completo (hay que leer la documentacion y en los ejemplos trata casi todos los temas)
gracias por la ayuda y por las funciones de Header y footer en la libreria ya hechas te ahorran tiempo!

Voy a dejar la solucion asi si alguien tiene problemas sabe que pasos seguir:
una vez bajada la libreia fpdf.php guardarla en System/libraries y tambien el directorio de Fonts ya que si no surgira un error

Una vez en el controlador de pruebas hice esto: //saque todo el relleno de mi controlador asi se entiende mas:

class Reportes extends CI_Controller {

 function __construct()
 {
   parent::__construct();
   $this->load->model( 'model_pacientes' ); //mi modelo

   
     $this->load->library('fpdf');//llamo a la libreria en el constructor
    
   define('FPDF_FONTPATH',BASEPATH.'/libraries/font/');//es importante declarar en donde esta la carpeta font! sino sale el error que no encuentra el archivo!

 }

 function index()
 {

 
 $datos_pacientes = $this->model_pacientes->lister($page);
 
 
 
 
ob_clean(); //esta funcion limpia el buffer si se usa "ob_end_clean" el pdf sale sin ningun espacio en blanco y todo apilado, es raro pero asi salio bien!
//inicializa pagina pdf
$this->fpdf->Open();
$this->fpdf->AddPage('L' , 'A3'); //mi formato de pagina
 $this->fpdf->SetFont('Arial','',12); //mi fuente
foreach ($datos_pacientes as $resultado){ //usando los datos de mysql

$this->fpdf->Cell(40,5,$resultado['pac_dni'],1,0,'C');
$this->fpdf->Cell(60,5,$resultado['pac_nom'],1,0,'C');
$this->fpdf->Cell(40,5,$resultado['pac_dir'],1,0,'C');
$this->fpdf->Cell(40,5,$resultado['pac_grado'],1,0,'C');
$this->fpdf->Cell(40,5,$resultado['pac_destino'],1,0,'C');

$this->fpdf->Cell(40,5,$resultado['pac_tipo'],1,0,'C');

$this->fpdf->Cell(40,5,$resultado['pac_tel'],1,0,'C');

$this->fpdf->Cell(40,5,$resultado['pac_prov'],1,0,'C');
$this->fpdf->Cell(60,5,$resultado['pac_mail'],1,0,'C');

$this->fpdf->Cell(40,5,$resultado['pac_destino'],1,0,'C');
$this->fpdf->Ln(); // salto de linea

}


//finaliza y muestra en pantalla pdf
$this->fpdf->Output('pacientes' , 'D'); // si se deja Output() asi "solo" el archivo al guardarlo tiene el nombre doc.pdf y el parametro 'D' obliga a guardarlo , que era lo que yo necesitaba!!



   }




Ojala le ayude a alguien en el futuro, y bueno gracias por la ayuda! Ayer surgio el problema y ya hoy pude solucionarlo!!Gracias al Grupo!


Un saludo desde Buenos Aires


Buenas Noches!



From: dcar...@gmail.com
Date: Wed, 5 Sep 2012 17:58:06 -0300

Subject: Re: [codeigniter-spanish] Reportes en PDF con Codeigniter 2.1.0 , alguna libreria para usar y algun que otro ejemplo??
--
 
 

Daniel Carrero

unread,
Sep 6, 2012, 6:49:29 AM9/6/12
to codeignit...@googlegroups.com

Oscar gracias por poner la solucion a tu problema estoy seguro que ayudara a muchos.
Que tengan un excelente dia.
Saludos

Atte.
Daniel Carrero Canales.
+56974726453

--
 
 

Oscar Andrés Argueyo

unread,
Sep 7, 2012, 10:55:16 PM9/7/12
to codeignit...@googlegroups.com
Hola que tal? todavia con el problema de reportes, crei haberlo solucionado pero surgio un error y no puede entender donde esta el problema!

Pude hacer el reporte todo lo mas bien, pero cuando hacia pruebas en mi pagina, cuando accedi a un controlador que me llama a mi vista, aparecia como si quisiera visualizar un pdf en mi explorador (esto en google chrome) y solo decia "Cargando PDF" cuando lo abri en FireFox al hacer click en el link que llama a mi controlador me aparece  un cartel de descarga: " Ha decidido abri "Pacientes"" que es un archivo bin de 1,9kb y cuando lo abro es el pdf que habia hecho!

El tema es el siguiente, al controlador que llamo para hacer los reportes es otro (Controlador Reportes) no tiene nada que ver con este controlador!

Decidi volver de cero y borrar la libreria y el directorio de Fonts de la carpeta de System y con la esperanza de ver mi controlador restaurado! Pero sigue creandome el reporte aun sin las librerias! Como es posible?

Borre el nuevo controlador "Reportes", lo saque de mi html_docs en mi hosting! Y aun lo crea, puede ser un Bug de la libreria? La verdad no entiendo que esto que sucede en mi controlador!


Les agradeceria mucho la ayuda!




Date: Thu, 6 Sep 2012 07:49:29 -0300
Subject: RE: [codeigniter-spanish] Reportes en PDF con Codeigniter 2.1.0 , alguna libreria para usar y algun que otro ejemplo??
From: dcar...@gmail.com
To: codeignit...@googlegroups.com
--
 
 
Reply all
Reply to author
Forward
0 new messages