Visual Basic.NET - comprobar si existe un registro, antes de Filtrar

 
Vista:

comprobar si existe un registro, antes de Filtrar

Publicado por jack (1 intervención) el 20/09/2007 06:56:59
Hola amigos;

les Cuento que tengo un adaptador de Datos donde hago una consulta por parametro:

Me.ProveedoresTableAdapter.FillBy_codigo(HLNETDataSet.Proveedores, txtCodigo.Text)

en donde antes de hacer la consulta quiero verificar que exista el registro que pido por parametro. mi duda es que si no existe el registro que busco que se agregue (txtCodigo) y luego me permita llenar los otros campos(textbox) antes de aplicar un update.

así compuebo que exista el registro.

Dim dr As DataRow
dr = HLNETDataSet.Proveedores.Rows.Find(txtCodigo.Text)

If dr Is Nothing Then

'No se encontró la fila. Crear nueva fila
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

RE:comprobar si existe un registro, antes de Filtr

Publicado por Harold V. (411 intervenciones) el 20/09/2007 07:23:12
Hola: Esto te ayudara..........

Try
Dim foundRows() As DataRow
Dim expression As String = "codigo_CAPTURADOR=" & txt_buscar.Text
Dim sortOrder As String = "codigo_CAPTURADOR DESC"

foundRows = objConjuntoDatos.Tables(0).Select(expression, sortOrder)
Dim EncRow As Int32 = objConjuntoDatos.Tables(0).DefaultView.Find(foundRows(0)("CODIGO_CAPTURADOR"))

If EncRow >= 0 Then 'si encuentra
txt_nombre.Text = objConjuntoDatos.Tables(0).Rows(EncRow).Item("NOMBRE").ToString
txt_apellido.Text = objConjuntoDatos.Tables(0).Rows(EncRow).Item("APELLIDO").ToString
Else
MessageBox.Show("No se encontró ninguna capturador con la cedula " & txt_buscar.Text, "Busqueda", MessageBoxButtons.OK, MessageBoxIcon.Information)
txt_buscar.Text = ""
txt_buscar.Focus()
End If
Catch ex As OleDbException
MessageBox.Show(ex.Message)
End Try
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

RE:comprobar si existe un registro, antes de Filtr

Publicado por jack_hxc (1 intervención) el 20/09/2007 15:51:57
Gracias Harold V., hize todo como se indica pero me dice que " No se puede encontrar la columna [Mitextoingresado]

el "CODIGO_CAPTURADOR" se supone que es el nombre de la columna?

así lo escribí:

Try
Dim foundRows() As DataRow
Dim expression As String = "Codigo=" & txtCodigo.Text
Dim sortOrder As String = "Codigo DESC"

foundRows = HLNETDataSet.Tables("Proveedores").Select(expression, sortOrder)
Dim EncRow As String = HLNETDataSet.Tables("Proveedores").DefaultView.Find(foundRows(0)("codigo"))

If EncRow >= 0 Then 'si encuentra
txtCodigo.Text = HLNETDataSet.Tables("Proveedores").Rows(EncRow).Item("Codigo").ToString
txtNombre.Text = HLNETDataSet.Tables("Proveedores").Rows(EncRow).Item("Nombre").ToString
txtRut.Text = HLNETDataSet.Tables("Proveedores").Rows(EncRow).Item("Rut").ToString
txtDireccion.Text = HLNETDataSet.Tables("Proveedores").Rows(EncRow).Item("Dirección").ToString
txtTelefono.Text = HLNETDataSet.Tables("Proveedores").Rows(EncRow).Item("Telefono").ToString
txtFax.Text = HLNETDataSet.Tables("Proveedores").Rows(EncRow).Item("Fax").ToString
Else
MessageBox.Show("No se encontró " & txtCodigo.Text, "Busqueda", MessageBoxButtons.OK, MessageBoxIcon.Information)
txtCodigo.Text = ""
txtCodigo.Focus()
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try


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

RE:comprobar si existe un registro, antes de Filtr

Publicado por Harold V. (411 intervenciones) el 21/09/2007 02:33:50
Hola:

Intenta haciendolo asi.....

Quiza sea porque en el command que tiene mi select para llenar el dataset con mi consulta al final le coloque order by codigo_capturador asc.

No estaria demas intentar eso,
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