FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ver DataSet en un DBGrid
Hola
he intentado esto: dbgrid1.DataSource.DataSet:=ds; Donde ds es un dataset con varios registros. Y no funciona. ¿ Habría alguna forma de representar en un DBGrid el contenido del Dataset ? |
#2
|
|||
|
|||
¿Te da un error en tiempo de compilación o de ejecución?
Si es en ejecución, puede ser que tengas definidas columnas en el grid que no coinciden con los campos del nuevo dataSet. De todas maneras te aconsejo cambiar el DataSource en vez del DataSet, ya que así afectará sólo al dbgrid, y no al resto de los controles de acceso a datos que puedas tener asociados a dataSet.
__________________
Saludos. |
#3
|
|||
|
|||
El error lo da en tiempo de ejecución.
En el grid no tengo nada definido. Lo he colocado en el form, y nada más. En ejecución a través de una consulta de SQL obtengo en un DataSet unos registros, y mi idea era poder visualizarlos. Como algo opcional, por eso no lo pongo con su datasource y todo, sino que el mismo dataset que uso para procesar los registros, poder mostrarlos. |
#4
|
|||
|
|||
¿Te muestra algún error o simplemente no hace nada?
Puede ser que el dataset sea unidireccional (SqlQuery o alguno similar).
__________________
Saludos. |
#5
|
|||
|
|||
si, es unidireccional, viene de un ADOsql
Lo he resuelto con un StringGrid. Voy a poner el código por si a alguien le sirve: Código:
var DS: TDataSet; x,r: integer; s: string; begin s:='select * from planeta'; if fsol.Text<>'0' then s:=s+' WHERE idsol='+fsol.Text; dm.GetSql(s,ds); // Lanzamos la consulta. //Fijamos el número de columnas y filas. StringGrid1.ColCount:=ds.FieldCount; StringGrid1.RowCount:=ds.RecordCount+1; // ahora pongo los nombres de los campos como cabecera de la regilla. for x:=0 to ds.FieldCount-1 do StringGrid1.Cells[x,0]:=ds.Fields[x].FieldName; r:=1; ds.First; while not ds.Eof do // ahora le toca el turno a los datos. begin for x:=0 to ds.FieldCount-1 do StringGrid1.Cells[x,r]:=ds.Fields[x].AsString; r:=r+1; ds.Next; end; end; |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Copiar el contenido de un DataSet a otro DataSet | Javi2 | Varios | 82 | 22-11-2022 09:26:16 |
Grid a DataSet | robinsongm | Varios | 2 | 28-07-2006 14:53:00 |
readonly dataset | n0n3 | SQL | 13 | 27-04-2005 01:24:45 |
Filtrar un dataset | Sick boy | Conexión con bases de datos | 7 | 02-07-2004 18:08:58 |
dataset activo | javito | Oracle | 1 | 04-05-2004 10:23:34 |
|