Visual Basic.NET - cargar nuevamente un registro

 
Vista:

cargar nuevamente un registro

Publicado por tinmaker (4 intervenciones) el 17/02/2012 12:37:20
Buenas otra vez, tengo un problema.

Tengo dos botones, uno para cargar registros de una tabla "articulo" cuyo campo seccion = 1 y otro botón para cargar registros cuyo campo seccion = 2.

Os enseño mi código:

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
33
34
35
36
37
38
39
40
41
42
43
Imports System.Data
Imports System.Data.SqlClient
 
Public Class FrmArticulo
 
    Private SqlAdaptadorDatos As New SqlDataAdapter("SELECT * FROM articulo ", SqlConexion)
 
    Private SqlComandoSelect As New SqlCommand
 
     Private Sub FrmArticulo_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 
        SqlAdaptadorDatos.SelectCommand = SqlComandoSelect
        SqlComandoSelect.Connection = SqlConexion
 
    End Sub
 
     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As  System.EventArgs) Handles Button1.Click
 
        MuestraBusqueda("WHERE  seccion = '1'")
 
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
 
        MuestraBusqueda("WHERE seccion = '2'")
 
    End Sub
 
    Public Sub MuestraBusqueda(ByVal pWhere As String)
 
        SqlComandoSelect.CommandText = "SELECT * FROM articulo " & pWhere & " "
 
        SqlConexion.Open()
 
        DataSet001.EnforceConstraints = False
        SqlAdaptadorDatos.Fill(DataSet001, "articulo")
 
        SqlConexion.Close()
 
    End Sub
 
 
end Class



La cuestión es que cuando pulso por ejemplo en el boton 1 me carga los registros correctamente, pero a continuación quiero pulsar el el boton 2 para que me cargue los registros de seccion 2 y no me hace nada.

Es decir, que el primero que pulse (botón 1 o botón 2) me funciona y me carga, pero a continuación si pulso el otro no hace nada.

Supongo que me falta algo para reiniciar, limpiar o resetear datos, pero no se que código escribir para que me funcione nuevamente la carga de datos.

Espero haberme explicado correctamente, muchas gracias.
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

cargar nuevamente un registro

Publicado por Damian Garcia (824 intervenciones) el 17/02/2012 13:46:14
Tu problema esta en las declaraciones, la primera vez te hace todo bien porque entra al load de tu formulario articulo, pero ahora cuando ya seleccionas el otro botón, simplemente entra a este procedimiento, obviando todo las declaraciones de tu load.
O sea deberías declarar lo que tienes en tu load dentro del procedimiento MuestraBusqueda() y al comienzo.
Prueba haciendo un break point y verás como se va produciendo cada línea.
Saludos
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

cargar nuevamente un registro

Publicado por tinmaker (4 intervenciones) el 20/02/2012 12:59:05
He añadido al ArticuloBindingSource (BindingSource de la tabla articulo) los métodos MoveFirst, MovePrevious,MoveNext y MoveLast.


Como resultado, no es que no me actualize la lista, sino que me añade. Primero si pulso el botón 1 me carga los valores de seccion 1 y a continuación si pulso en boton 2 me AÑADE los registros cuya sección es la 2.. Me dí cuenta pulsando los botones First y LAst.

¿Cómo puedo "limpiar" esa lista?

He probado poniendo:

Me. ArticuloBindingSource.Clear()


Pero me da fallo cunado llega a esa línea de código

¿Qué puedo hacer?
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

cargar nuevamente un registro

Publicado por Damian (824 intervenciones) el 24/02/2012 14:24:08
Yo en mi caso tengo cargados los datos en una lista y para limpiar, cuando se actualiza o elimina un registro, y después volver a cargar hago:
1
2
3
4
'Limpio la lista
listCli.Items.Clear()
'Vuelvo a llamar al procedimiento para actualizar la lista                   
CargarLista()

Espero te sirva. La idea es limpiar la lista e inmediato llamar al procedimiento que te cargue los nuevos datos actualizados de la BD.
Saludos
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