Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Yo tendría un query aparte para calcular la suma de la columna.
Un simple:
Código SQL [-]
select sum(precio*cantidad) from tbAceites where codigo= :codigo;  // se supone que tienes un campo clave para identificar el pedido/factura/loquesea
Lo puedes ejecutar en el onExit de la celda cantidad.
Responder Con Cita
  #2  
Antiguo 21-08-2012
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
Si así lo tengo como tu lo has puesto

Código Delphi [-]
aceites.close;   
ACEITES.SQL.Clear;   
 ACEITES.SQL.Text:='SELECT SUM(PRECIO*cantidad) as sumatorio from aceites';   
ACEITES.OPEN;      
LABEL8.CAPTION:='$'+INTToStr(ACEITES.Fieldbyname('sumatorio').asINTEGER);      
ACEITES.SQL.CLEAR;      
ACEITES.SQL.TEXT:='SELECT * FROM ACEITES';   
 aceites.Active:=true;

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.
Responder Con Cita
  #3  
Antiguo 21-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Te copio lo que he puesto antes:
Cita:
Yo tendría un query aparte para calcular la suma de la columna.
Responder Con Cita
  #4  
Antiguo 21-08-2012
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
Perdon Casimiro, no lo leí bien.

De todas formas no entiendo muy bien lo del query aparte para calcular la suma.

Seria por ejemplo un query en memoria que contenga 2 columnas 1 de primary key y la otra donde se vayan añadiendo las cantidades por fila y de ahi, como ese query no es visible, actualizar la suma?.

Esto se podria hacer en el evento oncolexit del dbgrid o mejor en el onupdaterecord del query principal?.

Uso, de momento, sqlite3 y autocommit.

gracias de nuevo.
Responder Con Cita
  #5  
Antiguo 21-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Veamos, entiendo que estás dando de alta unos registros en alguna tabla de la base de datos.
Creo que quieres la suma de un campo en particular.
Pues entonces añade a tu proyecto un nuevo query y le pones la sentencia que corresponda.
Código SQL [-]
select sum(campo) from tabla where campoclave= loquesea
Responder Con Cita
  #6  
Antiguo 22-08-2012
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
Perdoname pero no lo entiendo, tal y como me pones la referencia, no se como aplicarla tal asi.

Le meto un query igual a ese.

Perdon me perdi.

saludos y gracias
Responder Con Cita
  #7  
Antiguo 22-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Bueno, antes de seguir responde a esto:

Cita:
Empezado por Casimiro Notevi
1. Veamos, entiendo que estás dando de alta unos registros en alguna tabla de la base de datos. ¿Sí/No?
2. Creo que quieres la suma de un campo en particular. ¿Sí/No?
Responder Con Cita
  #8  
Antiguo 22-08-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Creo que lo que te sugiere Casimiro, es algo similar a esto:
Código Delphi [-]
procedure TForm1.aceitesCalcFields(DataSet: TDataSet);
var
  Sumatoria: Double;
begin
  // Campo calculado
  with aceites do
    FieldByName('CALCULADO').AsFloat := FieldByName('PRECIO').AsFloat *
      FieldByName('CANTIDAD').AsFloat;

  // Mostrar sumatoria de: PRECIO*cantidad(columna del cpo calculado) en un Edit
  with OtroQuery do
  begin
    Close;
    SQL.Text:= 'SELECT SUM(PRECIO*CANTIDAD) AS SUMATORIA FROM TU_TABLA';
    Open;
    Sumatoria:= FieldByName('SUMATORIA').AsFloat;
    Close;
    Edit1.Text:= FloatToStr(Sumatoria);
  end;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 22-08-2012 a las 08:57:01.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

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


La franja horaria es GMT +2. Ahora son las 14:51:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi