PDA

Ver la Versión Completa : otra pregunta mas


fabian20s
29-03-2005, 04:34:47
disculpen tantas preguntas es que quiero aprender :) el caso es este
en una tabla1 tengo un campo calculado el cual suma de la tabla2 todos los datos del campo "sub_total" el caso es que cuando cambio o actualizo los datos de la tabla2 no se actualiza el campo calculado
el codigo que utilizo en el evento oncalculated es el siguiente

procedure Tfrm_Ventas.Table3CalcFields(DataSet: TDataSet);
begin
table4.Active := false;
table4.active := true;
while not Table4.Eof do
begin
table3precio_nominal.value := table3precio_nominal.value + Table4sub_total.value;
Table4.Next;
end;
table3total.asfloat := table3precio_nominal.Asfloat + table3precio_nominal.Asfloat
end;

Lepe
29-03-2005, 19:36:24
Lo siento, pero veo tal cantidad de agujeros en la pregunta y en el código que es imposible contestar:

- De qué tipo de base de datos y gestor de BBDD estamos hablando?
- Tabla1 y tabla 2 no estan en el código.

Ya dentro del código:
- ¿Por qué cerrar y abrir la tabla?, no bastaría con Table3.First?
- table3 está en modo edición??, porque se está asignando un valor ¿?¿?
- table 3 y table 4 estan relacionadas por algún campo?

En mi opinión, eso merece una consulta para obtener el valor. Simplemente sería un SELECT SUM(sub_total) from <nombre tabla 4>

Saludos

fabian20s
29-03-2005, 22:20:46
grasias por la sugerencia el query tengo lo siguiente
SELECT SUM(cantidad*valor_venta) from detalleventa,articulo
pero nesesito que me filtre los datos donde idventa de la tabla detalle sea = a 1

Lepe
31-03-2005, 12:48:46
SELECT SUM(cantidad*valor_venta) from detalleventa,articulo
WHERE IDVENTA = 1

PD: Una respuesta general, solo obtiene una respuesta general