Portal    Foro    Buscar    FAQ    Registrarse    Conectarse

Destruir Reporte

Destruir Reporte
Artículo
Responder citando    Descargar mensaje  
Mensaje Destruir Reporte 
 
Saludos foreros expertos en gambas, una vez más acudo en solicitud de ayuda, les cuento hace un tiempo atras, estaba teniendo problemas con la elaboración de reportes pero gracias a unos codigos que me facilito el amigo jousseph logre resolver, ahora en esta oportunidad estoy nuevamente atorado, la situacion es la siguiente, estoy imprimiendo unos reportes por rango de fecha el usuario selecciona la de inicio y fin y se busca en la DB los registros  que esten dentro del rango, el problema en si es que el reporte imprimir se imprime la 1ra vez y luego de eso no se actualiza es decir se imprime el mismo rango de fechas que la 1ra vez que se eligio y nunca lo cambia

pobre vaciar las variables cada vez y recargarlas antes de imprimir el reporte y aún asi.

la consulta sql esta bien ya que hago exactamente lo misma consulta para llenar un tableview y si me trae los registros correctos.

Ya que pienso es un error del Report quisiera una forma de vaciarlo o destruirlo para cargar nuevamente los datos. probe con RptListadoxFecha.clear pero no lo tomo.

Les coloco los codigos:

Boton donde llamo el reporte
  
 Dim rp As Report
      conec.fecha2 = ""
conec.fecha1 = ""
conec.SqlRpt = ""
 conec.fecha1 = Format(DateChooser5.Value, "yyyy-mm-dd")
conec.fecha2 = Format(DateChooser6.Value, "yyyy-mm-dd")

conec.SqlRpt = "SELECT * FROM scea_operacion WHERE Date(operacion_fecha)BETWEEN '" & conec.fecha1 & "' AND '" & conec.fecha2 & "'"

                 rp = New RptListadoxFecha
             RptListadoxFecha.Preview
             RptListadoxFecha.Refresh
    

Codigo del Reporte
Public Sub _new()

Dim RHBox As ReportHBox
Dim lblOperacion, lbltipo, lblsubtipo As Reportlabel


conec.conectar

conec.$Result = conec.cn.Exec(conec.SqlRpt)

ReportLabel4.text = "DESDE: " & conec.fecha1
ReportLabel6.text = "HASTA: " & conec.fecha2

 
For Each Conec.$Result
  RHBox = New ReportHBox(ReportVBox1)
RHBox.Height = "10mm"

lblOperacion = New ReportLabel(RHBox)

lblOperacion.Fixed = True
lblOperacion.Expand = True
lblOperacion.Text = "                  " & conec.$Result["operacion_tipo"]

lbltipo = New ReportLabel(RHBox)

lbltipo.Fixed = True
lbltipo.Expand = True

lbltipo.Text = " " & conec.$Result["operacion_subtipo"]

lblsubtipo = New ReportLabel(RHBox)

lblsubtipo.Fixed = True
lblsubtipo.Expand = True

lblsubtipo.Text = "       " & conec.$Result["operacion_fecha"]

Next
Message.Info(conec.SqlRpt)

conec.desconectar

  End

y Por ultimo codigo del modulo

'Variables para la conexion
Public cn As New Connection 'Declaración de variable cn como una nueva conexión
Public query As String


Public $Result As Result

'Variables para control de acceso
Public Nivel As String
Public IdUsuario As String

'Variables para reportes
Public SqlRpt As String
Public fecha1 As String
Public fecha2 As String

Public Sub conectar()

cn.Type = "mysql" 'Tipo de Conexión
cn.Host = "localhost" 'Host de la Conexión
cn.User = "root" 'Usuario
cn.Password = "123" 'contraseña
cn.Name = "SCEA" 'Nombre de la Base de Datos


 If cn.Opened = True Then
 Else
 cn.Open
End If

Desde antemano muchas gracias, por cualquier ayuda que me puedan brindar.Saludos



 
Aerobacterd - Ver perfil del usuario Enviar mensaje privado  
Aerobacterd [ Domingo, 05 Abril 2015, 19:44 ]
 


Destruir Reporte
Comentarios
Responder citando    Descargar mensaje  
Mensaje Re: Destruir Reporte 
 
El código que subes es incompleto y aunque hay un par de cosas que no son muy ortodoxas, a primera vista no revela el error.
Sube un proyecto pequeñito que duplique el error y te podremos ayudar. De paso notarás que haciendo ese pequeño proyecto es muy posible que el error te sea evidente y lo soluciones tú solo.   

Saludos



 
shordi - Ver perfil del usuario Enviar mensaje privado  
shordi [ Lunes, 06 Abril 2015, 07:18 ]
Responder citando    Descargar mensaje  
Mensaje Re: Destruir Reporte 
 
Saludos, gracias por responder, cuando consegui algo de tiempo para programar revise el codigo linea por linea y encontre mi error

estaba en la forma en la que llamaba al reporte

dim rp as report
            rp = New RptListadoxFecha
             RptListadoxFecha.Preview 'espeficicamente esta linea , ya que asi llamo al reporte ya creado cuando deberia llamarlo asi:

rp.preview ' que ya fue declarado como nuevo en la parte de arriba.

Saludos, ojala a alguien le sirva este detalle alguna vez



 
Aerobacterd - Ver perfil del usuario Enviar mensaje privado  
Aerobacterd [ Domingo, 12 Abril 2015, 18:46 ]
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
0.00 0 0 0
 
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