• Domingo 22 de Diciembre de 2024, 18:50

Autor Tema:  Dios Sera Que Alguien Puede Ayudar  (Leído 1436 veces)

comsuven

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Dios Sera Que Alguien Puede Ayudar
« en: Miércoles 20 de Septiembre de 2006, 00:20 »
0
SALUDOS, LO UNICO QUE PIDO DE VERDAS ES QUE ME ORIENTEN COMO ENCONTRAR UN REGISTRO EN UNA BASE DE DATOS SALEXPRESS CON VB 2005

POR EJEMPLO

QUE AL INGRESAR EN UN TEXTBOX EL NOMBRE DEL CAMPO X  QUE ESTA EN UN A TABLA X ME DIGA REGISTRO ENCONTRADO Y SI NO REGISTRO NO ENCONTRADO SOLO ESO PIDO Y DE VERDAD NO HE CONSEGUIDO RESPUESTAS

jodijo5

  • Miembro HIPER activo
  • ****
  • Mensajes: 518
  • Nacionalidad: pe
    • Ver Perfil
    • http://www.bluetecnologia.com
Re: Dios Sera Que Alguien Puede Ayudar
« Respuesta #1 en: Domingo 24 de Septiembre de 2006, 20:10 »
0
creo que entiendo mas o menos tu pregunta, quieres que busque en toda la base de datos un campo cualquiera, si tu base de datos esta en SQL server, existe una tabla del sistema que se llama "syscolumns" ahi se guardan los nombres de columnasd de las tablas, parametros de funciones, procedimientos almacenados, etc, en todo caso harias la sentencia así:

<!--sql--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>SQL </td></tr><tr><td id='CODE'><!--sql1-->create procedure buscar @mira systemname as [color=blue;font-weight]select[/color] * from syscolumns where name = @mira
<!--sql2--></td></tr></table><div class='postcolor'><!--sql3-->
=============================
Daniel Pomalaza Mendoza
visita el Dinosaurio Azul :-D
http://bluetecnologia.com

comsuven

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Re: Dios Sera Que Alguien Puede Ayudar
« Respuesta #2 en: Lunes 25 de Septiembre de 2006, 02:00 »
0
muchas gracias amigo , ya logre conseguir como realizarlo de otra manera pero tengo este pequeno problema  todo funciona bien al ingresar el codigo si existe el me rellena los campos con los datos


los dos problemas son>

1>  al pasar al campo de nombre su longitud solo muestra 10 caracteres pero esta configurado para un maximo de 50 que es lo que acepta la base de datos
cuando el cursor se situa en el campo nombre (recordamos que si existe muestra los datos para modificarlos o eliminarlos) me selecciona todo el campo y el cursor se va al final del texbox para ver los datos entonces tengo que regresar con las flechas de navegacion al principio del texbox para que aparezca el dato y poderlo  modificar ahora como hago para que cuando se situe en el campo de nombre por ejemplo el cursor quede al principio del texbox creo que la solucion es que no me seleccione todo el dato del campo cuando entra en foco pero como hago esto hay un amanera

2> no me deja editar la informacion trato de escribir en el campo de nombre y esta como bloqueado


este es el codigo
  Private Sub txtcodigozona_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtcodigozona.Validating
        If txtcodigozona.Text.Length = 0 Then
            e.Cancel = True
            Errorzona.SetError(txtcodigozona, "Ingrese un Código de registro. El campo no puede estar en blanco")
        Else
            Errorzona.SetError(txtcodigozona, Nothing)
            Me.BindingContext(dszonas, "zonas").Position = BuscarRegistro(Me.BindingContext(dszonas, "zonas").Position)
                   End If
    End Sub

Private Function BuscarRegistro(ByVal prmPos As Integer) As Integer
        'Código para buscar un registro
        'Recibe como parámetro la posición actual en el DataSet
        'para, en el caso de no encontrar el registro solicitado,
        'regresar la posición del registro antes de iniciar.
        'Lo que hace este procedimiento es
        'regresar la posición en la que se encuentra el registro
        'solicitado, en caso de no encontrarlo, regresa la posición
        'antes de iniciar la búsqueda
        Try
            Dim dvzonas As DataView = New DataView(dszonas.Tables(0), "", _
                    "codigozona", DataViewRowState.CurrentRows)
            'Declaramos varcodigocliente
            Dim varcodigozona As String = ""
            'Preguntamos la clave del cliente que se desea buscar
            varcodigozona = (txtcodigozona.Text) '' InputBox("Introduce la clave a buscar", "Buscar")
            If Not varcodigozona = "" Then
                'Regresamos el index del cliente encontrado
                Return dvzonas.Find(varcodigozona)
                Exit Function
            Else
                'Si no se especificó el cliente, regresamos la
                'posición (index) del cliente original(prmPos)
                MessageBox.Show("La búsqueda no se puede realizar", _
                "Información del sistema", MessageBoxButtons.OK, _
                MessageBoxIcon.Information)
                Return prmPos
                Exit Function
            End If
        Catch ex As Exception
            'En caso de error, suponiendo que no se encontró el cliente,
            'regresamos la posición original del cliente(prmPos)
            MessageBox.Show(ex.Message, "Error", _
            MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return prmPos
            Exit Function
        End Try
    End Function

    Private Sub zonas_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Inicializar()
    End Sub
    Private Sub Inicializar()
        Try
            With cnnzonas
                ''Verificamos el estado de la conoexión
                If .State = 1 Then 'si esta abierta
                    .Close()    'cerramos
                End If
                .Open() '' abrimos la conexion
            End With
            ''Cargamos el DataSet Con los datos de La tabla
            dazonas.Fill(dszonas, "zonas")
            ''Enlazamos los Objetos
            txtcodigozona.DataBindings.Add("Text", dszonas, "zonas.codigozona")
            txtnombrezona.DataBindings.Add("Text", dszonas, "zonas.nombrezona")
            Dtfechaaltazona.DataBindings.Add("Text", dszonas, "zonas.fechaaltazona")
            txtdetallezona.DataBindings.Add("Text", dszonas, "zonas.detallezona")
        Catch ex As Exception
            ''Esto ocurriría solo en el caso de que ocurra un error
            MessageBox.Show(ex.Message, "Info del Sistema", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try
    End Sub