![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
campo calculado no existe
Buenas,
sigo peleando con los campos de las bases de datos. Tengo una base de datos en sqlite usando lazarus y este codigo:
le meti un campo calculado al query y la primera parte, que multiplica la cantidad por el precio me lo hace bien, pero queria sumar toda la columna calculada y me dice que el campo calculo no existe. alguna idea? saludos y gracias |
|
#2
|
||||
|
||||
|
Hola,
Perdonad que escriba como respuesta pero no me deja editar el post. Si algo aprendi, creo, es que el campo calculado no existe porque no está directamente en la tabla de ahí que me de error, asi que lo he tenido que hacer de esta forma:
Esto funciona, pero como estoy trabajando con dbgrid, cada vez que se actualiza la suma, al ir llenando las celdas, el cursor vuelve al principio de la columna, si, esto seria normal porque cierro y abro la tabla, pero en otros programas comerciales no pasa eso, el total se actualiza de forma transparente para el usuario puesto que no cambia de celda volviendo al principio. El código anterior es así o hay otra forma de hacerlo, si es lo primero, como puedo evitar que vuelva al principio. Ya puestos, el total lo he puesto en un label, sería mas correcto meterlo en un stringgrid o un dbgrid?. Saludos y gracias Para actualizar el dbgrid uso DBGrid3EditingDone, aunque he probado otros. Última edición por anubis fecha: 14-08-2012 a las 05:30:06. |
|
#3
|
||||
|
||||
|
Hola, amigo, creo que estás hecho un lio
![]() ![]() Explica exactamente qué estás haciendo, qué quieres hacer, etc. porque siguiendo tu comentario, la verdad, no está muy claro.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#4
|
||||
|
||||
|
Gracias Casimiro por contestar.
Mira, tengo una tabla llamada aceites que tiene: clave. autoincrement nombre, string precio, integer cantidad, integer tengo un dbgrid que apunta a esa tabla de aceites que contiene: nombre, precio, cantidad y un campo calculado que añadi al query que multiplica el precio x cantidad. a medida que voy metiendo cantidad en cada celda, el campo calculado me resuelve el total por fila. La idea es que a medida que voy metiendo la cantidad y me resuelve el total por fila, queria que se fuera actualizando la suma de todas las cantidades del campo calculado para lo cual tuve que meter otro campo en el query para resolver esto, campo sumatorio.
el único problema que veo, es que cada vez que meto una cantidad y salgo de la celda, me actualiza el sum anterior, pero me regresa al principio del dbgrid, y esto sería lógico porque cierro y abro el query (creo que no hay otra forma) No se si esto debe ser asi o, como he visto en otros post, en vez de hacer un sum global (que nose si esta bien) debo de ir acumulandolo en una variable integer como:
Saludos y gracias |
|
#5
|
||||
|
||||
|
Yo tendría un query aparte para calcular la suma de la columna.
Un simple: Lo puedes ejecutar en el onExit de la celda cantidad.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#6
|
||||
|
||||
|
Si así lo tengo como tu lo has puesto
Pero como comento, para aplicar la suma de toda la columna, cada vez que meto una cantidad y aplico el onexit se ejecuta el codigo anterior volviendo al comienzo de la columna. Lo que no entiendo es si ese codigo se aplica asi o hay otras opciones en el que no tenga que cerrar el query. Última edición por anubis fecha: 21-08-2012 a las 02:25:27. |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| campo calculado (sum) no existe | anubis | Varios | 7 | 18-10-2011 20:59:02 |
| Campo Calculado | novato_erick | SQL | 1 | 14-06-2011 23:06:02 |
| Pasar un campo calculado a un campo del mismo DbGrid | maravert | Conexión con bases de datos | 3 | 12-05-2006 00:31:30 |
| Campo calculado | sercornejov | MySQL | 3 | 09-08-2005 02:54:35 |
| Campo de bd calculado | davidgaldo | MS SQL Server | 3 | 20-05-2005 15:50:22 |
|