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

cargar datos a un form desde una bd

Estas en el tema de cargar datos a un form desde una bd en el foro de .NET en Foros del Web. Hola!! Q tal..?? les qria preguntar como puedo hacer para cargar datos desde una bd a los controles de un form en vb 2005... tengo ...
  #1 (permalink)  
Antiguo 30/08/2010, 20:45
 
Fecha de Ingreso: noviembre-2009
Mensajes: 12
Antigüedad: 14 años, 5 meses
Puntos: 0
cargar datos a un form desde una bd

Hola!!
Q tal..?? les qria preguntar como puedo hacer para cargar datos desde una bd a los controles de un form en vb 2005...

tengo la bd hecha y el form y ademas un modulo q maneja todo lo referido a la bd... acceso.. insercion.. modificacion borrado... (abm)...

les muestro algo de codigo...

Esta es una subrutina q tengo en el modulo q se llama Acceso_Datos.vb

Sub recuperar_Datos(ByVal Nro_Doc As Integer, ByVal Apellido As String, ByVal Nombre As String, ByVal FechaNac As String, ByVal Id_Sexo As Integer, ByVal Id_Tipo_Doc As Integer, ByVal Calle As String, ByVal Nro_Calle As Integer, ByVal Actividad As Boolean, ByVal Casado As Boolean, ByVal Hijos As Boolean, ByVal Cantidad As Integer, ByVal Id_Carrera As Integer)

Dim comando As New OleDb.OleDbCommand
Dim consulta As String
Dim tabla As New Data.DataTable

consulta = "SELECT * FROM Alumno WHERE Nro_Doc= " & Nro_Doc

If estaConectado = False Then
conectar()
End If

comando.Connection = conexion
comando.CommandType = CommandType.Text
comando.CommandText = consulta

tabla.Load(comando.ExecuteReader())

Nro_Doc = tabla.Rows(0)("Nro_Doc")
Apellido = tabla.Rows(0)("Apellido")
Nombre = tabla.Rows(0)("Nombre")
FechaNac = tabla.Rows(0)("FechaNac")
Id_Sexo = tabla.Rows(0)("Id_Sexo")
Id_Tipo_Doc = tabla.Rows(0)("Id_Tipo_Doc")
Calle = tabla.Rows(0)("Calle")
Nro_Calle = tabla.Rows(0)("Nro_Calle")
Actividad = tabla.Rows(0)("Actividad")
Casado = tabla.Rows(0)("Casado")
Hijos = tabla.Rows(0)("Hijos")
Cantidad = tabla.Rows(0)("Cantidad")
Id_Carrera = tabla.Rows(0)("Id_Carrera")

End Sub


Hasta no tendRIA DRAMA...

En el form tengo una lista de alumnos.. Cdo hago doble click sobre uno me tendria q cargar los datos del mismo en los controles.. pero no me gui como hacerlo... por el hecho de tener varios tipos de datos...

Private Sub lst_Personas_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles lst_Personas.DoubleClick

Me.registro_nuevo = False

Acceso_Datos.recuperar_Datos(Me.txt_Documento.Text , Me.txt_Apellido.Text, Me.txt_Nombre.Text, Me.mtxt_FechaNac.Text, )

Por ejemplo... tengo dos radiobutton con el sexo ... como cargo o referencio desde la bd q es masc o fem (masc = 1 y fem=2)??

lo mismo con los combobox de carrera y tipodoc...

Pense en usar un par de funciones desde el lado de la bd... cm lo ven ustedes...??

Desde ya muchas gracias....
  #2 (permalink)  
Antiguo 01/09/2010, 10:05
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Respuesta: cargar datos a un form desde una bd

¿La rutina recuperar_datos() te funciona, se llena el datatable?
Par el filtro de los datos en el where del select solo usas un campo, para que pides tantos parámetros en la rutina recuperar_datos()?
Ah entiendo que quieres que se escriban en los textbox, pero para eso debes pasar como parámetro el objeto textbox no un string, asi:

Sub recuperar_Datos(ByVal Nro_Doc As Integer, txtApellido As TextBox, ... )


y dentro asignas

txtApellido.Text=tabla.Rows(0)("Apellido")

Pero eso no es necesario, dado que los textbox son visibles en todo el form.

Basta con hacer esto:

Sub recuperar_Datos(ByVal Nro_Doc As Integer)

y luego:

txt_Apellido.Text=tabla.Rows(0)("Apellido")
  #3 (permalink)  
Antiguo 01/09/2010, 10:52
 
Fecha de Ingreso: noviembre-2009
Mensajes: 12
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: cargar datos a un form desde una bd

Al final lo hizo una amiga asi como decis... y funciono perfecto... =)

Muchas gracias ppor tu ayuda... =)

Etiquetas: bd, formulario
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 23:48.