Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Datagrid

Estas en el tema de Datagrid en el foro de Visual Basic clásico en Foros del Web. Hola.. Mi duda es la siguiente, estoy dando de alta a un cliente y me interesan los campos de fax, celular, teléfono casa, oficina, etc. ...
  #1 (permalink)  
Antiguo 17/11/2005, 19:16
 
Fecha de Ingreso: diciembre-2003
Ubicación: D.F.
Mensajes: 42
Antigüedad: 20 años, 4 meses
Puntos: 0
Datagrid

Hola..
Mi duda es la siguiente, estoy dando de alta a un cliente y me interesan los campos de fax, celular, teléfono casa, oficina, etc. en un prinicipio mi bd contaba con todos estos campos pero alguien me dijo que eso no era correcto pues no todos los clientes tienen fax, celular, casa, etc. y el diseño de bd. es incorrecto, entonces opte por los campos DescripciónTel y Teléfono. Ahora esto lo quiero realizar con un DAtagrid, pero no sé como se añade un registro nuevo en el datagrid en las propiedades del datagrid está enlazado la columna con el campo que le corresponde. Pero desconozco el código para el botón guardar el registro.. Cómo se hace el update?
El DAtagrid está enlazado con un Adodc y tengo activa la propiedad de AllowAddNew.
Me podrían ayudar
Grs.
  #2 (permalink)  
Antiguo 18/11/2005, 08:20
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
eso lo haces desde el control odbc no desde el datagrid el datagrid te refleja en tiempo real lo que haces con el contro odbc

por ejemplo si le das adodb.recordset.addnew te aparece una fila mas en el datagrid.
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 25/11/2005, 19:17
 
Fecha de Ingreso: diciembre-2003
Ubicación: D.F.
Mensajes: 42
Antigüedad: 20 años, 4 meses
Puntos: 0
Datagrid

Gracias por el tip.
Pero aún no he podido resolverlo.

Verás si en un form unicamente tengo un datagrid y quiero agregar registros directamente a este sin pasarlos antes por un Textbox.

Entiendo que el datagrid maneja declaraciones como AfterUpdate, etc. pero no sé a ciencia cierta como usarlas.
Lo que había hecho es en un modulo manejo la conexión a la Bd y el recordset
Public Sub conectatelefonos()
contel.Open "DSN=Guias"
Set rstelefono = New ADODB.Recordset
rstelefono.CursorType = adOpenKeyset
rstelefono.LockType = adLockOptimistic
rstelefono.Source = "Select *from telefonos"
rstelefono.ActiveConnection = contel
rstelefono.Open
End Sub

Y ya en el Form, abría la conexión y agregaba un nuevo Recordset pero no sé el código para guardar el registro
rstelefono.Fields("Ciudad") = DataGrid1.Columns("Ciudad")

Ojalá y me entiendan!
  #4 (permalink)  
Antiguo 25/11/2005, 22:32
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
O sea que no usas el ADODC, porque si lo usaras no necesitarias de ningun codigo, solo basta con vincular el control al dataGrid y con poner las propiedades AllowUpdate y AllowAddNew del dataGrid a True solucionas todo.
Bueno con codigo, primero tenes que insertar un nuevo registro en el RecordSet y despues utilizar el metodo Update de este, algo asi:
Código:
rsTelefono.AddNew
rsTelefono.Fields("campo1") = "valor 1"
rsTelefono.Fields("campo2") = "valor 2"
rsTelefono.Update
  #5 (permalink)  
Antiguo 28/11/2005, 13:55
 
Fecha de Ingreso: diciembre-2003
Ubicación: D.F.
Mensajes: 42
Antigüedad: 20 años, 4 meses
Puntos: 0
Mil Gracias
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 18:38.