Fonction d'intervalle selon la date
Bonjour,j'ai beaucoup de misère avec cette fonction. Je tente d'afficher un message d'erreur losrque le NOW() ne se trouve pas entre la dateDePrise et la dateDePrise + INTERVAL '1 day'.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
CREATE OR REPLACE FUNCTION mesureInterval_lim()
RETURNS TRIGGER AS
$$
BEGIN
IF NOT EXISTS
(
SELECT *
FROM MesureInterval JOIN Processus USING (idMesure)
WHERE (Processus.idProcessus = 'PROC001' AND now() <= mesureinterval.dateDePrise + INTERVAL '1 day')
OR
(Processus.idProcessus = 'PROC002' AND now() <= mesureinterval.dateDePrise + INTERVAL '1 day')
)
THEN
RETURN NEW;
ELSE
RAISE EXCEPTION 'Veuillez passer à la prochaine étape';
RETURN NULL;
END IF;
END;
$$
LANGUAGE plpgsql; |