Monday, June 10, 2013

getfinancialyear (strdate VARCHAR)

/* Formatted on 2013/06/10 17:40 (Formatter Plus v4.8.8) */
CREATE OR REPLACE FUNCTION getfinancialyear (strdate VARCHAR)
   RETURN VARCHAR
AS
   v_month   VARCHAR2 (10);
   v_year    VARCHAR2 (10);
BEGIN
   --strDate format should be Mon/YYYY
   v_month := UPPER (SUBSTR (strdate, 1, 3));
   v_year := SUBSTR (strdate, 5);

   IF (INSTR ('JAN|FEB|MAR', v_month) > 0)
   THEN
      v_year := (TO_NUMBER (v_year) - 1) || '-' || SUBSTR (v_year, 3);
   ELSE
      v_year := v_year || '-' || SUBSTR (TO_CHAR (TO_NUMBER (v_year) + 1), 3);
   END IF;

   RETURN v_year;
END;
/

No comments:

Post a Comment