Using sql2005 im trying to compile this function:----------------------------------------------------------CREATE FUNCTION Reports.fTotalDev(@LotID VARCHAR(15)) RETURNS @FailsTable TABLE(LeftFails INT,RightFails INT) ASBEGIN DECLARE @LeftDevice INT,@RightDevice INTDECLARE @LeftFails INT,@RightFails INTSET @LeftDevice = (SELECT TOP 1 DeviceID FROM Tests.Registry WHERE LotID = @LotID ORDER BY DeviceID ASC)IF (SELECT COUNT((SELECT DISTINCT DeviceID FROM Tests.Registry WHERE LotID = @LotID))) > 1 BEGIN SET @RightDevice = (SELECT TOP 1 DeviceID FROM Tests.Registry WHERE LotID = @LotID ORDER BY DeviceID DESC) ENDSET @LeftFails = (SELECT COUNT(Id) FROM Tests.Registry WHERE Fail = 'DEV' AND LotID = @LotID AND DeviceID = @LeftDevice)SET @RightFails = (SELECT COUNT(Id) FROM Tests.Registry WHERE Fail = 'DEV' AND LotID = @LotID AND DeviceID = @RightDevice)INSERT INTO @FailsTable (LeftFails,RightFails) VALUES (@LeftFails,@RightFails ) RETURN @FailsTableENDGO----------------------------------------------------------
But then im getting this error:Msg 137, Level 15, State 2, Procedure fTotalDev, Line 24Must declare the scalar variable "@FailsTable".
If i will try to move the deceleration to the body, i would also get an error.How can i write this properly? Thanks.