Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-09-2007
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
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 ?
__________________
Saludos Cordiales.
------------------

Responder Con Cita
  #2  
Antiguo 08-09-2007
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 20
basti Va por buen camino
¿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.
Responder Con Cita
  #3  
Antiguo 08-09-2007
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
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.
__________________
Saludos Cordiales.
------------------

Responder Con Cita
  #4  
Antiguo 08-09-2007
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 20
basti Va por buen camino
¿Te muestra algún error o simplemente no hace nada?

Puede ser que el dataset sea unidireccional (SqlQuery o alguno similar).
__________________
Saludos.
Responder Con Cita
  #5  
Antiguo 08-09-2007
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
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;
Funciona muy bien, y rápido.
__________________
Saludos Cordiales.
------------------

Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

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


La franja horaria es GMT +2. Ahora son las 18:55:21.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi