Bonjour !

Je tente, depuis une bonne heure déja, de créer une fonction vérifiant la disponibilité d'une salle (petit programme de gestion de réunions).

L'idée est assez simple : je charge dans un curseur toutes les réunions qui auront lieu dans la salle choisie et je vérifie a chaque fois que les dates/heures ne se chevauchent pas (via ma fonction "dbo.DateHeureSeChevauchent" qui, elle, fonctionne).

Le problème est que j'ai ce message d'erreur pas super précis :
"Msg 102, Level 15, State 1, Procedure IsSalleAvailabol, Line 21
Incorrect syntax near '='."

Quelqu'un a une idée de ce que j'aurai foiré ? Car la doc de msdn ne m'aide pas trop sur le coup

Merci d'avance !

François

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
SET ANSI_NULLS ON 
SET QUOTED_IDENTIFIER ON 
GO
-- =============================================
-- Description:	<Vérifie Disponibilité Salle>
-- =============================================
CREATE FUNCTION [dbo].[IsSalleAvailabol] (@SAL_ID int, @DATE_DEB datetime, @DATE_FIN datetime)
RETURNS bit
AS
BEGIN
	DECLARE @retVal bit
	DECLARE @reu_id int, @var_hdeb datetime, @var_hfin datetime
	DECLARE MY_CURSOR Cursor
 
	FOR SELECT REU_ID, REU_DATE, REU_HFIN 
        FROM   reunion 
        WHERE  FK_REU_SAL_ID = @SAL_ID;
 
	OPEN MY_CURSOR
	FETCH NEXT FROM MY_CURSOR INTO @reu_id, @var_hdeb, @var_hfin
-- Ligne 21
	WHILE @@FETCH_STATUS = 0
	BEGIN
		IF(dbo.DateHeureSeChevauchent(@DATE_DEB, DATE_FIN, var_hdeb, var_hfin = 1)
			SELECT @retVal = 1
 
		--EXIT
		FETCH NEXT FROM MY_CURSOR INTO @reu_id, @var_hdeb, @var_hfin -- Nécessaire ou implicite au fait ? 
	END
 
	CLOSE MY_CURSOR
	DEALLOCATE MY_CURSOR
 
	RETURN @retVal
 
END
GO