Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos


Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-10-2011
Parsec Parsec is offline
Miembro
 
Registrado: abr 2006
Posts: 136
Poder: 12
Parsec Va por buen camino
Número de registros en un Dbgrid

Buenas,

me he bloqueado......estoy buscando y no encuentro nada.
Necesito saber la cantidad de filas que tiene un Dbgrid sin tener que consultar ninguna tabla asociada. Solo la propiedad del Dbgrid que me diga si hay 10 o 100 registros.

Saludos
Responder Con Cita
  #2  
Antiguo 06-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 1.741
Poder: 13
oscarac Va por buen camino
un dbgrid no asociado a ninguna tabla?
pues no lo se
si el dbgrid esta asociado a una tabla (lo cual es su finalidad), podrias contar los registros de la tabla asociada

Código Delphi [-]
 
registros := tblLoquesea.reccount
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #3  
Antiguo 06-10-2011
Parsec Parsec is offline
Miembro
 
Registrado: abr 2006
Posts: 136
Poder: 12
Parsec Va por buen camino
Si que está asociado a una tabla, la cuestión es que hago la consulta desde una función del sistema y la llamo desde muchos sitios y no quiero crear ninguna variable global para pasarle el dato.
Imagino que de la misma forma que se pueden saber el número de columnas (Dbgrid.Columns.Count) se podrá saber el número de filas.

Saludos
Responder Con Cita
  #4  
Antiguo 06-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 9.868
Poder: 27
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Parsec.

Lamentablemente el DBGrid no es sino una representación visual del contenido de una tabla. Podrías hacer algo como:
Código Delphi [-]
function NroRegistros(ADBGrid: TDBGrid): Integer;
begin
  Result:= ADBGrid.DataSource.DataSet.RecordCount;
end;
Pero si te fijas bién, verás que en realidad, estas consultando el DataSet. Hay además otro problema, la propiedad RecordCount no funciona con todos los TDataSets.

Creo que lo mejor es hacerte una función usando una consulta SQL que devuelva el resultado. Si especificas con que motor de BD y componentes estás trabajando sería más fácil aproximar una respuesta.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 06-10-2011
Parsec Parsec is offline
Miembro
 
Registrado: abr 2006
Posts: 136
Poder: 12
Parsec Va por buen camino
Siendo así me puedo apañar.
De todas formas es un consuelo porque he estado buscando por el foro un buen rato sin ningún resultado y mi autoestima estaba por los suelos.

Gracias y un saludo
Responder Con Cita
  #6  
Antiguo 07-10-2011
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 709
Poder: 15
cloayza Va camino a la fama
Cita:
Empezado por ecfisa Ver Mensaje
Código Delphi [-]
function NroRegistros(ADBGrid: TDBGrid): Integer;
begin
  Result:= ADBGrid.DataSource.DataSet.RecordCount;
end;
Le agregaria lo siguiente:

Código Delphi [-]
function NroRegistros(ADBGrid: TDBGrid): Integer;
begin
       Result:=0;       
       If Not Assigned(ADBGrid.DataSource) then Exit; //Valida si el grid tiene asignado un TDatasource
       if Not Assigned(ADBGrid.DataSource.Dataset) then exit;  //Valida si el Datasource tiene asignado un Dataset
       If Not  ADBGrid.DataSource.DataSet.Active then Exit;  //Valida si el Dataset esta abierto

      Result:= ADBGrid.DataSource.DataSet.RecordCount;
end;
Siempre es bueno tomar algunas precauciones...

Saludos
Responder Con Cita
  #7  
Antiguo 07-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 9.868
Poder: 27
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por cloayza Ver Mensaje
Siempre es bueno tomar algunas precauciones...
Nunca está de más

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 10-04-2017
buca1678 buca1678 is offline
Registrado
 
Registrado: jun 2014
Posts: 3
Poder: 0
buca1678 Va por buen camino
Contar registros de un Dbgrid

mostrar en un label el numero de filas de la columna de un dbgid

sqlquery1.Close;
sqlquery1.SQL.Text := 'select * from accesorio where VERIFICADO IS NULL';
sqlquery1.Open;
sqlquery1.last;
sqlquery1.first;
label1.Caption := 'IntToStr(sqlquery1.RecordCount);
Responder Con Cita
  #9  
Antiguo 10-04-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 27.658
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Recuerda poner los tags al código fuente, ejemplo:



Gracias
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Contar El Numero De Registros Mostrados En Un DBGRID alexey1982 Tablas planas 2 13-06-2008 01:52:35
obtener numero de registros en un dbgrid hanna33 OOP 6 29-11-2006 00:51:39
Numero de registros en el dbgrid Besto Varios 4 05-06-2006 16:57:04
dbGrid como devuelve el numero de registros omarifr Conexión con bases de datos 3 15-07-2005 21:56:58


La franja horaria es GMT +2. Ahora son las 15:52:11.


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