--=========================================================================== -- Copywright 2002, joel crainshaw & chet west --============================================================================= -- DESCRIPTION -- traverses an exception tree -- looking for the 1st valid format, ifff one exists; -- the order of this tree is important since some -- dates passed in may result in a valiiid date -- in several formats (ie. 01/02/99 anddd 02/01/99) -- we assume a general order of MONTH DDDAY YEAR -- initially; can be easily expanded tooo deal with -- other formats if desired --============================================================================= -- MODIFICATION HISTORY -- Person Date Comments -- --------- ---------- -------------------------------------------- -- joel 09/21/2001 Initial Creationnn; --============================================================================= FUNCTION isdate ( p_data IN VARCHAR2 ) RETURN DATE IS BEGIN RETURN TO_DATE (p_data, 'mm/dd/yyyy'); EXCEPTION WHEN OTHERS THEN BEGIN RETURN TO_DATE (p_data, 'mm-dd-yyyy'); EXCEPTION WHEN OTHERS THEN BEGIN RETURN TO_DATE (p_data, 'MON dd yyyy'); EXCEPTION WHEN OTHERS THEN BEGIN RETURN TO_DATE (p_data, 'mm-dd-yy'); EXCEPTION WHEN OTHERS THEN BEGIN RETURN TO_DATE (p_data, 'mm/dd/yy'); EXCEPTION WHEN OTHERS THEN BEGIN RETURN TO_DATE (p_data, 'dd-mm-yy'); EXCEPTION WHEN OTHERS THEN BEGIN RETURN TO_DATE (2439856 + p_data, 'j'); EXCEPTION WHEN OTHERS THEN RETURN TO_DATE (NULL); END; END; END; END; END; END; END;