Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   TClientDataSet + Campo Tipo Aggregate (https://www.clubdelphi.com/foros/showthread.php?t=79796)

mjjj 11-08-2012 00:36:07

TClientDataSet + Campo Tipo Aggregate
 
Estimados, tengo el siguiente problema, tengo una tabla en un clientdataset con los campos: id, cantidad, unitario y descuento (que se van almacenar en la tabla de firebird). Además agregue al clientdateset los campos de tipo float: subtotal y afecto, tal que estos ultimo sean calculados desde los anteriores como sigue:

clientdataset1subtotal = clientdataset1cantidad * clientdataset1unitario;
clientdataset1afecto = clientdataset1cantidad * clientdataset1unitario - clientdataset1descuento;

En codigo anterior lo inclui en el evento beforepost del clientdateset, y funciona sin problema.

Por otro lado, agregue 3 campos del tipo fkaggregate, tal que me entregue la sumatoria de todos los registros, en su propiedad expression quedo asi:

TOTAL_SUBTOTAL = sum(cantidad * unitario)
TOTAL_DESCUENTO = sum(descuento)
TOTAL_AFECTO = sum(cantidad * unitario) - sum(descuento)

Hasta aqui todo va bien, el problema surgue cuando deo agregar un parametro externo al clientdataset, es decir, el IVA. Con este debo obtener 2 nuevos valores.

var IVA: double;

IVA = TOTAL_AFECTO.asfloat * IVA
TOTAL = TOTAL_AFECTO.asfloat - TOTAL_AFECTO.asfloat * IVA

Intenté agregar este codigo, pero me arroja error al ejecutar que no puede acceder al campo TOTAL_AFECTO como un float.

Como puedo resolver esto?


La franja horaria es GMT +2. Ahora son las 04:07:43.

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