Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Generador Automático De Reportes Con Gb.report
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Generador Automático De Reportes Con Gb.report 
 
Bueno, hoy tengo un dia inspirado, y ya tengo la version "alpha" de un generador automáticos de reportes con gb.report.

Esta versión que os subo, realmente es "semi automático", ya que hay que darles los siguientes datos para crear el reporte:
-> Los nombre de los campos de la consulta que queremos que se muestren:
ejemplo:
infortmp.NombreDeCampos = ["Id", "nombre", "edad", "direccion"] ' importante: hay que poner exactamente el nombre del campo de la tabla de la base de datos ("Nombre" no es igual que "nombre")


-> Los anchos de esas columnas
  infortmp.ListaAnchoDeCampos = ["30mm", "30mm", "30mm", "30mm"]


Nota:
Estos datos, usando las subrutinas que usa el programa "Siesta" de Shordi, se pueden obtener  automáticamente (tanto nombres de campos de la base de datos como anchos).

Además hay que configurar estas variables:

infortmp.hconn = hconn ' pasar la conexion que tengamos con la base de datos
  infortmp.sentenciaSql = "Select * from personas" ' sentencia que queremos que se realice para la generación del listado.
  infortmp.NombreDeCabeceras = ["identificacion", "NOMBRE", "EDAD", "DIRECCION"]  ' nombres que queremos que aparezcan en la cabecera (normalmente coinciden con los nombres de los campos, pero podemos cambiarlos)
  infortmp.ListaAlineacionDeCampo = [Align.Center, Align.Center, Align.Center, align.center] ' alineacion de los datos
  infortmp.tituloInforme = "Titulo" 'titulo del informe.



Ejemplo de uso:

Public Sub Button2_Click()
  
  Dim infortmp As New Informe
  
  hconn = New Connection
  hconn.host = Application.path
  hconn.name = "leonel"
  hconn.type = "sqlite3"
  Try hconn.Open()
  
  'defino variables del informe:
  infortmp.hconn = hconn 'para que nos pasen la conexion...
  infortmp.sentenciaSql = "Select * from personas" 'propiedad publica donde nos pasa la sentencia a ejecutar
  infortmp.NombreDeCabeceras = ["identificacion", "NOMBRE", "EDAD", "DIRECCION"]
  infortmp.NombreDeCampos = ["Id", "nombre", "edad", "direccion"]
  infortmp.ListaAnchoDeCampos = ["30mm", "30mm", "30mm", "30mm"]
  infortmp.ListaAlineacionDeCampo = [Align.Center, Align.Center, Align.Center, align.center]
  infortmp.tituloInforme = "En pruebas Base de datos Leonel"
  infortmp.montajePagina()
  
  infortmp.Preview()
  
End


Con esto el programa crea el informe con sus etiquetas y relleno de datos, automaticamente (no es necesario ningún código más ni modificar graficamente los controles del reporte).  
      La clase "Informe" se encarga de ello      

 reportes_automaticos


Falta añadir:
-Control de errores, por ejemplo si el programador se equivoca al poner el nombre de un campo de la base de datos que de información sobre ello y no un error interno del código de "informe".
- Cálculo automático del anchos y sacar nombre de los campos de la base de datos. Es sencillo de hacerlo viendo el codigo de Shordi, pero queria sacar una version "alpha" lo antes posible, para que lo probaseis.

Espero vuestros comentarios....

