Bonjour,

J'essaie de faire une fonction qui me donnera le nb de jours ouvrés entre 2 dates (avec accès à une table qui contient les jours fériés).

Je débute en PL/SQL et je bloque dès le début de ma fonction: sur le code ci-dessous, c'est l'alimentation de la variable DATE_VAR2 qui renvoie le 01858 mais je ne vois pas pourquoi.

CREATE OR REPLACE FUNCTION FCT_NB_JOURS_OUVRES(DATE_DEB VARCHAR2, DATE_FIN VARCHAR2, TYPE_CALC INTEGER) RETURN NUMBER IS

/******************************************************************************
Renvoie le nombre de jours ouvrés entre 2 dates
paramètre 1 (date_deb) = date de début au format 'JJ/MM/AAAA'
paramètre 2 (date_fin) = date de fin au format 'JJ/MM/AAAA'
paramètre 3 (type_calc) = type de calcul
1 = Général
2 = Alsace-Moselle
utilise la table XFERIES
******************************************************************************/

NB_JO NUMBER(3);
DATE_VAR VARCHAR2(20);
DATE_VAR2 DATE;
NO_JOUR VARCHAR2(1);

BEGIN
NB_JO := 0;
DATE_VAR := DATE_DEB;


WHILE DATE_VAR <> DATE_FIN LOOP

DATE_VAR2 := TO_DATE(DATE_VAR, 'DD/MM/RRRR');
NO_JOUR := TO_CHAR(DATE_VAR2, 'D');


Si quelqu'un a une idée, merci d'avance...