RETORNA_MES Function

Este forum é dedicado a códigos errados que se encontram por aí, ou seja, coisas que não se deve fazer de jeito nenhum! Não coloque neste forum dúvidas! (apenas situações bizarras do nosso dia a dia :-)
  

Poston Fri, 13 Jan 2012 12:19 pm

Pearl. Detail that the function provides that the Bank may be configured to Portuguese or English.

Code: Select all
CREATE OR REPLACE FUNCTION RETORNA_MES (
   DATA   DATE)
   RETURN VARCHAR2 IS
  mês   VARCHAR2 (255);
BEGIN
mês := SUBSTR(TO_CHAR(data),4,3);

IF mês = 'JAN' then
      mês:='JANEIRO';
    elsif mês = 'FEB' then
            mês:='FEVEREIRO';
    elsif mês = 'MAR' then
            mês:='MARCO';
    elsif mês = 'APR' then
            mês:='ABRIL';
    elsif mês = 'MAI' then
            mês:='MAIO';
    elsif mês = 'JUN'then
            mês:='JUNHO';
    elsif mês = 'JUL' then
            mês:='JULHO';
    elsif mês = 'AUG' then
            mês:='AGOSTO';
    elsif mês = 'SEP' then
            mês:='SETEMBRO';
    elsif mês = 'OCT' then
            mês:='OUTUBRO';
    elsif mês = 'NOV' then
            mês:='NOVEMBRO';
    elsif mês = 'DEC' then
            mês:='DEZEMBRO';

    elsif mês = '01/' then
      mês:='JANEIRO';
    elsif mês = '02/' then
            mês:='FEVEREIRO';
    elsif mês = '03/' then
            mês:='MARCO';
    elsif mês = '04/' then
            mês:='ABRIL';
    elsif mês = '05/' then
            mês:='MAIO';
    elsif mês = '06/'then
            mês:='JUNHO';
    elsif mês = '07/' then
            mês:='JULHO';
    elsif mês = '08/' then
            mês:='AGOSTO';
    elsif mês = '09/' then
            mês:='SETEMBRO';
    elsif mês = '10/' then
            mês:='OUTUBRO';
    elsif mês = '11/' then
            mês:='NOVEMBRO';
    elsif mês = '12/' then
            mês:='DEZEMBRO';
       end if;
  return(mês);

END RETORNA_MES;
after a few laughs, rewrote.

Code: Select all
CREATE OR REPLACE FUNCTION RETORNA_MES (
   DATA   DATE)
   RETURN VARCHAR2 IS
BEGIN
   RETURN TO_CHAR (DATA,
                   'MONTH',
                   'NLS_DATE_LANGUAGE=PORTUGUESE');
END RETORNA_MES;
But kept the old code commented. Deserves.
Marciel
Location: Vitória - ES

Sabe qual o cúmulo da ignorância, da apatia e da ira?
Não sei, não quero saber e tenho raiva de quem sabe.

Poston Thu, 25 Oct 2012 4:18 pm

Another peculiar thing: I had never seen until today a variable with accentuation. (month): roll:
dr_gori
Location: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered



Return to Doubtful codes

Who is online

Users browsing this forum: No registered users and 1 guest

cron