Llenar DataGrid apartir de RecordSet.

27/04/2004 - 17:50 por Juan David Lara Restrepo | Informe spam
Buenos dias Grupo,

Debo llenar un DataGrid apartir de un RecordSet, he intentado de dos formas
y me continua saliendo error.

Forma 1.

Dim dtLstUser As New DataTable()
Dim rsLstUser As New ADODB.Recordset()
dtLstUser.Columns.Add("cdgo", Type.GetType("System.String"))
dtLstUser.Columns.Add("nmbre", Type.GetType("System.String"))
dtLstUser.Columns.Add("aplldos", Type.GetType("System.String"))
dtLstUser.Columns.Add("usrio", Type.GetType("System.String"))
dtLstUser.Columns.Add("clve", Type.GetType("System.String"))
dsLstUser.DataSetName = "dsLstUser"
dsLstUser.Tables.Add(dtLstUser)
rsLstUser = oUser.lstUsrios() 'Retorna RecordSet
'odaLstUser OleDbDataAdapter definido en la forma
odaLstUser.Fill(dtLstUser, rsLstUser)

La ultima line me informa de un error no controlado, pero no da mayor
explicación.

Forma 2.

Dim rsLstUser As New ADODB.Recordset()

rsLstUser = oUser.lstUsrios()
dgLstUser.DataSource = rsLstUser

La ultima linea me informa de un error el cual dice:
Excepción no controlada del tipo 'System.Exception' en
system.windows.forms.dll
Información adicional: El enlace de datos complejo acepta como origen de
datos IList o IListSource
¿Cual es la forma correcta de hacerlo? que estoy haciendo mal? que me flata?
De antemano muchas gracias,
ATT:
Juan Lara
 

Leer las respuestas

#1 domsha
10/05/2004 - 18:15 | Informe spam
Juan utiliza este codigo:

Dim rs As New ADODB.Recordset
Dim cn As New ADODB.Connection
spathtoDB = "ruta en la que se encuentra tu base de datos"
connectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & spathtoDB
Qry = "tu query aqui"
With cn
.CursorLocation = adUseClient
.ConnectionString = connectString
.Open
End With

rs.Open Qry, cn, adOpenDynamic, adLockOptimistic, adCmdText
Set DataGrid1.DataSource = rs
Set rs.ActiveConnection = Nothing 'disconnect

Espero que esto te ayude.
Saludos

Juan David Lara Restrepo wrote:

Buenos dias Grupo,

Debo llenar un DataGrid apartir de un RecordSet, he intentado de dos formas
y me continua saliendo error.

Forma 1.

Dim dtLstUser As New DataTable()
Dim rsLstUser As New ADODB.Recordset()
dtLstUser.Columns.Add("cdgo", Type.GetType("System.String"))
dtLstUser.Columns.Add("nmbre", Type.GetType("System.String"))
dtLstUser.Columns.Add("aplldos", Type.GetType("System.String"))
dtLstUser.Columns.Add("usrio", Type.GetType("System.String"))
dtLstUser.Columns.Add("clve", Type.GetType("System.String"))
dsLstUser.DataSetName = "dsLstUser"
dsLstUser.Tables.Add(dtLstUser)
rsLstUser = oUser.lstUsrios() 'Retorna RecordSet
'odaLstUser OleDbDataAdapter definido en la forma
odaLstUser.Fill(dtLstUser, rsLstUser)

La ultima line me informa de un error no controlado, pero no da mayor
explicación.

Forma 2.

Dim rsLstUser As New ADODB.Recordset()

rsLstUser = oUser.lstUsrios()
dgLstUser.DataSource = rsLstUser

La ultima linea me informa de un error el cual dice:
Excepción no controlada del tipo 'System.Exception' en
system.windows.forms.dll
Información adicional: El enlace de datos complejo acepta como origen de
datos IList o IListSource
¿Cual es la forma correcta de hacerlo? que estoy haciendo mal? que me flata?
De antemano muchas gracias,
ATT:
Juan Lara

Preguntas similares