Ver Mensaje Individual
  #6  
Antiguo 27-10-2006
Analia29 Analia29 is offline
Registrado
 
Registrado: oct 2006
Ubicación: Santa Fe
Posts: 5
Reputación: 0
Analia29 Va por buen camino
Hola, estoy intentando resolver el problema y lo estoy haciendo con procedimientos almacenados, les transcribo el código.
Código SQL [-]
CREATE PROCEDURE SUMATOTAL (
    PER INTEGER,
    EST INTEGER)
RETURNS (
    TOTAL FLOAT,
    CODAFILIADO INTEGER,
    FECHAMOD DATE,
    MONTO FLOAT,
    MOTNOPAGO INTEGER,
    PAGO VARCHAR(1),
    USUARIO INTEGER,
    CODIGO INTEGER,
    NOMBREYAPELLIDO VARCHAR(50),
    NRODOC INTEGER,
    APORTA VARCHAR(1),
    CUIL VARCHAR(25),
    CODPERIODO INTEGER,
    NROESTAB INTEGER)
AS
begin
total = 0;
For SELECT DISTINCT APORTESAFI.Codafiliado, APORTESAFI.Fechamod, APORTESAFI.Monto, APORTESAFI.Motnopago, aportesafi.Codperiodo,
Aportesafi.Pago, APORTESAFI.Usuario, APORTESAFI.Codigo, aportesafi.Nroestab, AFILIADOS.NOMBREYAPELLIDO , AFILIADOS.NRODOC, AFILIADOS.APORTA, AFILIADOS.CUIL
FROM APORTESAFI
   INNER JOIN AFILIADOS ON (APORTESAFI.CODAFILIADO = AFILIADOS.CODIGOAFILIADO)
WHERE 
   (
      (APORTESAFI.CODPERIODO = :PER)
   and 
      (APORTESAFI.NROESTAB = :EST)
   )
ORDER BY APORTESAFI.NROESTAB, NOMBREYAPELLIDO
INTO :Codafiliado, :Fechamod, :Monto, :Motnopago, :codperiodo, :Pago, :Usuario, :Codigo, :nroestab, :NOMBREYAPELLIDO , :NRODOC, :APORTA, :CUIL DO
BEGIN
total = :total + :monto;
suspend;
end
end
El resultado aún no es lo deseado, ya que el total lo va sumando bien, solo que en cada registro, y yo lo necesito que se vaya actualizado en el dbedit la sumatoria o sea el campo total.

Gracias por la ayuda, creo que ahora voy en mejor camino que antes, pero aún no he podido , seguro que debe ser una pavada.

Saludos
Responder Con Cita