FRM-40735 ORA-01843: not a valid month IN WHEN-VALIDATE TRIGGER
Hello,can anyboady pls help me in this ; when calling the function i get the following error exception FRM-40735 ORA-01843: not a valid month IN WHEN-VALIDATE-TRIGGER
----------------------------------------------------------
FUNCTION Fn_Check_Permission_Time RETURN Number IS
v_Per_Count Number;
V_EMP_TIME_IN NUMBER(10,4):=0;
V_EMP_TIME_OUT NUMBER(10,4):=0;
V_EMP_TIME_I DATE;
V_EMP_TIME_O DATE;
V_MINUTES_IN NUMBER(10,4):=0;
V_MINUTES_OUT NUMBER(10,4):=0;
V_COUNT NUMBER(2);
Cursor GetEmpPer IS
SELECT EMPR_TIME_IN , EMPR_TIME_Out
From Emp_Permissioms
Where ( Empr_Date_From <= :Empr_Date_From And Empr_Date_To >= :Empr_Date_From)
OR ( Empr_Date_From <= :Empr_Date_To And Empr_Date_To >= :Empr_Date_To )
OR ( Empr_Date_From > :Empr_Date_From And Empr_Date_To < :Empr_Date_TO )
And Empr_Emp_No = :Empr_Emp_No ;
BEGIN
V_MINUTES_IN := SUBSTR(abs(TO_CHAR(:EMP_PERMISSIOMS.EMPR_TIME_IN,'MI'))/60 * 10,1,1);
V_MINUTES_OUT := SUBSTR(abs(TO_CHAR(:EMP_PERMISSIOMS.EMPR_TIME_OUT,'MI'))/60 * 10,1,1);
V_EMP_TIME_IN := TO_NUMBER(TO_CHAR(:EMP_PERMISSIOMS.EMPR_TIME_IN,'HH24')||'.'||V_MINUTES_IN);
V_EMP_TIME_OUT := TO_NUMBER(TO_CHAR(:EMP_PERMISSIOMS.EMPR_TIME_OUT,'HH24')||'.'||V_MINUTES_OUT);
FOR I IN GetEmpPer LOOP
IF TO_DATE(TO_CHAR(I.EMPR_TIME_IN,'HH24:MI') ) <= (TO_DATE(V_EMP_TIME_IN)) And TO_DATE((TO_CHAR(I.EMPR_TIME_Out,'HH24:MI'))) >= (TO_DATE(V_EMP_TIME_IN))
OR (TO_CHAR(I.EMPR_TIME_IN,'HH24:MI') <= TO_DATE(V_EMP_TIME_IN) And TO_DATE(I.EMPR_TIME_Out,'HH24:MI') <= TO_DATE(V_EMP_TIME_IN))
OR (TO_CHAR(I.EMPR_TIME_IN,'HH24:MI') <= TO_DATE(V_EMP_TIME_OUT) And TO_DATE(I.EMPR_TIME_Out,'HH24:MI') >= TO_DATE(V_EMP_TIME_OUT))
OR (TO_CHAR(I.EMPR_TIME_IN,'HH24:MI') > TO_DATE(V_EMP_TIME_IN) And TO_DATE(I.EMPR_TIME_Out,'HH24:MI') < TO_DATE(V_EMP_TIME_OUT))
THEN RETURN 1 ;
Message('THIS PERMISION IS TAKEN BEFORE');
RAISE FORM_TRIGGER_FAILURE;
ELSE RETURN 0;
End IF;
END LOOP;
End;
-------------------------------------------------------------------------------------
Regards,
Abdetu..