[Perl] Formateador de reportes

Alejandro G. Bedoya nezumi@prodigy.net.mx
Wed, 24 Apr 2002 20:36:52 -0500


Pos la neta no entendi mucho... pero tal vez funcione el recorrer tod=
os los
registros para buscar en cada campo cual es su mayor length....

Luego, sobre esos lenghts mayores hacer lo del @<<<

Obviamente la bronca es si te pasas de 132 caracteres.....


---
Sinceramente...
Alejandro G. Bedoya
InterAccion.COM          Ponemos su Internet en Acci=F3n




----- Original Message -----
=46rom: "Gunnar Wolf" <gwolf@campus.iztacala.unam.mx>
To: <perl@tlali.iztacala.unam.mx>
Sent: Wednesday, April 24, 2002 7:43 PM
Subject: [Perl] Formateador de reportes


Hola,

Estoy en un aprieto: Necesito hacer reportes sin saber qu=E9 es lo qu=
e estoy
reportando de antemano - El usuario elige qu=E9 campos de la BD va a =
querer,
con qu=E9 ordenamiento, criterios, etc., y le entrego el reporte. Est=
o me
cost=F3 1.5 huevos, pero ya qued=F3, y estoy reporteando muy bonito p=
or CGI.

El problema es que cuando al usuario le gusta un reporte puede decidi=
r
imprimirlo en la venerable matricial de 132 caracteres por rengl=F3n.=
.. Para
esto supongo que la mejor herramienta es el reporteador interno de Pe=
rl,
ese que se llama con:

format SALIDA_TOP =3D
P=E1gina @<
$%
Campo Otrocampo Otro  El=DAltimo
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2E

format SALIDA =3D
@<<<< @<<<<<<<< @<<<< @<<<<<<<<
$campo1, $campo2, $campo3, $campo4
=2E

open(SALIDA,'>archivo.txt');
while ( ($campo1,$campo2,$campo3,$campo4) =3D $sth->fetchrow_array) {
    write(SALIDA);
}
close(SALIDA);

Bueno... Todo muy bien hasta aqu=ED. Cabe mi comentario: Esto NO ES P=
ERL!
;-) No cumple con la sintaxis b=E1sica ni de lejos! Pero eso s=ED, es=
 =FAtil.

Mi problema es el siguiente: Por medio de un par de eval y recursos
similares ya logr=E9 formar din=E1micamente el segundo formato (SALID=
A). Sin
embargo, para el encabezado (SALIDA_TOP) a=FAn no doy... Los nombres =
de
campos los quiero poner (claro, din=E1micamente tambi=E9n) en su luga=
r. Se me
har=EDa muy puerco (adem=E1s de no saber c=F3mo hacerlo ;-) ) el usar=
 la salida
de un reporte para la entrada del siguiente... =BFQu=E9 me sugieren? =
=BFConocen
alg=FAn modulito del CPAN que me pueda sacar del paso? =BFO me conven=
dr=E1 crear
mi encabezado con una bola de substr(...)s?

Sale pues... Tengo que irme, espero que me puedan ayudar con esto.

Saludos,

--
Gunnar Wolf - gwolf@campus.iztacala.unam.mx - (+52-55)5623-1118
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973  F800 D80E F35A 8BB5 27AF



_______________________________________________
Perl mailing list
Perl@tlali.iztacala.unam.mx
http://tlali.iztacala.unam.mx/mailman/listinfo/perl