Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   SQL Server (http://www.forosdelweb.com/f87/)
-   -   Hola una pregunta como llamar un SP dentro de otro SP (http://www.forosdelweb.com/f87/hola-pregunta-como-llamar-sp-dentro-otro-sp-394415/)

Escorpion_Negro 17/05/2006 09:19

Hola una pregunta como llamar un SP dentro de otro SP
 
Hola tengo una consulta se puede hacer que yo si tengo dos SP por ejemplo “SP_Cliente” y el Otro “SP_Det_Factura” pueda hacer lo siguiente

1.- como desde SP_Cliente pude ejecutar SP_Det_Factura
2.- SP_Det_Factura Pueda entregarle unos valores a SP_Cliente


Ejemplo

Código:

CREATE PROCEDURE SP_Cliente
        @Id_Cliente
begin
DECLARE  C1 CURSOR FOR
        SELECT ID_Num_Fact
        FROM        Factura
        WHERE   
        ID_cli_Factura = @ ID_Cliente
OPEN C1
FETCH NEXT FROM C1
        into  @ ID_Num_Fact
WHILE @@FETCH_STATUS = 0
BEGIN   
                  Execute SP_Det_Factura @ID_Nun_Fact       
            FETCH NEXT FROM C1
            into  @ ID_Num_Fact
 END
 CLOSE C1
 DEALLOCATE C1
end
GO


Código:

CREATE PROCEDURE SP_Det_Factura
        @ID_Nun_Fact
begin
Select sum(Det_Factura_valor)
From Det_Factura
Where ID_Num_Fact = @ID_Num_Factura
End

¿Como hacer que desde SP_Det_Factura devuelva el valor de la sumatoria del campo Deta_Factura_Valor hacia SP_Cliente?

Mithrandir 17/05/2006 16:29

Creo que algo como esto ayudará:
Código:

.....
DECLARE @mitotal INT OUTPUT
BEGIN   
                  Execute SP_Det_Factura @ID_Nun_Fact, @mitotal OUTPUT       
            FETCH NEXT FROM C1
            into  @ ID_Num_Fact
 END
.....

Código:

CREATE PROCEDURE SP_Det_Factura
        @ID_Nun_Fact,
        @total INT OUTPUT
begin
Select @total= sum(Det_Factura_valor)
From Det_Factura
Where ID_Num_Fact = @ID_Num_Factura
End



La zona horaria es GMT -6. Ahora son las 08:42.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.