Visual Basic - configurar MsFlexGrid con CommandButton

Life is soft - evento anual de software empresarial
   
Vista:
Imágen de perfil de Juan

configurar MsFlexGrid con CommandButton

Publicado por Juan tecpc10@hotmail.com (1 intervención) el 30/11/2014 04:19:23
Buenas gente del foro.. me estoy iniciando en esto de VB y logre armar un pequeño programa de gestion para el comercio de un vecino(logre es una manera de decirlo XD. porque estoy atorado con la grilla de datos) y me encontre con un dilema.

tengo una base de datos en acces 2000 llamada database con la tabla "tarjetas" en las cuales tengo 3 campos: 1º Factura(autonumerica), 2º Monto(numerico) y 3º Fecha(fecha/hora).
aparte en mi formulario tengo 2 dtpicker (dtpFechaInicio y dtpfechafin) un MsFlexGrid con 2 cols, un text(txtTotal) y un CommandButton llamado "Ver", ah!! y me olvidaba un ADOtarjetas(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Factura\BD\database.mdb;Persist Security Info=False)

el tema es el siguiente, cuando hago click en "ver" me muestra solo la primer fila de mi BD. aqui les adjunto el codigo por si alguno tiene un tiempillo y me dice en que le estoy fallando.

de antemano, me ayuden o no ya les agradezco aunque sea por haber leido lo que puse.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Private Sub btnVer_Click()
   If dtpFechaInicio.Value > Date Or dtpfechafin.Value > Date Then
  MsgBox "Las Fechas de los Rangos no pueden ser mayores a la fecha actual", vbInformation, "Error"
 Else
  If dtpFechaInicio.Value <= dtpfechafin.Value Then
   grilla.Clear
   grilla.ColWidth(0) = 1000
   grilla.ColWidth(1) = 2500
   grilla.TextMatrix(0, 0) = "Nº Factura"
   grilla.TextMatrix(0, 1) = "Precio"
    Adotarjetas.Refresh
   Adotarjetas.Recordset.Filter = "fecha >= #" & dtpFechaInicio.Value & "# and fecha <= #" & dtpfechafin.Value & "#"
   grilla.Rows = Adotarjetas.Recordset.RecordCount + 1
   Do While Adotarjetas.Recordset.EOF And Adotarjetas.Recordset.BOF
     Adotarjetas.Recordset.Filter = "Factura=" & Adotarjetas.Recordset!Factura
     tot = 0 + Adotarjetas.Recordset!monto
     Adotarjetas.Recordset.MoveNext
   Loop
     grilla.TextMatrix(f, 0) = Adotarjetas.Recordset!Factura
     grilla.TextMatrix(f, 1) = Adotarjetas.Recordset!monto
 
     f = f + 1
     txtTotal.Text = tot
     Adotarjetas.Refresh
     Adotarjetas.Recordset.MoveNext
 
    Else
    MsgBox "No hay Datos para mostrar", vbInformation, "Error"
 
   End If
   End If
 End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo

configurar MsFlexGrid con CommandButton

Publicado por Andres Leonardo (698 intervenciones) el 10/12/2014 19:16:37
Mestro intenta eso
f= 0 ' Entiendo que este es tu contador de filas.
Do While Adotarjetas.Recordset.EOF And Adotarjetas.Recordset.BOF
Adotarjetas.Recordset.Filter = "Factura=" & Adotarjetas.Recordset!Factura
tot = 0 + Adotarjetas.Recordset!monto
Adotarjetas.Recordset.MoveNext
'estas tres lineas dentro del Do while
grilla.TextMatrix(f, 0) = Adotarjetas.Recordset!Factura
grilla.TextMatrix(f, 1) = Adotarjetas.Recordset!monto

f = f + 1
Loop
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar