The OUTPUT clause is in the wrong place, too. that's one of the causes of your error.
It goes AFTER the affected columns list.
CREATE PROCEDURE [dbo].[Employee_Add]
@CategoryID Int,
@EmpName varchar(10),
@CreatorUserID Int,
@SenderUserID Int
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO Empl (
CategoryID, EmpName, CreatorUserID, SenderUserID, CreatedDate,
LastModifiedDate, IsDeleted )
OUTPUT INSERTED.ID --<-- OUTPUT goes here
VALUES
( @CategoryID, @EmpName, @CreatorUserID, @SenderUserID, DEFAULT,
DEFAULT, DEFAULT )
END
Now - the column names need to be the same as what's in the destination table, so Grant is probably right as well...
----------------------------------------------------------------------------------
Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?