Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-06-2005
liz_hilton liz_hilton is offline
Miembro
 
Registrado: mar 2005
Posts: 11
Poder: 0
liz_hilton Va por buen camino
Post DBGrid saber total de registros de lo que se ve

Hola

Ojala que tengan un poco de tiempo. Gracias.
Mi pregunta es: ¿Como puedo saber el total de registros que hay en un dbgrid, sin tener interaccion con la tabla? es decir, quiero saber cuantos registros tiene el dbgrid mientras esta en tiempo de ejecucion y mandar el valor de este total a un edit. He intentado con el fieldcount y con el recordcount, tambien con el selectedrows. Con algunos de estos me marca error al compilar y me dice que no existe esta propiedad. X favor agradecere su ayuda x q este asunto ya me tiene un tanto desesperada y no doy.
Gracias
Responder Con Cita
  #2  
Antiguo 02-06-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por liz_hilton
¿Como puedo saber el total de registros que hay en un dbgrid, sin tener interaccion con la tabla?
Pues es que esto no es posible. Un grid sólo tiene el número de filas que se ven en pantalla, cuyo contenido se va reemplazando conforme te desplazas pidiendo los datos al dataset asociado a ella. Así que tendrías que usar algo como

DBGrid1.DataSource.DataSet.RecordCount

y no con todas las bases de datos te servirá ya que muchas veces no es posible saber el número de registros hasta que no recorres todos.

// Saludos
Responder Con Cita
  #3  
Antiguo 10-06-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Cita:
Empezado por roman
DBGrid1.DataSource.DataSet.RecordCount

y no con todas las bases de datos te servirá ya que muchas veces no es posible saber el número de registros hasta que no recorres todos.

// Saludos
Así es, no siempre funciona pero lo que podrías hacer es lo siguiente:
Código:
  
DBGrid.Datasource.Dataset.Last;
DBGrid.Datasource.Dataset.First; 
X:=NumDBGrid1.DataSource.DataSet.RecordCount;
donde X es una variable tipo integer...
Responder Con Cita
  #4  
Antiguo 10-06-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Pero recordemos que la operación Last fuerza a traer todos los registros, lo cual puede ser muy costoso en tiempo y rendimiento si se trata de muchos registros. En tales casos es mejor lanzar directamente una sentencia

select count

a la base para determinar el número de registros que satisfacen cierto criterio.

// Saludos
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


La franja horaria es GMT +2. Ahora son las 22:49:22.


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