Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos


Ir a la página Anterior  1, 2, 3, 4, 5  Siguiente

Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Julio:
Si bien vi que existía hace tiempo, nunca me he dedicado a intentar usarla, pero hace unos días decidí aprender a utilizarla y aquí estoy haciendo pruebas.
De momento he descargado la versión classLatex-0.0.4.tar.gz que es la que estoy utilizando.
Es muy rápida y estoy tratando de usarla para generar listados.
De momento no logro hacerlo bien porque el resultado que le paso tiene mas columnas que las que entran en la pagina y también mas registros que los que caben.
¿Es posible manejar el ancho de las columnas?
¿Es posible hacer un salto de pagina y que la tabla continúe en la pagina sigiente? o si son varias paginas cortar la tabla cada vez que llegue a un limite.

También, quería pedirte que, como esta clase tiene varios años ya, nos pongas al día sobre las novedades y si existe algún proyecto de altas bajas modificaciones que la este usando para poder mirar el código y utilizarlo como ejemplo, de momento estoy usando el tuyo Ejemplo2ClassLatex que es muy instructivo.
Todavía no hay un componente latex para gambas verdad?
He conseguido aprender algunas cosas del lenguaje latex y he logrado achicar el margen de la pagina para que entren mas contenidos, pero es un universo bastante amplio y llevara tiempo.
Mi objetivo es poder hacer listados de datos con encabezados mas o menos complejos, facturas, resúmenes de materiales etc. etc.
¿Se pueden dibujar diagramas con latex?

Muchas gracias por crear la clase classlatex
Saludos.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Hola Tincho:

¿Es posible manejar el ancho de las columnas?
¿Es posible hacer un salto de pagina y que la tabla continúe en la pagina sigiente? o si son varias paginas cortar la tabla cada vez que llegue a un limite.

Pues.... habría que incorporarlo o mirarlo como se hace con "latex" e implementarlo. Es cuestión de ampliar o adaptar el código fuente del programa (o la clase latex).


Citar:
nos pongas al día sobre las novedades y si existe algún proyecto de altas bajas modificaciones que la este usando para poder mirar el código y utilizarlo como ejemplo

No, no hay novedades sobre esa clase.

Citar:
Todavía no hay un componente latex para gambas verdad?

No, no lo hay


Citar:
¿Se pueden dibujar diagramas con latex?


Mirate esto:
http://www.uv.es/~jgutierr/LatexAva...Avanzado_j1.pdf
También puedes incluir imágenes:
https://es.sharelatex.com/learn/Inserting_Images

Lo normal es generar el gráfico por un programa, convertirlo en imagen, e insertarla en tu documento latex.

Por ejemplo, lo puedes generar con gnuplot http://www.gnuplot.info/


Nota:

Esta clase la tengo un poco "abandonada", ya estoy usando más el html y exportación de datos directamente a libreoffice.
Mirate este video:
https://www.youtube.com/watch?v=Lwk...zmOXYsG&index=8

Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Julio:
La aplicación de ventas, de la que muestras el funcionamiento el en video, se puede descargar desde algún sitio? me interesa ver como generas los html y luego los conviertes a ods? Ya que solo logre descargar Cortes-0.3.1.tar.gz pero en el video aparece ventas 0.4.9

Gracias por la información.

Saludos.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Tincho:

Citar:
La aplicación de ventas, de la que muestras el funcionamiento el en video, se puede descargar desde algún sitio?

Este fin de semana la subo al blog que he hecho para ella:
http://softwarelibreventas.blogspot.com.es/

Citar:
me interesa ver como generas los html

La generación de html, la puedes ver explicada en:
http://cursogambas.blogspot.com.es/...o-printer.html.
http://jsbsan.blogspot.com.es/2012/...rapidos-de.html

Citar:
y luego los conviertes a ods?

No, no lo convierte ods, solo lo que hago es abrir el archivo .html, y libreoffice calc lo convierte y lo visiona. Luego lo puedes guardar como .ods o .xls desde libreoffice.

Ya aviso en el foro de la disponibilidad del programa.

