Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-01-2008
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Ayuda con procedure

Hola a todos, Tengo 3 tablas, la primera CLIENTES la cual posee los campos ID y NOMBRE, la segunda FACTURA con los campos NUMERO,VALOR y CLIENT y la tercer tabla PAGO con los campos FACTU Y VALOR. Nesecito saber el valor total de lo facturado y el total pagado de un cliente X. Para ello he realizado un PROCEDURE debido a que con los consultas tuve problemas. El procedure es el siguiente:

CREATE PROCEDURE TOT_FC_SL (CLIEN Smallint)
RETURNS (FCT Numeric(10,2), SLD Numeric(10,2) )
AS DECLARE VARIABLE N_FC varchar(8); --> Numero de factura
DECLARE VARIABLE ABON numeric(10,2);--> Abono
DECLARE VARIABLE TABO numeric(10,2); --> Total abonado
BEGIN
TABO = 0;
FOR
SELECT COALESCE(SUM(VALOR),0)
FROM FACTURAS
WHERE CLIEN = :CLIEN
INTO :FCT
DO
FOR
SELECT ID_FC
FROM FACTURAS
WHERE CLIEN = :CLIEN
INTO :N_FC
DO
FOR
SELECT COALESCE(SUM(VALOR),0)
FROM PAGO
WHERE FACTU = :N_FC
INTO :ABON
DO
TABO = TABO + ABON;
SUSPEND;
SLD = TABO;


El problema radica en que solo me da el total de lo facturado pero no arroja ningun valor para lo pagado, donde esta el error?

Última edición por Jose Roman fecha: 29-01-2008 a las 15:09:26.
Responder Con Cita
  #2  
Antiguo 29-01-2008
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Hola José Román, te recomendaría que en lo sucesivo etiquetases el código para una mejor lectura.

Los datos que tu necesitas se pueden obtener con dos consultas facilmente

Facturado
Código SQL [-]
Select F.Client, sum(F.Valor) Facturado
from Factura F
where F.client = idcliente

Pagado
Código SQL [-]
Select F.Client, sum(P.Valor) Pagado
from Facturado inner join pagado on F.Numero = P.Factu
where F.Client = idcliente

Un saúdo
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)

Última edición por Ivanzinho fecha: 29-01-2008 a las 15:34:39. Razón: Por fallo en mensaje inicial
Responder Con Cita
  #3  
Antiguo 29-01-2008
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Gracias por la ayuda, en cuanto a la tiqueteada en el equipo donde me encuentro tiene un programa llamado iProtectYou el cual me da dolores de cabeza y me desactiva mas de una cosa, como este equipo se ubica donde trabajo no puedo desactivar esto debido a que no poseeo el password; si sabes que puedo hacer con esto me gustaria saberlo, en caso contrario gracias por tu ayuda.
Responder Con Cita
  #4  
Antiguo 29-01-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

Nada te impide escribir las etiquetas directamente en tu mensaje: [ sql ] [ /sql ], [ delphi ] [ /delphi ], [ php ] [ /php ] (todas sin espacios en blanco)...


Saludos...
Responder Con Cita
Respuesta



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
Ayuda urgente con stored procedure abc_co Firebird e Interbase 3 09-02-2008 03:01:14
Ayuda con Stored Procedure Fita Firebird e Interbase 2 28-11-2007 01:28:03
Ayuda con Stored Procedure gluglu Conexión con bases de datos 6 26-09-2007 14:20:53
Ayuda con Stored Procedure Sudamericano Firebird e Interbase 13 09-06-2004 01:26:32
Ayuda con Stored Procedure tgsistemas SQL 2 30-03-2004 23:30:40


La franja horaria es GMT +2. Ahora son las 18:31:09.


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