GetDateRus

Материал из iDempiere ru
Перейти к:навигация, поиск

Функции


Функция возвращает дату в формате - "8 декабря 2014г."

 
  CREATE OR REPLACE FUNCTION GetDateRus(TIMESTAMP WITH TIME ZONE) 
  RETURNS CHARACTER VARYING AS
  $BODY$
  
  /** @author @kinerix Anna Smirnova  */
  
  DECLARE pDate DATE := $1;
  DECLARE vMM CHARACTER(2);
  DECLARE vDD CHARACTER VARYING(2);
  DECLARE vYY CHARACTER(4);
  DECLARE vMonth CHARACTER VARYING(10);
  DECLARE DateRus CHARACTER VARYING(20);
  
  BEGIN
  
  vDD = (SELECT CAST(CAST(to_char(pDate, 'dd') as NUMERIC) as CHARACTER VARYING(2)) );
  vMM = (SELECT to_char(pDate, 'MM') );
  vYY = (SELECT to_char(pDate, 'YYYY') );
  
  IF vMM = '01' THEN  vMonth = 'января'; END IF;
  IF vMM = '02' THEN  vMonth = 'февраля'; END IF;
  IF vMM = '03' THEN  vMonth = 'марта'; END IF;
  IF vMM = '04' THEN  vMonth = 'апреля'; END IF;
  IF vMM = '05' THEN  vMonth = 'мая'; END IF;
  IF vMM = '06' THEN  vMonth = 'июня'; END IF;
  IF vMM = '07' THEN  vMonth = 'июля'; END IF;
  IF vMM = '08' THEN  vMonth = 'августа'; END IF;
  IF vMM = '09' THEN  vMonth = 'сентября'; END IF;
  IF vMM = '10' THEN  vMonth = 'октября'; END IF;
  IF vMM = '11' THEN  vMonth = 'ноября'; END IF;
  IF vMM = '12' THEN  vMonth = 'декабря'; END IF;
  
  DateRus = (SELECT concat(vDD, ' ', vMonth, ' ', vYY, 'г.') );
  
  RETURN DateRus;
  
  END;
  $BODY$
  LANGUAGE plpgsql VOLATILE;
  ALTER FUNCTION GetDateRus(TIMESTAMP WITH TIME ZONE) 
    OWNER TO adempiere;
  
  -------------------------------------------------------
  -- SELECT GetDateRus(now());
  -------------------------------------------------------
  
Cookie-файлы помогают нам предоставлять наши услуги. Используя наши сервисы, вы соглашаетесь с использованием cookie-файлов.