como enlazo un flexgrid a un recordset de ADO

Ana
31 de Marzo del 2004
me gustaria saber como puedo mostrar en un flexgrid los datos de recogo con una consulta en un recordset ADO.
saludos y gracias

Andres Guerrero
31 de Marzo del 2004
Espero te guie este codigo

Saludos
*****************************


Dim Cadena As String
Dim rsPro As New ADODB.Recordset
Dim suma As Single
Dim i As Integer

Cadena = "Select ProductId,ProductName,CompanyName,UnitPrice,UnitsinStock,UnitPrice * UnitsinStock as SubTotal "
Cadena = Cadena & "from Products p, Suppliers s"
Cadena = Cadena & " where p.supplierid = s.supplierid and CategoryID = " & cod_Cat
rsPro.Open Cadena, conexion

'configurar las colummnas
'flex grid cols = al numero de columnas
'grid.ColWidth(I)indica el ancho de la columna
MSFProducto.Cols = 6
'MSFProducto.Cols = rsPro.Fields.Count devuelve el numero de columnas del select

MSFProducto.ColWidth(0) = 1000
MSFProducto.ColWidth(1) = 900
MSFProducto.ColWidth(2) = 950
MSFProducto.ColWidth(3) = 900
MSFProducto.ColWidth(4) = 900

'Coloca los titulos de la columna
MSFProducto.TextMatrix(0, 0) = "Codigo"
MSFProducto.TextMatrix(0, 1) = "Nombre"
MSFProducto.TextMatrix(0, 2) = "Proveedor"
MSFProducto.TextMatrix(0, 3) = "precio"
MSFProducto.TextMatrix(0, 4) = "Stock"
'MSFProducto.TextMatrix(0, 4) = rsPro.fields.name da el nombre del select
MSFProducto.TextMatrix(0, 5) = "Sub-Total"
suma = 0
i = 1
While Not rsPro.EOF
i = i + 1
MSFProducto.Rows = i
MSFProducto.TextMatrix(i - 1, 0) = rsPro(0)
MSFProducto.TextMatrix(i - 1, 1) = rsPro(1)
MSFProducto.TextMatrix(i - 1, 2) = rsPro(2)
MSFProducto.TextMatrix(i - 1, 3) = rsPro(3)
MSFProducto.TextMatrix(i - 1, 4) = rsPro(4)
MSFProducto.TextMatrix(i - 1, 5) = rsPro(5)
Wend