¿ En un Grid Normal es fácil acceder a cada uno de los elmentos sin más
que dar el número de columna y el de fila, pero en DBGrid existe alguna
manera de hacer esto?
Mi pregunta es porque quiero sumar todos los valores de una columna del
DBGrid y ponerlos en un Edit.
Este DBGrid representa los datos en una tabla detalle, por lo que no veo
lógico recorrer toda la tabla sumando los valores que pertenezcan a un
determinado registro, Ya que de de ser muy grande esta tabla, se tardaría
mucho.
Yo intento buscar algo que lo pueda tener activado en todo momento como
los CalcFields se activan con el OnCalcFields de la tabla correspondiente.
Gracias!
--
PpSoft
aatweb...@arrakis.es
Hola Colega:
No se si existe una solución específica en Delphi, pero yo
siempre (bueno, siempre no, sólo en los últimos 20 años) he resuelto este tema
creando un campo en la tabla maestra y actualizándolo cada vez que se crea,
borra o modifica un registro de la tabla de detalle. Puede parecer pedestre pero
te aseguro que cuando hablas de más de 50, o 100 registros de detalle sigue
siendo la manera más rápida. Piensa que lo hagas tu a pedal, o la herramienta
por detrás de las bambalinas, estás teniendo que recalcular cada vez y eso
siempre "consume recursos" como se dice ahora (antes decíamos chupa máquina).
Bueno, perdona por el rollo, y espero que te sea util.
Un saludo cordial.
Oscar Salgado Sánchez
osal...@databasedm.es
Madrid - España
Me gustaría morir plácidamente mientras duermo, como mi abuelo,
y no gritando, aterrorizado, como sus pasajeros.
1.- Haces un bucle por todos los registros de la tabla o query del detalle
y vas sumando los valores hasta optener el total (esto es lo mejor para
pocos registros, por ejemplo líneas de factura, albarán etc..)
2.- Ejecutas un Query con una sentencia SQL que realice la suma (esto es lo
mejor para gran cantidad de registros y en arquitecturas cliente/servidor).
Recuerda que si el usuario está a medio editar un registro la información
no está todavia en el disco y por lo tanto no se reflejará en la suma, mi
consejo es que no realices esta operación hasta que el usuario termine de
introducir la información.+
PpSoft <aatweb...@arrakis.es> escribió en artículo
<01bc33b0$6b97c360$LocalHost@seto>...