none
Mensaje si no se encuentra el registro Buscado RRS feed

  • Pregunta

  • Hola

    Si al momento de Ingresar un clave para buscar un producto esta no sé encuentra al momento de dar en el boton Buscar. Mandar un mensaje que diga "Registro no encontrado" Tengo el siguiente código:

    Private Sub tsbtn_search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsbtn_search.Click

            Me.PRODUCTOSTableAdapter.Fill(Me.VENCEDORADataSet.PRODUCTOS)
            PRODUCTOSBindingSource.Position = PRODUCTOSBindingSource.Find("CVE_PRO", tsbtn_write.Text)
            PRODUCTOSBindingSource.Position = PRODUCTOSBindingSource.Find("CVE_ALT", tsbtn_write.Text)

        End Sub

    Les agradecería su ayuda.
    miércoles, 7 de octubre de 2009 0:36

Respuestas

  • El método Fill del objeto TableAdapter, te devuelve precisamente el número de registros seleccionados.

            Dim n As Integer = Me.PRODUCTOSTableAdapter.Fill(Me.VENCEDORADataSet.PRODUCTOS)
    
            If n = 0 Then
                MessageBox.Show("Registro no encontrado.")
            End If
    



    Enrique Martínez [MS MVP - VB]
    miércoles, 7 de octubre de 2009 13:12
    Moderador

Todas las respuestas

  • hola

    podrias preguntar si hay registros cargados en el dataset

    por ejemplo

    Private Sub tsbtn_search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsbtn_search.Click

            Me.PRODUCTOSTableAdapter.Fill(Me.VENCEDORADataSet.PRODUCTOS)

            IF VENCEDORADataSet.PRODUCTOS.Rows.Count > 0 Then
               PRODUCTOSBindingSource.Position = PRODUCTOSBindingSource.Find("CVE_PRO", tsbtn_write.Text)
               PRODUCTOSBindingSource.Position = PRODUCTOSBindingSource.Find("CVE_ALT", tsbtn_write.Text)
      else
              MessageBox.Show("Registro no encontrado")
            End If


    End Sub


    saludos

    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Propuesto como respuesta PauloCastro jueves, 8 de octubre de 2009 0:45
    miércoles, 7 de octubre de 2009 1:56
  • El método Fill del objeto TableAdapter, te devuelve precisamente el número de registros seleccionados.

            Dim n As Integer = Me.PRODUCTOSTableAdapter.Fill(Me.VENCEDORADataSet.PRODUCTOS)
    
            If n = 0 Then
                MessageBox.Show("Registro no encontrado.")
            End If
    



    Enrique Martínez [MS MVP - VB]
    miércoles, 7 de octubre de 2009 13:12
    Moderador
  • Hola

    Este mensaje me lo manda si no hay datos cargados en el DataSet????

    No lo que en realidad quiero es que si yo ingreso alguna palabra que no este en mi tabla donde busco me mande que "No hay resultados de la Busqueda" Y así con cualquier otra palabra que no este .

    Perdón si no me explique muy bien.

    Tenga un buen dia.
    miércoles, 7 de octubre de 2009 23:42
  • hola

    En realidad las propuestas tanto de Enrique, como mia serian ideanticas para validar si hay o no retorno de informacion despues de ejecutar la consulta.

    lo unico que quedaria es que realices la implementacion con tus filtros de busqueda, pero la validacion es identica, optes por preguntar po el count de las Rows, como por el valor devuelto del Fill()

    O sea reemplza esta linea: Me.PRODUCTOSTableAdapter.Fill(Me.VENCEDORADataSet.PRODUCTOS)
    por la correcta que te permite filtrar y eso es todo.


    o la pregunta en realidad pasa por querer saber como implementar el filtro ?


    saludos

    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 8 de octubre de 2009 1:05
  • Hola

    Sí explicación para la implementación del filtro en el boton de buscar????


    Gracias!!!
    jueves, 8 de octubre de 2009 14:55
  • hola

    no se si te habia pasado este link
    Building a DAL using Strongly Typed TableAdapters and DataTables in VS 2005 and ASP.NET 2.0

    en algun aportunidad.
    Sino lo hice te recomiendo le des una mirada, a mi entender es excelente por el nivel de detalle en la explicacion.

    Mas puntualmente en tu caso verifica la seccion:
    Tutorial 4: Adding Parameterized Methods within Table Adapters

    como veras crea en el TablaDaapter un metodo custom, al cual le define, un parametro, en este caso sera tu filtro, define la query y ademas lo configura para que devuelve datos

    En este caso cuando lo usa lo hace en la linea
    GridView1.DataSource = suppliersAdapter.GetSuppliersByCountry(CountryTxt.Text)

    o sea lo asigna directo a la grilla, pero tu por ahi necesites asignarlo a un DataSet o DataTable, para preguntar si el Rows.Count es mayor a cero

    creo que si analizas el link tienes la respuesta, cualquier otro duda como simpre estamos aqui.
    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 8 de octubre de 2009 15:14