Mostrar datos de una consulta en un DataGrid

31/01/2004 - 21:24 por Joshua | Informe spam
Que tal, esoy desarrollando una pequeña aplicación usando
ADO.NET con objetos conectados y Proveedor Microsoft
OLEDB para Access,pero no sé como mostrar datos resultado
de una consulta en un DataGrid.

StrComando= "Select * From ..."
Comando= New OleDbCommand (StrComando,Conexion)

Como meto solo el resultado de la selección en el
datagrid?? ya que se que se puede hacer pero solo lo he
visto si la sentencia sql incluye un select * from tabla
sin sentencia where ni condiciones. Espero me puedan
ayudar. Gracias

Preguntas similare

Leer las respuestas

#1 Santiago
31/01/2004 - 23:21 | Informe spam
Hola tu aplicacion es windows o Web

Saludos Santiago

Mostrar la cita
#2 Anonimo
01/02/2004 - 00:15 | Informe spam
QUE TAL, MI APLICACION ES WINDOWSEL PROBLEMA TAMBIEN
ES QUE YA LOGRE PONER LOS DATOS DE LA OCNSULTA EN EL
DATAGRID, PERO NO PUEDO UTILIZAR EN LA SENTENCIA SQL,
VALORES OBTENIDOS EN TIEMPO DE EJECUCION, POR EJEMPLO
SELECT *
FROM TABLA
WHERE VARIABLE = VALOR

EN VARIABLE ME MARCA ERROR, SI LE PONGO UN VALOR FIJO SI
LO HACE MAS NO POR VALOR DE LA VARIABLE. OJALA ME AYUDES.
GRACIAS
Mostrar la cita
usando
Mostrar la cita
resultado
Mostrar la cita
#3 Santiago
02/02/2004 - 16:04 | Informe spam
Bueno, te voy a pasar una funcion que yo uso para cargar
dataGrid, vos la adecuas a tu uso

previamente tienes que dimensionar el DataSet

Function fun_carga_grilla_Cirugia(ByVal oo As Object, _
ByRef carteles() As String, ByVal nombre_grilla As
String, ByVal condicion As String) As Int16

On Error GoTo errorhand

With oo

Dim registro, tipo_tabla As Long
Dim tipo, tabla, presuntivo As String
Dim max As Short
Dim myDataTable As DataTable = New DataTable
(nombre_grilla)
Dim myDataColumn As DataColumn
Dim myDataRow As DataRow

Dim nom_fila As String
Dim nom_campo As String

Dim cantidad As Short

Dim TableStyle As New DataGridTableStyle
TableStyle = New DataGridTableStyle

max = UBound(carteles, 1)

For i = 1 To max
myDataColumn = New DataColumn
myDataColumn.DataType = System.Type.GetType
("System.String")
myDataColumn.ColumnName = carteles(i)
myDataColumn.Caption = "Letrero " +
carteles(i)
myDataColumn.ReadOnly = True
myDataColumn.Unique = False

myDataTable.Columns.Add(myDataColumn)
Next

myDataSet = New DataSet
myDataSet.Tables.Add(myDataTable)

cmd.CommandText = "select * from Cirugia" & _
condicion

t_comun = cmd.Execute

If t_comun.BOF = False And t_comun.EOF = False
Then

t_comun.MoveFirst()

Do Until t_comun.EOF

myDataRow = myDataTable.NewRow()

nom_fila = carteles(1)
myDataRow(nom_fila) = fun_fecha_dma_bar
(t_comun.Fields("fecha").Value)
nom_fila = carteles(2)
myDataRow(nom_fila) = fun_leo_hora
(t_comun.Fields("hora").Value)

registro = t_comun.Fields
("id_cirugia").Value
nom_campo = fun_nombre("TMED_Cirugia",
registro, 0, 1, 1)
nom_fila = carteles(3)
myDataRow(nom_fila) = nom_campo

registro = t_comun.Fields
("id_lugar_cirugia").Value
nom_campo = fun_nombre
("TMED_Lugar_Cirugia", registro, 0, 1, 1)
nom_fila = carteles(4)
myDataRow(nom_fila) = nom_campo

nom_fila = carteles(5)
myDataRow(nom_fila) = t_comun.Fields
("Observaciones").Value

nom_fila = carteles(6)
myDataRow(nom_fila) = t_comun.Fields
("archivo").Value

nom_fila = carteles(7)
myDataRow(nom_fila) = t_comun.Fields
("id_tabla").Value

myDataTable.Rows.Add(myDataRow)

cantidad = cantidad + 1

t_comun.MoveNext()

Loop

End If

.SetDataBinding(myDataSet, nombre_grilla)

TableStyle.MappingName = nombre_grilla
.TableStyles.Clear()
.TableStyles.Add(TableStyle)
.DataSource = myDataSet.Tables(nombre_grilla)

.TableStyles(nombre_grilla).DataGrid.ReadOnly
= True

.TableStyles(nombre_grilla).BackColor =
System.Drawing.Color.SeaShell

.TableStyles(nombre_grilla).GridLineColor =
System.Drawing.Color.Wheat

.TableStyles(nombre_grilla).HeaderBackColor =
System.Drawing.Color.CadetBlue

If cantidad > 0 Then
i = fun_AutoSizeTabla(oo, nombre_grilla,
10)
End If

End With

Exit Function

errorhand:

MsgBox("Se ha producido un error al cargar el
Cirugia error:" + Err.Description,
MsgBoxStyle.OKCancel, "Error")

End Function

''''
carteles() es una variable donde vienen los Nombres de las
columnas, tambien te envio un ejemplo de esta rutina


oo en este caso es la direccion de la grilla dentro de un
form

Condicion, aca viene la condicion de la Busqueda, por
Ejemplo " where id = " & Variable_id o
" where nombre = '" & variable_nombre & "'"

El Uso de un data Table a mi me resulta muy util,aunque
requiere un poco mas de trabajo

La Funcion fun_AutoSizeTabla le da el ancho a la Columna
de acuerdo al contenido, esta no te la envio, la puedes
descartar.

Saludos Santiago

Function fun_carga_Cirugia(ByVal oo As Object, ByVal
grilla As String, ByVal condicion As String) As Short

ReDim i_carteles_grilla(7)

i_carteles_grilla(1) = "Fecha"
i_carteles_grilla(2) = "Hora"
i_carteles_grilla(3) = "Cirugia"
i_carteles_grilla(4) = "Lugar"
i_carteles_grilla(5) = "Observaciones"
i_carteles_grilla(6) = "Documento"
i_carteles_grilla(7) = "Registro"

i = fun_carga_grilla_Cirugia(oo,
i_carteles_grilla, grilla, condicion)



End Function
Mostrar la cita
#4 Anonimo
02/02/2004 - 20:44 | Informe spam
SI CLARO SANTIAGO MUCHAS GRACIAS.
Mostrar la cita
System.Type.GetType
Mostrar la cita
False
Mostrar la cita
fun_fecha_dma_bar
Mostrar la cita
("TMED_Cirugia",
Mostrar la cita
(nombre_grilla).DataGrid.ReadOnly
Mostrar la cita
=
Mostrar la cita
las
Mostrar la cita
un
Mostrar la cita
TAMBIEN
Mostrar la cita
SI
Mostrar la cita
AYUDES.
Mostrar la cita
he
Mostrar la cita
tabla
Mostrar la cita
Ads by Google
Search Busqueda sugerida