چطوری یک استورد پراسیجور رو تو یه استورد پراسیجر صدا بزنم؟
چطوری یک استورد پراسیجور رو تو یه استورد پراسیجر صدا بزنم و اون بتونه چند مقدار رو به من برگردونه
من اینطوری نوشتم
ارور نمیده اما هیچ مقداری هم بر نمیگردونه
اینجا صدا میزنم
set @P_home_S ='-9'
EXEC SP_Get_Home_Permission
@P_User_id= @P_User_id
,@P_FormId ='1',
@P_Home_S=@P_Home_S
اینم پراسیجری که صدا میزنم
alter PROCEDURE [dbo].[SP_Get_Home_Permission]
@P_User_id BIGINT OUTPUT,
@P_FormId NVARCHAR(50),
@P_Home_S NVARCHAR(50) OUTPUT
AS
BEGIN
SET @P_home_S ='-7'
SELECT @P_Home_S = [Isselect]
FROM TAccess
WHERE (( userId = @P_user_Id )AND( FormId= @P_FormId) )
END
البته دستور سلکت رو کامنت هم کردم که فقط مقدار پارامتر رو دستی عوض کنم
اما انگار اصلا sp دوم اجرا نشده
هیچ مقداری نمیده
کسی میتونه کمکم کنه؟
نقل قول: چطوری یک استورد پراسیجور رو تو یه استورد پراسیجر صدا بزنم؟
به این صورت:
Declare @POut bigint
EXEC dbo.SPReturnProvince 500,@IdProvince=@POut OUTPUT
Select @POut
به نحوه ارسال پارامتر ها کاملاً دقت کنید. و اینکه در آخر خروجی پارامتر را نشان بدید. در ادامه خط تعریف SP دوم به این صورت هست:
ALTERPROCEDURE [dbo].[SPReturnProvince](@IdCity smallint,@IdProvince BIGINTOUTPUT)