
Iniciado por
Pantalla_Azul
Hola amigos.
Tengo la siguiente dificultad, al hacer una consulta a una db, esta no me devuelve todos los registros de la db.
tengo 99 registros y solo me muestra 51, si consulto por un tipo determinado me muestra lo correcto
les muestro lo que tengo...
Código:
Private Sub cargarListview()
Dim QueBuscar As String
Dim Can As Integer
Try
conn.Open()
Dim dt As New DataTable("Ingresos")
Dim rs As OleDb.OleDbDataAdapter
QueBuscar = "%" & txt_Search.Text & "%"
QueBuscar = Replace(QueBuscar, "*", "%")
QueBuscar = Replace(QueBuscar, "?", "_")
rs = New OleDb.OleDbDataAdapter(
"SELECT Id_ingreso,Codigo,Descripcion,Cantidad,PrecioDetalle,PrecioDocena,PrecioCiento" & _
" FROM Ingresos,Precios WHERE Ingresos.Codigo = Precios.CodigoP AND Ingresos.Id_ingreso = Precios.Id_ingresoP" & _
" AND Descripcion LIKE '" & QueBuscar & "' ORDER BY Descripcion", conn)
rs.Fill(dt)
Dim indx As Integer
ListView1.Items.Clear()
For indx = 0 To dt.Rows.Count - 1
Dim lst As New ListViewItem
lst.Text = dt.Rows(indx).Item("Id_Ingreso")
lst.SubItems.Add(dt.Rows(indx).Item("Codigo"))
lst.SubItems.Add(dt.Rows(indx).Item("Descripcion"))
lst.SubItems.Add(dt.Rows(indx).Item("Cantidad"))
lst.SubItems.Add(dt.Rows(indx).Item("PrecioDetalle"))
lst.SubItems.Add(dt.Rows(indx).Item("PrecioDocena"))
lst.SubItems.Add(dt.Rows(indx).Item("PrecioCiento"))
ListView1.Items.Add(lst)
Can = lst.ListView.Items.Count
lblsehan.Text = "Se han encontrado: " & Can & " registros relacionados a su búsqueda"
txt_Search.Text = ""
txt_Search.Select()
Next
rs.Dispose()
conn.Close()
Catch ex As Exception
MsgBox("No se puede conectar a la db")
End Try
End Sub
ok amigos
ya he solucionado mi problema...solo ordene el trabajo y separe en dos el tipo de búsqueda
Código:
Private Sub cargarListview()
Dim Can As Integer
Try
conn.Open()
lbl_conectado.Text = "Conección establecida"
Dim dt As New DataTable("Ingresos")
Dim rs As OleDb.OleDbDataAdapter
rs = New OleDb.OleDbDataAdapter(
"SELECT Id_ingreso,Codigo,Descripcion,Cantidad," & _
"Id_precio,Id_ingresoP,PrecioDetalle,PrecioDocena," & _
"PrecioCiento" & _
" FROM Ingresos,Precios WHERE Precios.Id_ingresoP = Ingresos.Id_ingreso ORDER BY Descripcion", conn)
rs.Fill(dt)
Dim indx As Integer
ListView1.Items.Clear()
For indx = 0 To dt.Rows.Count - 1
Dim lst As New ListViewItem
lst.Text = dt.Rows(indx).Item("Id_ingreso") & ""
lst.SubItems.Add(dt.Rows(indx).Item("Codigo") & "")
lst.SubItems.Add(dt.Rows(indx).Item("Descripcion") & "")
lst.SubItems.Add(dt.Rows(indx).Item("Cantidad") & "")
lst.SubItems.Add(dt.Rows(indx).Item("PrecioDetalle") & "")
lst.SubItems.Add(dt.Rows(indx).Item("PrecioDocena") & "")
lst.SubItems.Add(dt.Rows(indx).Item("PrecioCiento") & "")
ListView1.Items.Add(lst)
Can = lst.ListView.Items.Count
lblsehan.Text = "Se han encontrado: " & Can & " registros relacionados a su búsqueda"
txt_Search.Text = ""
txt_Search.Select()
Next
rs.Dispose()
conn.Close()
Catch ex As Exception
MsgBox("No se puede conectar a la db")
End Try
End Sub
Private Sub BuscarListview()
Dim QueBuscar As String
Dim Can As Integer
Try
conn.Open()
lbl_conectado.Text = "Conección a la base de datos establecida con éxito"
'Idcliente = 0
Dim dt As New DataTable("Ingresos")
Dim rs As OleDb.OleDbDataAdapter
QueBuscar = "%" & txt_Search.Text & "%"
QueBuscar = Replace(QueBuscar, "*", "%")
QueBuscar = Replace(QueBuscar, "?", "_")
If rb_Descripcion.Checked = True Then
rs = New OleDb.OleDbDataAdapter(
"SELECT Id_ingreso,Codigo,Descripcion,Cantidad," & _
"Id_precio,Id_ingresoP,PrecioDetalle,PrecioDocena,PrecioCiento" & _
" FROM Ingresos, Precios" & _
" WHERE Precios.Id_ingresoP = Ingresos.Id_ingreso AND Descripcion LIKE '" & QueBuscar & "' ORDER BY Descripcion", conn)
rs.Fill(dt)
Else
rs = New OleDb.OleDbDataAdapter(
"SELECT Id_ingreso,Fecha,Codigo,Descripcion,Cantidad," & _
"Id_precio,Id_ingresoP,PrecioDetalle,PrecioDocena,PrecioCiento" & _
" FROM Ingresos, Precios" & _
" WHERE Precios.Id_ingresoP = Ingresos.Id_ingreso AND Codigo LIKE '" & QueBuscar & "' ORDER BY Descripcion", conn)
rs.Fill(dt)
End If
Dim indx As Integer
ListView1.Items.Clear()
For indx = 0 To dt.Rows.Count - 1
Dim lst As New ListViewItem
lst.Text = dt.Rows(indx).Item("Id_ingreso") & ""
lst.SubItems.Add(dt.Rows(indx).Item("Codigo") & "")
lst.SubItems.Add(dt.Rows(indx).Item("Descripcion") & "")
lst.SubItems.Add(dt.Rows(indx).Item("Cantidad") & "")
lst.SubItems.Add(dt.Rows(indx).Item("PrecioDetalle") & "")
lst.SubItems.Add(dt.Rows(indx).Item("PrecioDocena") & "")
lst.SubItems.Add(dt.Rows(indx).Item("PrecioCiento") & "")
ListView1.Items.Add(lst)
Can = lst.ListView.Items.Count
lblsehan.Text = "Se han encontrado: " & Can & " registros relacionados a su búsqueda"
txt_Search.Text = ""
txt_Search.Select()
Next
rs.Dispose()
conn.Close()
Catch ex As Exception
MsgBox("No se puede conectar a la db")
End Try
End Sub
gracias