Saludos

Julio

Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Julio:
Estoy intentando usar la clase latex, me he topado con un inconveniente.
Cuando el resultado tiene mas registros que los que caben en la hoja, ya sea apaisada o no, la tabla no se "reparte" en las sucesivas paginas.
La soluciones que se me ocurren son:
1) Subdividir el resultado en resultados mas pequeños con cantidades NRPag y enviarle dicho parámetro al método y que este reparta los registros en tantas paginas como sea necesario.
Public Sub ResultadoConsultaDB(resultados As Result, nombretablas As Boolean, Optional formato As String, Optional NRPag As String) As String

2) Subdividir el resultado antes de "enviarlo" al método y no "modificar" el método ResultadoConsultaDB.

En cualquiera de los dos casos me pregunto ¿Como es posible subdividir un resultado de una consulta a la base de datos?

Saludos.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
No se si te vale de ayuda, porque no uso latex, pero en mi manera de imprimir con HTML, el fichero resultante utiliza estilos específicios para imprimir en papel, con lo que puedes establecer la cabecera de página, pie de página etc... y no verlos en pantalla.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
shordi escribió:  
No se si te vale de ayuda, porque no uso latex, pero en mi manera de imprimir con HTML, el fichero resultante utiliza estilos específicios para imprimir en papel, con lo que puedes establecer la cabecera de página, pie de página etc... y no verlos en pantalla.

Si todo me vale de ayuda, ya que quede como Tom hanks cuando perdio a wilson, ya que usaba reports2 y ahora no funciona en la version debian de gambas.
Y ya es la segunda vez que este "reports" me deja así.
Necesito generar los informes en formato A3 de varias paginas y muchos registros y cada pagina con su encabezado con título del documento numero de página etc. etc.
Así que, maestro Jedi, muéstrenos su manera de hacer reportes html con encabezados estilos y toda la pesca.

¿Se pueden controlar los anchos de las columnas?
¿Se puede definir un numero de registros por pagina?

Saludos.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Se puede hacer de todo... dependiendo de tu habilidad con HTML y CSS. (La mía no es mucha, pero en mi trabajo no se requiere más)
En realidad ya conoces el método que uso... aunque te haya pasado desapercibido mientras echabas la SIESTA (perdón, chiste horrible...)

Hasta donde lo he desarrollado, más o menos, se compone de:

- Un fichero de "plantilla" html que defina la cabecera, el cuerpo y los pies de página
- Una, o varias, hojas de estilos
- Una base de datos con los datos a imprimir, claro, y
- Un proceso que mezcle todo, claro.

La plantilla es ésta:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns='http://www.w3.org/1999/xhtml' xml:lang='es' lang='es'>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
<TITLE></TITLE>
<meta name="qrichtext" content="1" />
<META NAME="GENERATOR" CONTENT="HTML">
<META NAME="AUTHOR" CONTENT="jorge ">
<META NAME="CREATED" CONTENT="20101122;22280000">
<META NAME="CHANGED" CONTENT="0;0">
<STYLE TYPE="text/css">
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm; color: #000000 }
P.western { font-family: "Times New Roman", serif; font-size: 12pt; so-language: es-ES }
P.cjk { font-family: "DejaVu Sans", sans-serif; so-language: zh-CN }
P.ctl { font-family: "Times New Roman", serif; font-size: 12pt }
-->
[css]
</STYLE>
<STYLE>
H1.SaltoDePagina {PAGE-BREAK-AFTER:always}
</STYLE>
</head>
<BODY onload=\"window.print()\" style="font-size:9pt;font-family:Sans Serif">
<br>
<div float="
center" width="100%">
<div style="
float:Left; width:30%;"> <img src="[logo]" align="left" width="200"> </div>
<div style="
float:right; text-align:center; font-weight:bold; font-size:18px; width:69%;"> [titulo] </div>
</div>
<table width="
100%">
<thead>
[cabeceras]
</thead>
<tfoot>
[pie]
</tfoot>
<tbody>
[loop]
</tbody>
</table>
</body>
</html>


Tu código debe sustituir las cadenas [css],[cabeceras],[loop] y [pie] con los contenidos de tu base de datos.

-Sustituye [css] por el contenido de un fichero css con los estilos de colores, tipo de letra, etc.
Este es el fichero css (siesta.css) que usa SIESTA por defecto, pero te da a elegir entre unos cuantos:

table {
font-family: Verdana, Arial, Helvetica, sans-serif;
border-collapse: collapse;
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
color: #333;
}

table thead tr th {
text-transform: uppercase;
background: #e2e2e2;
}

table tfoot tr th, table tfoot tr td {
text-transform: uppercase;
color: #000;
font-weight: bold;
}

table tfoot tr th {
width: 20%;
}

table tfoot tr td {
width: 80%;
}

table td, table th {
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
padding: 5px;
line-height: 1.5em;
font-size: 10px;
vertical-align: top;
}

table tr.odd th, table tr.odd td {
background: #efefef;
}



-Sustituye [loop] por los datos de la consulta sql en formato de tabla html es decir:
<tr><td>mi contenido 1 </td><td> mi contenido 2</td>... </tr>

por cada registro

-Sustituye [pie] por el contenido html que quieras (en el caso de SIESTA es sólo un literal, pero puede ser cualquier cosa)

El código extraído del programa SIESTA:

plant = File.Load(Comun.pathEntorno &/ "siesta.html")
plant = Replace(plant, "[css]", File.Load(Comun.pathEntorno &/ "css/" & estilo.text))
plant = Replace(plant, "[columnas]", Str(arTitulos.Count))
plant = Replace(plant, "[logo]", "file://" & Comun.entorno["logo_print"])
plant = Replace(plant, "[titulo]", titulo.Text)
plant = Replace(plant, "[pie]", "<tr><td colspan=" & Str(arTitulos.Count + IIf(numerar.Value, 1, 0)) & ">" & pie.Text & "</td></tr>")


Se encarga de esas sustituciones...

El resultado de todo ese tejemaneje lo grabas como archivo html y ya lo tienes, lo abres con el Navegador y lo imprimes desde ahí.
Esto último es la debilidad del sistema: No he podido hacer la impresión directamente desde gambas. Es necesario el proceso de impresión del navegador. Esta debilidad la camuflo llamando siempre al navegador desde el botón Imprimir... Como si esa fuese la vista previa

El truco está en el estilo que especifica que, por un lado el campo [pie] situado en la etiqueta html TFOOT (table foot). Lo que incluyas en la plantilla sustituyendo a [pie] te aparecerá al final de cada página.

Leyendo esto puede parecer lioso, pero si exploras el código del formulario "fCreaListados" de Siesta verás todo el proceso en marcha.

Para cualquier duda, pregunta.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Se me olvidada el enlace al programa SIESTA
http://www.gambas-es.org/viewtopic....t=siesta#p25375

... y otra cosita: Al abrir el fichero con el navegador lo verás todo como una lista sin saltos. Imprímelo en formato .ps y lo verás tal como saldría por la impresora.

Perfil MP  
Objetivo: Re: Clase Latex: Para Crear Documentos Y Reportes En Pdf Para Imprimirlos
Shordi:
Muy interesante tu código... me lo apunto, porque yo estoy haciendo los listados en mis programas actuales con html, y se podrian mejorar con lo que comentas.


tincho
Citar:
2) Subdividir el resultado antes de "enviarlo" al método y no "modificar" el método ResultadoConsultaDB.

No se si se puede "partir", un result en varios result. Seguramente haya que modificar la subrutina.


Añado:
Shordi ha comentado como se hace: Fraccionar una consulta Sql
http://www.gambas-es.org/viewtopic.php?f=3&t=5204&highlight=

última edición por jsbsan el Lunes, 29 Febrero 2016, 19:19; editado 1 vez
Ir a la página Anterior  1, 2, 3, 4, 5  Siguiente

Página 3 de 5


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
No puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.1348s (PHP: 64% SQL: 36%)
Consultas SQL: 20 - Debug off - GZIP Activado