CftClub.ru
Клуб специалистов ЦФТ-Банк

Дата капитализации процентов по депозитам

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Настройка и сопровождение
Предыдущая тема :: Следующая тема  
Автор Сообщение
dnk_dz
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеСр Июл 30, 2008 06:23   Дата капитализации процентов по депозитам Ответить с цитатой
Полезность: Нет оценки
Уважаемые коллеги.
Не сталкивался ли кто со следующей проблемой с начислением процентов по депозитам.
Если договор открыт в последний день месяца, напр. 30.04 и период капитализации по нему - 1 месяц, то проценты будут причисляться ко вкладу не каждого 30-го числа, а в последний день месяца. Т.е. 31.05, 30.06 и т.д.
Этот эффект проявляется из-за особенностей реализации функции add_months в Oracle.

Некоторых вкладчиков это сильно напрягает, впрочем и бизнес тоже периодически возбуждается. Переписывать функции Oracle особого желания нет, и так пол-ИБСО переписали Crying or Very sad

Если кто-то сталкивался и решал такую проблему - расскажите...
dnk_dz
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеСр Июл 30, 2008 08:38    Ответить с цитатой
Полезность: 4
Как всегда... Нет, чтобы немного подумать...
Вобщем, разрешил проблему и отвечу сам Very Happy
С какого-то времени появилась настройка в справочнике "Периодичность операции" - на закладке "Депозиты физических лиц" "Не смещать на конец месяца". Эта настройка позволяет избежать особенности функции add_months и корректирует дату исходя из даты первой капитализации, либо даты начала договора. Данная настройка работает только на вновь открываемые договора, либо по договорам, у которых еще не было ни одной капитализации.

Правда, как всегда, не обошлось без ошибок. Данная настройка не учитывает пролонгацию договора, и как следствие изменение даты капитализации. Например, договор был открыт 28.02.2007, пролонгация прошла 04.04.2008. По идее, если период капитализации - 1 месяц, то после пролонгации капитализаци должна проходить каждого 4-го числа. С включенной настройкой предлагает каждого 28-го...

Следующий код позволяет избежать этого. В операции ::[DEPOSIT_PRIV].[GET_DATE_CH] добавляем следующий код:

Код:
if CODE_INFO = 'DATE_FIRST_CAP' then
   declare
      date_last_prol date;
   begin
      date_last_prol := [GET_DATE]('LAST_PROL', ON_DATE);
      RetDate := nvl(date_last_prol, [DATE_BEGIN]);
   end;
end if;
   
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Настройка и сопровождение Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru