Boleta en pdf

Respuesta de
a
Usuario
Hola nuevamente, ojala puedas ayudarme...
 
Necesito crear una boleta con los datos del registro que estoy modificando...(una cuota).. He buscado varias librerías y me gusto por lo cómodo de trabajar con ella la FPDF. Revise los tutoriales que tiene la página, pero no me aparece nada respecto a como extraer datos de una tablas y colocarlos en el pdf. Ademas las boletas generadas necesito guardarlas en una tabla como historial para consultas... Tiene información al respecto, ¿algún ejemplo?
 
Sabes de alguna otra librería como crystal report (ya vi el ágata, tiene una opción super genial para crear visualmente los informes pero no encuentro información para trabajarla y manipular los informes con php)... o alguna otra de pago...
 
Gracias... esperando tus comentarios...
Experto
La librería FPDF es muy buena, yo la utilizo mucho y en especial una que es basada en ella y es la pdftable (http://www.vanxuan.net/tool/pdftable/), en la cual yo armo un código de una tabla html y la envío a la librería fpdf y genera el archivo.
En cuanto a enviar la información a pdf es sencillo, es como si generaras una tabla en html y al final la envías a la librerías, algo así:
<?php
define('FPDF_FONTPATH','font/');
require('lib/pdftable.inc.php');
 
$host_db="localhost";
$user_db="root";
$passwd_db="idmatx";
$db="c";
$query="select * from resultado";
 
$var_tam_pagina='Letter'; //A3, A4, A5, Letter, Legal
$var_medida='mm';  //pt, mm, cm, in
$var_orientacion='P'; //P, L
$var_margen_izq=5;
$var_margen_sup=5;
$var_margen_der=5;
$var_auto_print=true;  //false: imprime automatico, false: pregunta impresora
 
$link=mysql_connect($host_db, $user_db, $passwd_db);
mysql_select_db($db, $link);
$result=mysql_query($query, $link);
$content="
<table border='1' cellpadding='0' cellspacing='0'>
";
while($row = mysql_fetch_array($result)){
 $content=$content."
<tr>
<td>$row[0]</td>
<td>$row[1]</td>
</tr>
";
}
$content=$content."
</table>
";
 
class Reporte extends PDFTable{
 function Header(){
  parent::Image('logo_pb.png',10,8,33);
  parent::SetFont('Arial','B',20);
  parent::Cell(0,10,'Title',0,0,'C');
  parent::Ln(20);
  $this->_makePageSize();
 }
 
 function Footer(){
  parent::SetY(-15);
  parent::SetFont('Arial','I',8);
  parent::Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
  $this->_makePageSize();
 }
 
 function AutoPrint($dialog=false){
  //Launch the print dialog or start printing immediately on the standard printer
  $param=($dialog ? 'true' : 'false');
  $script="print($param);";
  $this->IncludeJS($script);
 }
 
 function AutoPrintToPrinter($server, $printer, $dialog=false){
  //Print on a shared printer (requires at least Acrobat 6)
  $script = "var pp = getPrintParams();";
  if($dialog)
   $script .= "pp.interactive = pp.constants.interactionLevel.full;";
  else
   $script .= "pp.interactive = pp.constants.interactionLevel.automatic;";
  $script .= "pp.printerName = '\\\\\\\\".$server."\\\\".$printer."';";
  $script .= "print(pp);";
  $this->IncludeJS($script);
 } 
}
 
$pdf = new Reporte($var_orientacion, $var_medida, $var_tam_pagina);
$pdf->AliasNbPages();
$pdf->SetMargins($var_margen_izq, $var_margen_sup, $var_margen_der);
$pdf->AddPage();
$pdf->SetFont('Arial','',10);
 
$pdf->htmltable($content);
$pdf->Ln(2);
$pdf->htmltable($content);
$pdf->AutoPrint($var_auto_print);
$pdf->output('Reporte.pdf', 'I');
?>
Espero te sirva para tus requerimientos,
 
Usuario
Muchas gracias... lo ultimo... Tengo los siguiente datos que necesito llevar a la boleta:
Rut, nombre, apellido, fecha, cuota valorcuota, total...
En el proceso necesito que estos datos sean guardados en una tabla llamada boletasemitidas, y la idea es que ya sea por solicitud del cliente por ejemplo se consulte dicha tabla y pueda imprimir cualquiera de las boletas de ese cliente...
 
Espero se me entienda... Atenta a tus comentarios...
Experto
Puedes seguir la lógica del proceso tal como lo tengas definifo, me imagino sin tener conocimiento que seria:
1: Solicitud boleta
2: Registro boleta emitida (enviando los datos a la tabla con la estructura definida por ti)
3: Si se registra exitosamente se generación boleta de lo contrario no
4: Generación boleta
5: Entrega boleta
Experto
¿Me preguntas nuevamente?
Usuario
No... sorry, lo que pasa es que actualice la página y se envío nuevamente la pregunta...
Realizare el proceso que me indicas y te comento... gracias...
Experto
ok,
Usuario
Muchas gracias...