Foros del Web » Programando para Internet » PHP »

reportes clase R&Os

Estas en el tema de reportes clase R&Os en el foro de PHP en Foros del Web. hola a todos estoy generando un reporte usando la clase r&os que es muy buena por cierto, pero en donde trabajo me pidieron que generara ...
  #1 (permalink)  
Antiguo 24/02/2005, 11:23
 
Fecha de Ingreso: febrero-2005
Mensajes: 17
Antigüedad: 19 años, 2 meses
Puntos: 0
reportes clase R&Os

hola a todos estoy generando un reporte usando la clase r&os que es muy buena por cierto, pero en donde trabajo me pidieron que generara varios reporte a partir de uno mismo, es decir k al generar la tabla condicionara los resultados y k si uno de ellos es menor a una cantidad x este se convierte en link y realize otro reporte usando la misma clase, pero ahora me pidieron que si podia hacer que el segundo reporte que genero (el que esta condicionado a la cantindad) se genere dentro del mismo documento, hasta la parte inferior, y esto es lo que no he podido hacer, hasta ahora se genera el reporte mu bien en otro documento, pero me pidieron que lo haga en el mismo documento, que puedo hacer, el codigo k tengo es el siguiente:


repcontinuidad3.php
<?
include "mysql.inc.php";
$db = opendatabase('scmr');
$sql="select distinct idcajero from calccontinuidad where fecha between '$fecha1' and '$fecha2' order by idcajero";
$rscajeros=$db->openrecordset($sql);
$titulos[0] = "Cajero";
$ren=1;

$sql="select distinct fecha from calccontinuidad where fecha between '$fecha1' and '$fecha2' order by fecha";
$rsfechas=$db->openrecordset($sql);

while(!$rsfechas->eof)
{
$titulos[$ren]=$rsfechas->value('fecha');
$ren++;
$rsfechas->movenext();
}
$titulos[$ren] = 'Promedio';

$ren=0;

while(!$rscajeros->eof)
{
$cajero = $rscajeros->value('idcajero');

$arr[$ren][0]=$cajero;

$datos = 0;
$acumulado = 0;

for($x=1;$x<count($titulos)-1;$x++)
{
$fecha=$titulos[$x];
$sql="select fecha, porcentaje from calccontinuidad where idcajero ='$cajero' and fecha='$fecha' order by fecha";
$rscont=$db->openrecordset($sql);

if ($rscont->eof)
$arr[$ren][$x] = "-";
else
{
$datos++;
$acumulado += $rscont->value('porcentaje');
if($rscont->value('porcentaje') < $umbralcontinuidad)
$arr[$ren][$x] = "<c:alink:alarmas2.php?var=$cajero>". number_format($rscont->value('porcentaje'),2). "</c:alink>";
else
$arr[$ren][$x] = number_format($rscont->value('porcentaje'),2);
}

$rscont->movenext();
}

$arr[$ren][count($titulos)-1]= number_format($acumulado / $datos,2);
$ren++;

$rscajeros->movenext();
}
//print_r ($arr);

// Aqui empieza lo del PDF

error_reporting(E_ALL);
include('class_reportes/class.ezpdf.php');

$pdf = & new Cezpdf('letter','landscape');
$pdf->selectFont('d:/server/php/pdf-related/Helvetica');
$pdf->ezStartPageNumbers(500,18,10,'','{PAGENUM} de {TOTALPAGENUM}',1);

// coloca una linea arriba y abajo de todas las paginas
$all = $pdf->openObject();
$pdf->saveState();
$pdf->setStrokeColor(0,0,0,1);
$pdf->line(20,30,750,30);
$pdf->line(745,585,35,585);
$pdf->addText(35,590,10,'Resumen de Cajeros');
$pdf->addText(660,590,10,'Depto. Sistemas');
$pdf->addText(400,18,10,'Pagina');
$pdf->restoreState();
$pdf->closeObject();
// termina las lineas
$pdf->addObject($all,'all');

$pdf->ezText('<c:alink:fechas.php>Generar Nuevo Reporte...</c:alink>',12,array ('justification' => 'center'));
$pdf->eztext('<c:ilink:tag1>FINAL</c:ilink>',12,array('justification'=>'center'));
$pdf->ezTable($arr,$titulos,'Reporte de continuidad');
$pdf->addDestination('tag1','FitBH');


