Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/01/2012, 08:13
ligia_26
 
Fecha de Ingreso: enero-2012
Mensajes: 3
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Reportes en Plantillas RTF

Mi codigo; no me da errores; solo que no me muestra la informacion como debe ser; es decir, lo que se quiere es q los detalles se impriman por lo menos 2 por paginas y no uno como lo esta haciendo. este es el codigo para mostrar el reporte.

<?PHP
FUNCTION leef($fichero){
$texto=file($fichero);
$tamleef=sizeof($texto);
for ($n=0;$n<$tamleef;$n++){
$todo=$todo.$texto[$n];
}
return $todo;
}

FUNCTION rtf($sql, $plantilla, $fsalida, $matequivalencias){
$pre=time();
$fsalida="reportes".$pre.$fsalida;
mysql_connect('localhost','root','');
$txtplantilla=leef($plantilla);
$matriz=explode("sectd",$txtplantilla);
$cabecera=$matriz[0]."sectd";
$inicio=strlen($cabecera);
$final=strrpos($txtplantilla,"}");
$largo=$final-$inicio;
$cuerpo=substr($txtplantilla,$inicio,$largo);
$punt=fopen($fsalida,"w");
fputs($punt,$cabecera);
mysql_select_db("bdpoa");
$resul = mysql_query($sql);
WHILE ($row=mysql_fetch_object($resul)){
$despues=$cuerpo;
foreach ($matequivalencias as $dato){
$datosql=$row->$dato[1];
$datosql=stripslashes($datosql);
$datortf=$dato[0];
$despues=str_replace($datortf,$datosql,$despues);
}



fputs($punt,$despues);

fputs($punt,$saltopag);


}
fputs($punt,"}");
fclose($punt);
return $fsalida;
}

$plantilla="reportesplan.rtf";
$sql="SELECT poaplan.codplan, poaplan.fecha, poaplan.objetivoestrategico, poaplan.unidadejecutora, poaplan.operacion, poaplan.objetivo, poaplan.responsablepoli, poaplan.cargopoli, poaplan.responsableadmin, poaplan.cargoadmin, poaplan.responsablenat, poaplan.cargonat, poaplan.productoprog, poaplan.resultadoesperado, poaplan.observaciones, poaacciones.descripcion, poaacciones.unidadmedida, poaacciones.volumentrabajo, poaacciones.fechadesde, poaacciones.fechahasta, poaacciones.dias, poaacciones.hombres, poaacciones.partida, poaacciones.bolivares FROM poaplan, poaacciones WHERE poaplan.codplan='CC2011' AND poaplan.statusp=1 AND poaacciones.codplan='CC2011' AND poaacciones.statusa=1";


$equivalencias[0][0]="#*codplan*#";
$equivalencias[0][1]="codplan";
$equivalencias[1][0]="#*objetivoestrategico*#";
$equivalencias[1][1]="objetivoestrategico";
$equivalencias[2][0]="#*unidadejecutora*#";
$equivalencias[2][1]="unidadejecutora";
$equivalencias[3][0]="#*operacion*#";
$equivalencias[3][1]="operacion";
$equivalencias[4][0]="#*objetivo*#";
$equivalencias[4][1]="objetivo";
$equivalencias[5][0]="#*responsablepoli*#";
$equivalencias[5][1]="responsablepoli";
$equivalencias[6][0]="#*cargopoli*#";
$equivalencias[6][1]="cargopoli";
$equivalencias[7][0]="#*responsableadmin*#";
$equivalencias[7][1]="responsableadmin";
$equivalencias[8][0]="#*cargoadmin*#";
$equivalencias[8][1]="cargoadmin";
$equivalencias[9][0]="#*responsablenat*#";
$equivalencias[9][1]="responsablenat";
$equivalencias[10][0]="#*cargonat*#";
$equivalencias[10][1]="cargonat";
$equivalencias[11][0]="#*descripcion*#";
$equivalencias[11][1]="descripcion";
$equivalencias[12][0]="#*unidadmedida*#";
$equivalencias[12][1]="unidadmedida";
$equivalencias[13][0]="#*volumentrabajo*#";
$equivalencias[13][1]="volumentrabajo";
$equivalencias[14][0]="#*fechadesde*#";
$equivalencias[14][1]="fechadesde";
$equivalencias[15][0]="#*fechahasta*#";
$equivalencias[15][1]="fechahasta";
$equivalencias[16][0]="#*dias*#";
$equivalencias[16][1]="dias";
$equivalencias[17][0]="#*hombres*#";
$equivalencias[17][1]="hombres";
$equivalencias[18][0]="#*partida*#";
$equivalencias[18][1]="partida";
$equivalencias[19][0]="#*bolivares*#";
$equivalencias[19][1]="bolivares";
$equivalencias[20][0]="#*productoprog*#";
$equivalencias[20][1]="productoprog";
$equivalencias[21][0]="#*resultadoesperado*#";
$equivalencias[21][1]="resultadoesperado";
$equivalencias[22][0]="#*observaciones*#";
$equivalencias[22][1]="observaciones";
$equivalencias[23][0]="#*fecha*#";
$equivalencias[23][1]="fecha";
$salida=rtf($sql, $plantilla, "reportesplan.rtf", $equivalencias);
$salida="<A href='$salida'>Obtener</a>";
echo"<p>$salida</p>";
?>


Entonces que me recomiendas; para hacer un reporte en php y que me permita hacer una plantilla para mostrar esos datos, ya que intentamos hacerlo con writter, y no nos dio. Y no conocemos un manejador de reportes que podamos utilizar con php.