PHP - Ayuda con saltos de Linea en TCPDF

   
Vista:
Imágen de perfil de Jorge

Ayuda con saltos de Linea en TCPDF

Publicado por Jorge jorge6242@gmail.com (3 intervenciones) el 12/03/2014 16:44:22
Buenas tardes ,

Soy un Desarrollador Web.

Tengo un problema con el TCPDF , estoy usandolo en un proyecto en donde necesito generar un reporte, la cuestion esta que el reporte lo creo con una consulta sql usando la condicion WHILE , lo programa con php y postgresql.

El Problema es que cuando la lista que me genera el SQL es muy larga y pasa a la siguiente pagina el tcpdf me corta la lista y no la pasa a la pagina siguiente

Un ejemplo mas claro es es hice la consulta sql dentro de una tabla , y cuando la tabla llega al final de la hoja , esta pasa a la pagina siguiente pero me corta por la mitad una fila de la tabla, quisiera saber como podrias dar el salto de la pagina sin que la consulta se corte cada vez que pasa por la Pagina.

Espero me hallan entendido y agradeceria mucho su ayuda ya que No he podido encontrar respuestas por internet.

Saludos

Este es mi codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<?php
@session_start();
 
require_once('tcpdf/config/lang/eng.php');
require_once('tcpdf/tcpdf.php');
 
 
 
 
include ("conexion.php");
 
 
 
 
 
 
         $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
 
       // set font
       $pdf->SetFont('helvetica', '', 10);
 /*
*/ 
$pdf->setPrintHeader(false); //no imprime la cabecera ni la linea 	  
$pdf->setPrintFooter(false); //no imprime el pie ni la linea 
 
    // landscape
       $pdf->addPage( 'P', 'LETTER'  );
 
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_RIGHT, PDF_MARGIN_BOTTOM);
 
 
$id_registro_reunion = $_POST['id_rr'];
 
$cons_reunion ="SELECT rr.num_reunion1, rr.dia1, rr.d_semana1, rr.num_reunion2, rr.dia2, rr.d_semana2, rr.num_reunion3, rr.dia3, rr.d_semana3, rr.mes, rr.ano

							FROM llamado ll, registro_reunion rr
								
								WHERE ll.id_registro_reunion = rr.id_registro_reunion 
								AND ll.id_registro_reunion = '$id_registro_reunion'";
 
	$resEmp = pg_query($cons_reunion) or die(pg_last_error());
$totEmp = pg_numrows($resEmp);
 
 
 
 
$r1 = $row->num_reunion1;
$r2 = $row->num_reunion2;
$r3 = $row->num_reunion3;
$d1 = $row->dia1;
$d2 = $row->dia2;
$d3 = $row->dia3;
$ds1 = $row->d_semana1;
$ds2 = $row->d_semana2;
$ds3 = $row->d_semana3;
$mes = $row->mes;
$ano = $row->ano;
 
 
$query= " SELECT ll.n_llamado, h.descrip_handi, ae.num_ano , tc.nb_tipo_carrera, d.num_distancia, ll.cant_premio, te.nb_tipo_ejemplar, ae.descripcion_ano, ll.nb_cc , tc.id_tipo_carrera,
ll.condi, n_carrera, ll.n_grado, ll.num_cc, ll.h_kg, ll.r_kg, ll.recargo, ll.h_peso, ll.valorado

FROM llamado ll, registro_reunion rr, handi h, tipo_ejemplar te, 
tipo_carrera tc, distancia d, anos_ejemplar ae
WHERE ll.id_registro_reunion = rr.id_registro_reunion
AND ll.id_handi = h.id_handi
AND ll.id_tipo_ejemplar = te.id_tipo_ejemplar
AND ll.id_tipo_carrera = tc.id_tipo_carrera
AND ll.id_distancia = d.id_distancia
AND ll.id_anos_ejemplar = ae.id_anos_ejemplar  
AND ll.id_registro_reunion = '$id_registro_reunion'

ORDER BY n_llamado ASC
				  
				  ";
 
 
 
$result=pg_exec($query);
 