if (isset($d) && $d){
$pdfcode = $pdf->ezOutput(); //Necesario para que funcione ezStartPageNumbers
$pdfcode = str_replace('\n','\n<br>',htmlspecialchars($pdfcod e));
echo '<html><body>';
echo trim($pdfcode);
echo '</body></html>';
} else {
$pdf->ezStream(); //Necesario para que funcione ezStartPageNumbers
}
?>


y si una cantidad es menor a x entonces se convierte en link al siguiente codigo:

alarmas2.php

<?php
$sqlr = str_replace("`", "", $sqlr);
$sqlr = str_replace("\'", '"', $sqlr);
error_reporting(E_ALL);
include('class_reportes/class.ezpdf.php');

$pdf = & new Cezpdf('letter','landscape');
$pdf->selectFont('d:/server/php/pdf-related/Helvetica');
$pdf->ezStartPageNumbers(500,18,10,'','{PAGENUM} de {TOTALPAGENUM}',1);

$all = $pdf->openObject();
$pdf->saveState();
$pdf->setStrokeColor(0,0,0,1);
$pdf->line(20,30,750,30);
$pdf->line(95,585,685,585);
$pdf->addText(95,590,10,'Resumen de Alarmas');
$pdf->addText(600,590,10,'Depto. Sistemas');
$pdf->addText(400,18,10,'Pagina');
$pdf->restoreState();
$pdf->closeObject();
$pdf->addObject($all,'all');

$host = '192.168.60.9';
$user = 'root';
$password = '';

$database = 'scmr';
$sql = "select idcajero,codigoparticular,codigogeneral,fechahorai nicio,fechahorafinal from alarmashistorico where idcajero = '$var' and codigogeneral <> 4101 group by codigoparticular order by fechahorainicio";
$link = mysql_connect($host,$user,$password);
mysql_select_db($database);
$data = array();
$result = mysql_query ($sql ) or die (mysql_error());
$cols = array(//'idcajero'=>'ID CAJERO',
'codigoparticular'=>'COD PARTICULAR',
//'codigogeneral'=>'COD GENERAL',
'fechainicio'=>'INICIO DE ALARMA',
'duracion'=>'DURACION DE ALARMA',
'descripcion'=>'DESCRIPCION'
);


while ($row = mysql_fetch_array($result)) {
$idcaj = $row[0]; // id cajero
$codp = $row[1]; // codigo particular
$codg = $row[2]; // codigo general
$dur = "select timediff('$row[4]','$row[3]')";
$tot = mysql_query($dur);
$dur2 = mysql_fetch_array($tot);
$finicio = $row[3];

$sql2 = "select descripcion from alarmas where codigo = '$codp' ";
$query2 = mysql_query($sql2);
$row2 = mysql_fetch_array($query2);

$data[] = array( //'idcajero'=>$idcaj,
'codigoparticular'=>$codp,
//'codigogeneral'=>$codg,
'fechainicio'=>$finicio,
'duracion'=> $dur2[0],
'descripcion'=>$row2[0]
);
}


$pdf->ezText('<c:alink:fechas.php>Generar Nuevo Reporte...</c:alink>',12,array ('justification' => 'center'));
$pdf->ezTable($data,$cols,"RELACION ALARMAS DEL CAJERO $idcaj",array('fontSize'=>10,
'cols'=>array(
//'idcajero'=>array('justification'=>'center')
'codigoparticular'=>array('justification'=>'center ')
//,'codigogeneral'=>array('justification'=>'center')
,'fechainicio'=>array('justification'=>'center')
,'duracion'=>array('justification'=>'center')
,'descripcion'=>array('justification'=>'right')))) ;// salida

if (isset($d) && $d){
$pdfcode = $pdf->ezOutput(); //Necesario para que funcione ezStartPageNumbers
$pdfcode = str_replace('\n','\n<br>',htmlspecialchars($pdfcod e));
echo '<html><body>';
echo trim($pdfcode);
echo '</body></html>';
} else {
$pdf->ezStream(); //Necesario para que funcione ezStartPageNumbers
}
?>

como puedo haceer para que alarmas2.php se genere dentro de repcontinuidad sin afectarse entre si??

espero y se pueda hacer esto

gracias....
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:39.