Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Recorrer la grilla sin mover el cursor (https://www.clubdelphi.com/foros/showthread.php?t=32079)

Gustavo Gowdak 25-05-2006 20:23:28

Recorrer la grilla sin mover el cursor
 
Hola amigos, estoy haciendo un proceso de maestro/detalle de creditos y tengo una grilla en donde muestro mis detalles de mis creditos, donde hay un campo Estado que indica si el credito esta cancelado o no, lo que yo quiero hacer en recorrer toda la grilla sin que se mueva el cursor de donde esta, para hacer un proceso de sumatoria, tambien quiero saber como puedo inabilitar las filas en donde los creditos han sido cancelados... desde ya gracias.

Caro 25-05-2006 22:42:48

Hola, puedes desactivar los controles que esten asociados a tu query o table (en tu caso el dbgrid) antes de comenzar a realizar el recorrido una terminado vuelves a activarlos

Código Delphi [-]
   query.EnableControls;-> deshabilita los controles

   query.DisableControls;-> habilita los controles

luisgutierrezb 25-05-2006 23:10:57

y que tiene de malo mover el cursor? quieres que al hacer la sumatoria se quede el cursor donde "empezo"?
si es asi, usa un Bookmark es algo asi como:
Código Delphi [-]
var
  Posicion: TBookmark;
Begin
  Posicion := Dataset.GetBookMark;
  // recorrido de la tabla
  // para sumatoria u otras cosas
  Dataset.GotoBookMark(Posicion);
end;

Paoti 25-05-2006 23:33:22

otra consulta
 
Hola, no especificas que base de datos usas.


Yo lo que haria seria agregar un TQuery, que apunte tambien a la tabla de detalles.


y en su SELECT, haria lo siguiente.


Código SQL [-]
SELECT SUM(CREDITOS) FROM TABLA_DETALLE WHERE ID_PADRE = :Param1

y vincularlos con el Maestro. y el valor devuelto ponerlo en una etiqueta, así no tienes que recorrer todos los registros (que si fueran alrededor de 2000 filas o más se verian menos estético al ahcer el recorrido ;) ).



De gustos a gustos.


Saludos a Todos


La franja horaria es GMT +2. Ahora son las 20:08:19.

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