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

Как выгрузить процентную ставку по кредитам

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


Вступление в Клуб: 29.08.2013
СообщениеЧт Сен 05, 2013 18:49   Как выгрузить процентную ставку по кредитам Ответить с цитатой
Полезность: Нет оценки
Проблема в том, что необходимо ежемесячно выгружать "плоский файл" для загрузки в другое приложение.
Через SQL получается всё прекрасно, но необходимо написать операцию на PL/+ , что бы пользователи могли производить выгрузку самостоятельно.
Делаю следующее:
Код:
  for (SELECT kr
       (
           kr.[NUM_DOG] : c_NUM,
           kr.[SUMMA_DOG] : c_SUMMA,
         A3_1.[NAME] : c_NAME,          
         A4_1.[MAIN_V_ID] : c_MAIN_V_ID,          
         A2_1.[CUR_SHORT] : c_CUR_SHORT,
         [RUNTIME].[VIEWFUN].GET_PRC_VALUE(A14_1.[PRC_SCHEME],[RUNTIME].[VIEWFUN].GetOpDate) : c_PRO
       )   
         IN
           [PR_CRED],
         ([PRODUCT] : A1_2),          
         ([AC_FIN] : A4_1),
          ([CLIENT] : A3_1),
          ([COM_STATUS_PRD] : A5_1),
          ([USER] : A12_1),
          ([FT_MONEY] : A2_1),
          ([PRODUCT] : A7_2),
          ([PRODUCT] : A8_2),
          ([KIND_CREDITS] : A9_1),
          ([KIND_PROJECT] : A11_1),
          ([PRODUCT] : A13_2),
          ([SIM_LOAN_PORT] : A13_1),
          ([DEBT_COMISS_PRC] : A14_1)
          all
       WHERE
              kr%ID = A1_2%ID
          AND kr.[ACCOUNT] = A4_1%ID (true)
          AND kr.[CLIENT] = A3_1%ID (true)
          AND A1_2.[COM_STATUS] = A5_1%ID (true)
          AND A1_2.[CREATE_USER] = A12_1%ID (true)
          AND kr.[FT_CREDIT] = A2_1%ID (true)
          AND kr.[GEN_AGR] = A7_2%ID (true)
          AND kr.[HIGH_LEVEL_CR] = A8_2%ID (true)
          AND kr.[KIND_CREDIT] = A9_1%ID (true)
          AND kr.[PRJ_KIND_CRED] = A11_1%ID (true)
          AND A13_1%ID = A13_2%ID (true)
          AND (
               (
                 [SIM_LOAN_PORT].[LIB].GetPortByCred(kr%ID, null, null, kr.[HIGH_LEVEL_CR]) = A13_1%ID (true) and (A14_1%COLLECTION (true) = kr.[COMISS_ARR] and A14_1.[DEBT](true) = 1984123)
               )
              )
      )
       loop
 
        debug_pipe('proc_stav :='||kr.c_PRO,0);
       end loop;


 



Подскажите, что делаю не правильно, и где искать ошибки
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеЧт Сен 05, 2013 21:13    Ответить с цитатой
Полезность: Нет оценки
Организация: ГК

ООО "ГовноКодинг, лимитед," штоле?

Камрад Сашко,

1)

([SIM_LOAN_PORT] : A13_1)

кредиты только портфельные, штоле ?

2)
Отвыкай от такого стиля, камрад, пользуйся CODE
A14_1.[DEBT](true) = 1984123

3) Это что за тройственный джойнинг, зачем оно тебе , камрад ?
([PRODUCT] : A7_2),
([PRODUCT] : A8_2),
([PRODUCT] : A13_2),

4) Все кредиты под генеральным соглашением ?
AND kr.[GEN_AGR] = A7_2%ID (true)

5) А почему в IN нет типа PRC_SCHEME ? Схемы начисления процентов, собстно проц. ставки - в истории, а ещо они бывают простые и сложные ..

6) Не ЦФТ-style кодинг, смени генератор шаблонов, камрад.

chesnok
Участник со стажем


Вступление в Клуб: 25.03.2010
СообщениеПт Сен 06, 2013 03:54    Ответить с цитатой
Полезность: Нет оценки
Добавлю свои 5 копеек: в версии 13.7 исчезает [VIEWFUN].Get_Prc_Value
Безследа.
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеПт Сен 06, 2013 06:43   Re: Как выгрузить процентную ставку по кредитам Ответить с цитатой
Полезность: Нет оценки
izuit пишет:
Проблема в том, что необходимо ежемесячно выгружать "плоский файл" для загрузки в другое приложение.

Подскажите, что делаю не правильно, и где искать ошибки


Извини, конечно, но даже в SQL у тебя куча ненужного.

Код:

declare
   dTmp date;
begin
   dTmp := ::[RUNTIME].[VIEWFUN].GetOpDate;

   for (   SELECT kr(


/*   Это всё не используется, выпиливаем
   kr.[NUM_DOG] : c_NUM,
   kr.[SUMMA_DOG] : c_SUMMA,
   kr.[CLIENT].[NAME] : c_NAME,         
   kr.[ACCOUNT].[MAIN_V_ID] : c_MAIN_V_ID,         
   kr.[FT_CREDIT].[CUR_SHORT] : c_CUR_SHORT,*/


      kr.[COMISS_ARR].[PRC_SCHEME]   :c_scheme
      ) IN ::[PR_CRED] all
      WHERE   kr.[COMISS_ARR].[DEBT] = ::[VID_DEBT]([ code] = 'сюда подставить нужный код') -- это вместо 1984123
   ) loop
      debug_pipe('proc_stav =' || ::[RUNTIME].[VIEWFUN].GET_PRC_VALUE(kr.c_scheme, dTmp), 0);
   end loop;
end;
devor
Профи


Вступление в Клуб: 13.02.2012
СообщениеПт Сен 06, 2013 08:29    Ответить с цитатой
Полезность: 1
Random, как уже писали выше, функция [VIEWFUN].Get_Prc_Value в версии 13.7 перестала существовать.
Вместо нее теперь интерфейс
::[CRED_INTERFACE].[PRX_PRC_SCHEME].GetPrcRate
izuit
Участник


Вступление в Клуб: 29.08.2013
СообщениеПт Сен 06, 2013 15:32    Ответить с цитатой
Полезность: Нет оценки
Спасибо!
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

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