Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Suma de campo calculado (https://www.clubdelphi.com/foros/showthread.php?t=9484)

tgsistemas 24-04-2004 11:12:31

Suma de campo calculado
 
Hola a tod@s :

En una aplicación en D5 y SQL 7 tengo un query que devuelve dos campos (además de otros...), CDGOCLNTE y HORAS.
En el TQuery he creado un campo calculado PORCHORAS que es el resultado de realizar unas operaciones en el evento OnCalcFields, hasta aqui todo bien :) .

El problema es que necesito acumular el campo PORCHORAS (campo calculado) de todos los registros encontrados y porteriormente utilizar ese valor en un TEDit.

Existe alguna manera de automatizarlo?
Lo único que se me ocurre :confused: es recorrer todos los registros del query una vez calculado.

Gracias por la ayuda.
Saludos.

__cadetill 24-04-2004 11:22:27

Si usas una Query...

pregunta: no puedes poner esos cálculos en la sentencia SQL? Tan complejos son?

Si los puedes poner (los cálculos).... entonces podrás lanzar una consulta SQL para saber la suma total

select sum(cálculos)
from tabla


Sino, tendrás que recorrerte toda la tabla para saber la suma de todos los registros

tgsistemas 24-04-2004 11:35:48

Gracias cadetill por la respuesta :
Los calculos son funciones que tengo en la aplicación (DiasLaborables entre fechas y HorasContrato) que hacen referencia a otras tablas, no tengo muy claro como insertarlo en el query.
Debería crear algunos SP que realizaran esos cálculos y sería bastante costoso, no pensaba que fuera tan complicado sumar los campos calculados.

__cadetill 24-04-2004 13:39:51

A lo mejor digo una tontería (y espero que algún compañeros que sepa más del tema pueda correjirme), pero si unes tu Query a un Provider y éste a un TClientDataSet, en el TClientDataSet puedes hacer agregados que podría ser la suma de tu campo calculado

Ya digo, no lo he hecho nunca y quizás esté diciendo una burrada, pero es que me suena cantidad que se puede hacer :p

tgsistemas 27-04-2004 09:08:17

Gracias cadetill !!!
No conocía los Provider y los TDataSet así que me puse a buscar información sobre estos componentes y he conseguido hacerlo como me indicabas.
Gracias por tu ayuda.
Saludos.


La franja horaria es GMT +2. Ahora son las 10:52:40.

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