Salve, come detto rieccomi qui con i soliti problemi, che grazie al Vostro aiuto oltre a risolverli, mi stanno dando un aiuto veramente importante per la creascita professionale in questo campo.

Ho delle tabelle che sono relazionate (leaverequest) con la tabella (Employee) uno ad uno.

La mia store deve inserire nella tabella leaverequest tutti gli elementi che non esistono nel parametro della store @IDuser

codice:
ALTER PROCEDURE [dbo].[spferieinsert]
(@idUser Int, @startDateIn varchar(14))
AS
BEGIN
	
	SET NOCOUNT ON;
	IF @startDateIn = '' 
		SET @startDateIn=CONVERT(varchar(4), Year(GetDate())) +  '0101000000'
	DECLARE @maxReachableLeaves Float
	DECLARE @daysAvailable Int
	DECLARE @lastDayDate DateTime
	DECLARE @newRange Float
	DECLARE @firstEmptyLeaveId Int
	DECLARE @startDate DateTime
    DECLARE @leavetype INT
    DECLARE @esiste varchar

    SET @leavetype=2

	SET @startDate = dbo.StringToData(@startDateIn)

	SELECT @maxReachableLeaves = leaMaxReachable
	FROM dbo.leaveType
	WHERE IDLeaveType=@leaveType --VALORE PER FERIE	
	
	
	SET @lastDayDate=dbo.StringToData(
							CONVERT(varchar(4), Year(GetDate())) + 
							'1231000000' )
	
	
	SET @newRange=DATEDIFF(day, @startDate, @lastDayDate)
	
	
	SET @daysAvailable= @newRange*(@maxReachableLeaves/365.00) + 1





	--SELECT daysAvailable=@daysAvailable

SELECT @firstEmptyLeaveId = ISNULL(MAX(Lea.IDLeaveRequest),0) + 1 FROM [dbo].[leaveRequest]Lea


INSERT INTO [BSPF_GLOB].[dbo].[leaveRequest]
SELECT @firstEmptyLeaveId,@idUser,@leaveType,@startDate,@lastDayDate,0,0.0,Lea.leaReason,Em.ADDRESS,
Em.MOBILE,0,@idUser,10,'Nuova Assunzione',GetDate(),@idUser,GetDate(),@idUser FROM leaveRequest Lea 
INNER JOIN 
EMPLOYEE Em ON Lea.IDUser = Em.ID
WHERE (SELECT COUNT(*) FROM leaveRequest WHERE Lea.IDUser = @IDUser)>0
Il problema è che non me lo inserisce(i campi sono perfettamente), anzi mi inserisce quello che c'è

Dove sbaglio?

Grazie ancora