Nota: 5/4/2014
Añadido mejora para agrupar resultados y que no salgan repetidos (vease: http://foro.gambas-es.org/viewtopic.php?f=1&t=3750&highlight=
 agrupando_resultados_consulta

Añado dos nuevas propiedades:
 
infortmp.Agrupa = "proveedor" 'indica el nombre del campo que se debe de comprobar
  infortmp.TextoAgrupa = "" 'pone el texto a sustituir (en este caso no escribiria nada)

Es importante que la sentencia SQL ordene los registros por el campo que queremos "agrupar":
infortmp.sentenciaSql = "Select * from suministros ORDER BY proveedor DESC" 'propiedad publica donde nos pasa la sentencia a ejecutar



Nota: 10/4/2014
He añadido el número de página en el informe que se genera (aparece arriba del titulo del informe):

 reportpreview_numero_de_pagina

ReportesAutomaticos-0.0.3.tar.gz
Descripción: Generador de Informes con gb.report, versión alpha
Nota: 5/4/2014
He añadido una pequeña mejora, solicitada por jj231089 , para agrupar resultados
Nota: 10/4/2014
Añadido el numero de página 

Descargar
Nombre del archivo: ReportesAutomaticos-0.0.3.tar.gz
Tamaño: 8.69 KB
Descargado: 104 veces
ReportesAutomaticos-0.0.3.tar.gz
Descripción: Generador de Informes con gb.report, versión alpha
Nota: 5/4/2014
He añadido una pequeña mejora, solicitada por jj231089 , para agrupar resultados
Nota: 10/4/2014
Añadido el numero de página 

Descargar
Nombre del archivo: ReportesAutomaticos-0.0.3.tar.gz
Tamaño: 8.69 KB
Descargado: 104 veces
ReportesAutomaticos-0.0.3.tar.gz
Descripción: Generador de Informes con gb.report, versión alpha
Nota: 5/4/2014
He añadido una pequeña mejora, solicitada por jj231089 , para agrupar resultados
Nota: 10/4/2014
Añadido el numero de página 

Descargar
Nombre del archivo: ReportesAutomaticos-0.0.3.tar.gz
Tamaño: 8.69 KB
Descargado: 104 veces

 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Jueves, 10 Abril 2014, 17:19; editado 2 veces 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
Hola jsbsan,

comuniqué este tu proyecto en el foro de Gambas-it:
http://www.gambas-it.org/smf/index.php?topic=3318.0
 



 
última edición por vuott el Miercoles, 19 Marzo 2014, 01:47; editado 1 vez 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
Qué velocidad. Yo, sin ordenador en casa, estoy con las manos atadas.
¿Vas a continuarlo o lo hago yo? Es por no trabajar en paralelo...

Saludos
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
shordi:

Citar:
¿Vas a continuarlo o lo hago yo? Es por no trabajar en paralelo...

Añadele tu los procediemientos de calculo del ancho y detectar los nombres de campos que genere la consulta, ya que te conoces mejor como lo haces del programa Siesta. Y tambien lo pruebas, a ver como va.

Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
Ok. En cuanto tenga aparato me pongo a ello.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
es demasido manual  gb.report
comparado con otros reportes como los rdlc
 



 
codificador - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
Señor jsbsan yo noto que mucho de los reportes son condicionados a un resul general, no habrá alguna manera de que se extraiga de una GridView en tiempo de consultas? parecidos a lo que se hace con los html?.
 



 
jousseph - Ver perfil del usuarioEnviar mensaje privadoVer la galería personal del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
Bueno... había olvidado este hilo, que cuando se publicó no tenía ordenador y luego, entre trabajo atrasado, instalaciones y configuraciones se me cayó del cerebro por alguna rejilla.

Es algo que tengo que ponerme a solucionar, pero ya.

Saludos.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
jousseph:

Citar:
no habrá alguna manera de que se extraiga de una GridView en tiempo de consultas?

Pues tendria que estudiarlo... lo que si se me ocurre es hacer lo contrario, te explico:

Hacer una funcion que le pases de parametro un gridview, y que cree una base de datos sqlite, donde le añades una tabla, con el nombre de los campos igual al nombre de las columnas, le añade los datos de las filas y devuelves el resultado de la consulta "Select * From Tabla"
Este result devuelto, es el "result general ", necesario  para crear el informe....

Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Generador Automático De Reportes Con Gb.report 
 
Citar:

Hacer una funcion que le pases de parametro un gridview, y que cree una base de datos sqlite, donde le añades una tabla, con el nombre de los campos igual al nombre de las columnas, le añade los datos de las filas y devuelves el resultado de la consulta "Select * From Tabla"
Este result devuelto, es el "result general ", necesario  para crear el informe....

Para eso es más sencillo crear una tabla temporal o una vista. Sin necesidad de crear bases de datos (y borrarlas después y demás)

Saludos
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Problema Con El Generador De Reportes. alexisuranga General 5 Sabado, 01 May 2010, 03:56 Ver último mensaje
chen_08
No hay nuevos mensajes Reportes Con Gb.report En Gambas3 Josec Aplicaciones/Fragmentos de Código 2 Martes, 29 Noviembre 2011, 14:19 Ver último mensaje
Josec
No hay nuevos mensajes Generador Automático De Excusas Técnicas jsbsan Aplicaciones/Fragmentos de Código 2 Domingo, 22 Junio 2014, 17:51 Ver último mensaje
shordi
No hay nuevos mensajes Reportes Condicionales Con Gb.report Dani26 Videotutoriales 0 Martes, 29 Julio 2014, 14:57 Ver último mensaje
Dani26
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron