Foros del Web » Programación para mayores de 30 ;) » .NET »

porque se repiten los datos en esta consulta

Estas en el tema de porque se repiten los datos en esta consulta en el foro de .NET en Foros del Web. buenos dias alguien me puede decir porque al ejecutar esta consulta se repiten muchas veces los nismos datos?? Private Sub consulta2_Load(ByVal sender As System.Object, ByVal ...
  #1 (permalink)  
Antiguo 17/11/2011, 07:59
 
Fecha de Ingreso: octubre-2011
Ubicación: COLOMBIA, Medellín
Mensajes: 42
Antigüedad: 12 años, 6 meses
Puntos: 0
porque se repiten los datos en esta consulta

buenos dias alguien me puede decir porque al ejecutar esta consulta se repiten muchas veces los nismos datos??


Private Sub consulta2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

txtctipo.Focus()
txtctipo.Clear()
txtcsubtipo.Clear()

With ListView1
.Items.Clear()
.Columns.Clear()
.View = View.Details
.GridLines = True
.Columns.Add("codigo tipo")
.Columns.Add("codigo subtipo")
.Columns.Add("referencia")
.Columns.Add("nombre")


End With
End Sub

Private Sub cmdsalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdsalir.Click
Me.Close()
End Sub
Private Sub txtctipo_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtctipo.KeyPress
Select Case e.KeyChar
Case Is = Chr(13)
If txtctipo.Text.Length = 0 Then
MessageBox.Show("codigo no valido")
Exit Sub

End If
txtcsubtipo.Focus()
Case "0" To "9", "", Chr(8)
txtctipo.ForeColor = Color.Navy
Case Else
txtctipo.ForeColor = Color.DarkViolet
e.Handled = True
End Select

End Sub
Private Sub txtcsubtipo_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtcsubtipo.KeyPress
Select Case e.KeyChar
Case Is = Chr(13)
If txtcsubtipo.Text.Length = 0 Then
MessageBox.Show("codigo no valido")
Exit Sub
End If
cmdbuscar.Focus()
Case "0" To "9", "", Chr(8)
txtcsubtipo.ForeColor = Color.Navy
Case Else
txtcsubtipo.ForeColor = Color.DarkViolet
e.Handled = True
End Select

End Sub

Private Sub cmdbuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdbuscar.Click

Dim xcantidad As Integer
ListView1.Items.Clear()

Dim item As ListViewItem
miconexion = New MySqlConnection("server=localhost;user=root;passwo rd=111;database=inventariop")

miconexion.Open()

micomando = New MySqlCommand("select count(*)from articulos,tproductos,subtprod where articulos.codt=" & txtctipo.Text & " and articulos.codsubtp =" & txtcsubtipo.Text & " and articulos.codt = tproductos.codt and articulos.codt = subtprod.codt;", miconexion)
xcantidad = micomando.ExecuteScalar

micomando = New MySqlCommand("select articulos.codt,articulos.codsubtp, articulos.nombre, articulos.refer, articulos.existencias, tproductos.codt, subtprod.codsubtp, subtprod.nomstp from articulos,tproductos,subtprod where articulos.codt=" & txtctipo.Text & " and articulos.codsubtp=" & txtcsubtipo.Text & ";", miconexion)
misdatos = micomando.ExecuteReader

If xcantidad > 0 Then
While misdatos.Read
item = New ListViewItem(misdatos("codt").ToString)
item.SubItems.Add(misdatos("codsubtp"))
item.SubItems.Add(misdatos("refer"))
item.SubItems.Add(misdatos("nombre"))
item.SubItems.Add(misdatos("existencias"))
ListView1.Items.Add(item)
End While
End If
If xcantidad = 0 Then
MessageBox.Show("No Hay codigo", "ERROR")
Exit Sub
End If
End Sub
End Class



muchas gracias
  #2 (permalink)  
Antiguo 17/11/2011, 10:21
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: porque se repiten los datos en esta consulta

Hola sachis77 sé mas clara al proponer tu problema, se repite los datos al hacer qué? y viendo el codigo probablemente sea en tu while al momento de darle al evento click de buscar. Procura hacerlo así :
Código vb:
Ver original
  1. While misdatos.Read
  2. item = New ListViewItem(misdatos.item(0))
  3. item.SubItems.Add(misdatos.item(1))
  4. item.SubItems.Add(misdatos.item(2))
  5. item.SubItems.Add(misdatos.item(3))
  6. item.SubItems.Add(misdatos.item(4))
  7. ListView1.Items.Add(item)
  8. End While
Tbm te puedes guiar de este link.
Nos cuentas. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 17/11/2011, 14:04
 
Fecha de Ingreso: octubre-2011
Ubicación: COLOMBIA, Medellín
Mensajes: 42
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: porque se repiten los datos en esta consulta

si lo coloco asi:
If xcantidad > 0 Then

While misdatos.Read
item = New ListViewItem(misdatos.Item("codt").ToString)
item.SubItems.Add(misdatos.Item("codsubtp"))
item.SubItems.Add(misdatos.Item("refer"))
item.SubItems.Add(misdatos.Item("nombre"))
item.SubItems.Add(misdatos.Item("existencias"))
ListView1.Items.Add(item)
End While
End If

tambien se siguen repitiendo por ejemplo una misma referencia se repite muchas veces.
  #4 (permalink)  
Antiguo 18/11/2011, 15:46
 
Fecha de Ingreso: febrero-2004
Mensajes: 11
Antigüedad: 20 años, 3 meses
Puntos: 0
Respuesta: porque se repiten los datos en esta consulta

Me parece que el error esta en tu FROM articulos,tproductos,subtprod

Usa LEFT JOINs.

Saludos
  #5 (permalink)  
Antiguo 18/11/2011, 15:53
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: porque se repiten los datos en esta consulta

Cita:
Iniciado por ar7uro Ver Mensaje
Me parece que el error esta en tu FROM articulos,tproductos,subtprod

Usa LEFT JOINs.

Saludos
Tienes razón ar7uro, Sachis77 has exactamente lo que te dice ar7uro, había pasado ese detalle, para ese tipo de consultas tienes que usar los JOINs, verifica la estructura de tus tablas para que puedas relacionarlas. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #6 (permalink)  
Antiguo 30/11/2011, 09:54
 
Fecha de Ingreso: octubre-2011
Ubicación: COLOMBIA, Medellín
Mensajes: 42
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: porque se repiten los datos en esta consulta

muchas gracias por su ayuda.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:53.