$cont=pg_numrows($result);
 
while ($arr=pg_fetch_array($result)) {
 
$html .='

<br><br> LLAMADO Nº '.$arr['n_llamado'].' <br><br>


'.$arr['descrip_handi'].'

';
 
if($arr['nb_cc'] == TRUE ){
		$html .=''.$arr['num_cc'].' "'.$arr['nb_cc'].'" '.$arr['n_grado'].'. ';
	 }
 
if($arr['recargo'] == TRUE ){
		$html .=' '.$arr['condi'].' ';
	 }
 
$html .=' PARA '.$arr['nb_tipo_ejemplar'].' DE '.$arr['descripcion_ano'].' ';
 
 
 if ($arr['id_tipo_carrera'] == 9) {
 
	$html .=' '.$arr['condi'].' ';
 
 
		 }
 
		 elseif($arr['h_kg'] == TRUE){
 
$html .=' '.$arr['nb_tipo_carrera'].'. Handicap Kgs.'.$arr['nb_tipo_ejemplar'].' Recargos: '.$arr['r_kg'].'';
 
 
 
			 }
 
			  else
 {
 
       $html .=' '.$arr['nb_tipo_carrera'].' ';
 
       if ($arr['n_carrera'] == TRUE){
 
       $html .='DE '.$arr['n_carrera'].' '.$arr['condi'].' ';
 
	   }
 }
 
 
 if($arr['recargo'] == TRUE ){
 
				$html .='Recargo: '.$arr['recargo'].'';
 
 
	 }
 
	  if($arr['h_peso'] == TRUE ){
 
	  	 $html .='Valoradas en: '.$arr['valorado'].' Bs. Handicap Pesos Efectivos: '.$arr['h_peso'].' Kgs ';
 
	 }
 
	 $html .='. DISTANCIA: '.$arr['num_distancia'].' Mts, PREMIO: '.$arr['cant_premio'].'  ';
 
}
 
$pdf->lastPage();
 
$pdf->writeHTML($html, true, false, true, false,  'C'); //for generate
$pdf->Output('FormPantauExpLocalAll', 'I'); // for generate pdf file
 
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Ayuda con saltos de Linea en TCPDF

Publicado por xve (5518 intervenciones) el 12/03/2014 21:38:21
Hola Jorge, para ello, creo que lo que necesitas utilizar es la función _beginpage(), donde se le asigna la altura de la pagina con getPageSizeFromFormat()

http://www.tcpdf.org/doc/code/classTCPDF.html#aeba2b911ed732e58cb99c0b9b29ed05f

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jorge

Ayuda con saltos de Linea en TCPDF

Publicado por Jorge (3 intervenciones) el 13/03/2014 15:54:10
Si va hermano ya lo reviso gracias por tu ayuda!

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jorge

Ayuda con saltos de Linea en TCPDF

Publicado por Jorge (3 intervenciones) el 13/03/2014 16:11:15
Creo que me explique mal esa consulta de base de datos me lanza una lista y cuando la lista sobre pasa la hora esta se corta y sigue con la pagina siguiente, pero se corta feo ya que la lista que muestro tiene un titulo y un contenido esto se repite en el array mostrandome los datos de una tabla, pero cuando llega al final de la hoja pasa a la siguiente pero cortado , en vez de seguir la continuidad con otro titulo y contenido se corta mostrando al final de la primera hora el titulo y en la pagina siguiente el contenido.

Cuando me refiero a titulo y contenido me refiero a unos datos de insripcion de carreras de caballo , muestro una lista dde los llamados disponibles para la carrera y los muestro por medio de la condicion WHILE , y este me arroja una lista de registros que tengo en la base de datos, te anexo un pantalla de el sistema que genera en pdf los llamados.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con saltos de Linea en TCPDF

Publicado por blaDDI (1 intervención) el 09/04/2015 23:30:03
$objeto->getAliasNumPage()
Este método devuelve una cadena que contiene el número de la página actual.

$objeto->getAliasNbPage()()
Complementario al anterior, este método devuelve el número total de páginas del documento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar