Visual Basic - Pasar Datos de un datagrid a un text box

Life is soft - evento anual de software empresarial
   
Vista:

Pasar Datos de un datagrid a un text box

Publicado por Patricio (47 intervenciones) el 17/05/2010 05:33:11
Hola a todos
Tengo 2 Form

Form1 "Devoluciòn"
Form2 "Busqueda"

El form1 tiene 3 text box
Text1 = Rut
Text2 = Nombre
Text3 = Apellido

El Form2 tiene un text (rut) ,un datagrid y un commandbutton

Bueno lo que quiero es que al seleccionar una fila del datagrid que se encuentra en el Form2 y posteriormente dar click a un commanbutton (form2) estos datos pasen a los text box del form1

Como configuro el commanbutton para que haga esto?????

Mi estructura en el form 2 es

Dim base As Connection
Dim WithEvents temp As Recordset
Dim consulta As String, cod As Integer

Private Sub DataGrid1_Click()
DataGrid1.MarqueeStyle = dbgHighlightRowRaiseCell
End Sub

Private Sub Form_Load()
Set base = New Connection
Set temp = New Recordset
base.Open "dsn=data"
temp.Open "Cargo", base, adOpenStatic, adLockReadOnly
End Sub

Private Sub Text1_Change()
temp.Close
Set DataGrid1.DataSource = Nothing
consulta = "select * from Cargo where Rut like '" & Text1 & "%' "
temp.Open consulta, base, adOpenStatic, adLockReadOnly
Set DataGrid1.DataSource = temp
End Sub
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

Fácil ...

Publicado por Yo (49 intervenciones) el 17/05/2010 16:13:22
Pues no es tanto como "configurar" el command button, sino programarlo.
Pero, bueno, términos aparte, lo que pretendes es fácil, solamente es asignarle a cada TextBox el contenido de los campos de tu recordset (siempre y cuando haya registros o te ocurrirá un error):

Form1.Text1.Text = temp!Campo1
Form1.Text2.Text = temp!Campo2
Form1.Text3.Text = temp!Campo3

Obvio que debes adecuar los nombres de los Texboxes y campos.
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:Fácil ...

Publicado por Patricio (47 intervenciones) el 18/05/2010 03:09:24
Gracias por la respuesta, funciono como lo solicite, ahora bien abusando de tus conocimeintos tengo lo siguiente
en mi aplicacion tengo lo siguiente
Un text
Un datagrid conectado a la tabla cargo

Al digitar un Rut en el text y si tengo 3 datos en mi base de datos con el mismo rut el datagrid me muestra las 3 lineas , sin embargo quisiera un filtro para que me muestre uno solo pues solo necesito que me muestre una solo linea por rut

Favor si me pueden ayudar
desde ya gracias

Dim base As Connection
Dim WithEvents temp As Recordset
Dim consulta As String, cod As Integer

Private Sub Form_Load()
Set base = New Connection
Set temp = New Recordset
base.Open "dsn=data"
temp.Open "Cargo", base, adOpenDynamic, adLockBatchOptimistic
End Sub

Private Sub Text1_Change()
temp.Close
Set DataGrid1.DataSource = Nothing
consulta = "select * from Cargo where Rut like '" & Text1 & "%' "
temp.Open consulta, base, adOpenStatic, adLockReadOnly
Set DataGrid1.DataSource = temp
End Sub
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

Es con "Limit"

Publicado por Yo (49 intervenciones) el 18/05/2010 16:14:42
Bien, en algunos motores de bases de datos para especificar el número máximo de renglones o registros que una consulta debe (o pueda) retornar se utiliza la cláusula "Limit" y el número de regtistros deseado. Para aplicarlo con tu ejemplo sería algo así como:
consulta = "select * from Cargo where Rut like '" & Text1 & "%' Limit 1"
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