Visual Basic - Datagrid sin data control

Life is soft - evento anual de software empresarial
 
Vista:

Datagrid sin data control

Publicado por Ayax (21 intervenciones) el 28/02/2007 17:30:50
Hola, necesito que me ayuden, tengo un sistema y quiero ver los datos en el datagrid1 pero sin el datacontrol tambien tengo text(codigo, descricion, ventas, precio, total) y comando (nuevo, grabar, actualizar, borrar, salir)

lo que quiero es conectar los datos al datagrdi sin el data control alguien me puede ayudar por favor este es mi codigo

generales

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset

private sub form load()

cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "d:\base.mdb"

cn.Open
rs.Open "select * from gastos", cn, adoenkeyset, adLockOptimistic
rs.MoveFirst
refrescar
datagrid1

que tengo que hacer para enlazar al datagrid y ver losa datos ayudaaaaaaaaaaaaaaaaa
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

RE:Datagrid sin data control

Publicado por Luis Prieto (166 intervenciones) el 28/02/2007 17:58:45
Hola Ayax!

Ahi esta la solución.
Espero te ayude.

Saludos!!!

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset

private sub form load()
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "d:\base.mdb"
cn.Open
rs.Open "select * from gastos", cn, adoenkeyset, adLockOptimistic
set datagrid1.datasource=rs
set text1.datasourse=rs
set text1.datafield=rs.field("campo")
.
:
set text_n.datasourse=rs
set text_n.datafield=rs.field("campo_n")
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:Datagrid sin data control

Publicado por Benjo (679 intervenciones) el 01/03/2007 04:28:11
Ayax, lo que sucede es que el Objeto Datagrid, exige en su propiedad DataSource la asignacion de un objeto o mejor dicho de una clase , por eso la sentencia es
Set DataGrid1.DataSource
y no
DataGrid1.DataSource

El sufijo SET indica que se asigna una clase

Un objeto Datagrid, debe ser utilizado con un objeto ADODC o bien crear una clase Databinding para enlazarla.

en este link hace algun tiempo puse un ejemplo que funciona pefectamente, el post de Ana por el tipo definido, se debio seguramente a la falta de referencia de algun argumento.

http://www.lawebdelprogramador.com/news/mostrar_new.php?id=93&texto=Visual+Basic&n1=320595&n2=1&n3=1&n4=0&n5=0&n6=0&n7=0&n8=0&n9=0&n0=0

Actualmente yo en mis aplicaciones por cuestiones de recursos, tengo todos mis Datagrid enlazados con clases Databinding, ya que con los ADODC necesitás una conexion para cada Objeto, en la clase, podes reutilizar la misma conexión sin inconveniente.

Cualquier aclaracion, estoy a tu disposicion.

Mucha suerte.

ACLARACION: Si intentás enlazar un Objeto ADODB.Recordset al DataSource de un DataGrid, sólo obtendrás un error 7004 "El conjunto de filas no admite marcadores"
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:Datagrid sin data control

Publicado por Frank (26 intervenciones) el 02/03/2007 19:52:10
Bueno, así como tienes tu código está bien. Solo completarías las últimas líneas de la siguiente forma:

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset

Private Sub Form_Load()

cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "d:\base.mdb"

cn.Open
rs.Open "select * from gastos", cn, adoenkeyset, adLockOptimistic
rs.MoveFirst

rs.Refresh

Set DataGrid1.DataSource = rs.DataSource
DataGrid1.Refresh

Así lo he utilizado siempre y me ha funcionado excelente.

Nota: el DataGrid1 no debe tener ninguna estructura porque genera un error. Para ello, sobre el DataGrid1 con el botón derecho del mouse le dices Borrar Estructura, para asegurarte que esté limpio.
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:Datagrid sin data control

Publicado por Benjo (679 intervenciones) el 06/03/2007 00:38:47
Frank, realmente probaste ese código.? Vos decis que te funciona?

El objeto ADODB.Recordset tiene una función Refresh?
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