Página 1 de 1

Módulo manejo de archivo texto

NotaPublicado: 2012-12-11 12:52 @578
por silva
Agradecería si me pudiesen sugerir algún módulo que me permita hacer lo siguiente:

Tengo reportes en html: datos mostrados en columnas de tablas HTML y quisiera darle al usuario la posibilidad de poder ver e imprimir esos datos en un archivo de texto tabular, es decir que respete el encolumnado.

¡¡¡Gracias!!!

Re: Módulo manejo de archivo texto

NotaPublicado: 2012-12-11 14:07 @630
por explorer
Humm.... se puede hacer de varias maneras. Aquí va una:

Usando HTML::TableExtract se sacan los datos de las tablas, almacenándolas en un array de array. Y con esa estructura, generamos la tabla con Text::Table.

Hay más opciones, como Data::Tabular, Data::ShowTable, Text::ASCIITable, etc. Y para extraer los datos del HTML, también.

Re: Módulo manejo de archivo texto

NotaPublicado: 2012-12-15 04:50 @243
por silva
¡¡Gracias!! La solución que me brindas es la correcta pero no es lo que necesito, me expliqué en forma incorrecta.

Yo soy la que genero el reporte en forma de tabla en HTML y al mismo tiempo quisiera estar formando un archivo de texto para que el operador pueda imprimirlo, es decir datos en bruto sin imágenes, pero que mantenga lo tabular y la prolijidad. Necesito poder manejar controles de página, tamaño de la página a imprimir, totalizadores, en el reporte que envíe a impresión.

¿Qué módulo podía utilizar para generar este archivo y poder especificar estas definiciones?

¡¡¡Muchas gracias!!!

Re: Módulo manejo de archivo texto

NotaPublicado: 2012-12-15 07:18 @346
por explorer
Hummm... dudo mucho que exista algo así...

Sí que hay módulos para hacer reporting en CPAN, pero todos son para HTML, PDF y otros formatos. Creo que nunca he visto nada para texto.

Sí que hay algún conversor de HTML a texto, como por ejemplo html2txt, pero no sé cómo será la salida y si respetará el formato de las tablas.

Me temo que no te queda otra solución que hacer algo de programación...

Hay otros módulos para hacer paginación, pero son generales de HTML+CGI, por lo que se pueden aplicar también a texto preformateado. Otra cosa es si quieres entregar al usuario solo texto, en cuyo caso el texto debe estar completamente formateado a lo largo de todas las páginas (incluyendo los caracteres de salto de página, por ejemplo).

También hay otros módulos para hacer el informe directamente en texto, como por ejemplo Text::Report. Quizás esta sea la solución: dices que tú generas el informe en HTML, así que suponemos que tienes los datos para generar ese informe. Entonces, usando esos mismos datos, puedes generar el informe en texto directamente, sin tener que convertirlos desde HTML.

Re: Módulo manejo de archivo texto

NotaPublicado: 2013-01-05 05:10 @257
por silva
He estado viendo los módulos que me has sugerido, y me intereso Text::Report, pero no puedo instalarlo. Hago las instalaciones con el comando: cpan Text::Report, pero no instala nada. Me sale el siguiente error:

Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. ftp: ftp.perl.org: Temporary failure in name resolution
  2. Not connected.
  3. Local directory now /root/.cpan/sources/authors/id/D/DA/DAVIDIUS
  4. Not connected.
  5. Not connected.
  6. Not connected.
  7. Not connected.
  8. Not connected.
  9. Not connected.
  10. Not connected.
  11. Not connected.
  12. Not connected.
  13. Not connected.
  14. Bad luck... Still failed!
  15. Can't access URL ftp://ftp.perl.org/pub/CPAN/authors/id/D/DA/DAVIDIUS/Text-Repor                  t-1.004.tar.gz.
  16.  
  17. Your urllist is empty! The urllist can be edited. E.g. with 'o conf urllist
  18. push ftp://myurl/'
  19.  
  20. Could not fetch authors/id/D/DA/DAVIDIUS/Text-Report-1.004.tar.gz
  21. Giving up on '/root/.cpan/sources/authors/id/D/DA/DAVIDIUS/Text-Report-1.004.tar                  .gz'
  22. Note: Current database in memory was generated on Sat, 25 Jun 2011 10:27:08 GMT
  23.  
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


¿Cómo puedo instalarlo? ¡¡¡¡¡¡¡Gracias!!!!!!!

Re: Módulo manejo de archivo texto

NotaPublicado: 2013-01-05 08:18 @387
por explorer
El error dice que no ha podido instalarlo porque no hay conexión a Internet o/y el sistema de resolución de nombres no está bien configurado.

Consulta con tu administrador del sistema.

Módulo Text::Report

NotaPublicado: 2013-01-09 09:52 @452
por silva
He podido instalar este módulo, ya que mi intención es conformar un archivo de texto con formato: paginación, datos tabulares, etc.

Mi consulta es: ¿Cómo grabo lo obtenido (informe con formato) en un archivo.txt para luego abrirlo e imprimirlo?

¡¡¡¡Gracias!!!!

Re: Módulo manejo de archivo texto

NotaPublicado: 2013-01-09 16:56 @747
por explorer
Con el método report() de ese módulo se obtiene el informe terminado.
Se le pasa un argumento según la forma en la que queremos obtenerlo:
  • 'get' : devuelve el informe como una lista de elementos, siendo cada uno una línea del informe
  • 'csv' : devuelve los datos en formato CSV, en forma de un array de arrays
  • 'print' : manda el informe a la salida estándar
Lo único que tienes que hacer es abrir el informe y grabar el resultado en él. Algo así (no probado):

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. open my $INFORME, '>', 'informe.txt';
  2. print   $INFORME $rpt->report('get');
  3. close   $INFORME;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

siendo $rpt el objeto Text::Report creado antes.

Re: Módulo manejo de archivo texto

NotaPublicado: 2013-01-09 19:55 @871
por silva
¡¡¡¡Funcionó!!!! ¡¡¡Gracias!!!