ГРАФИКИ КРЕДИТНОГО ДОГОВОРА
ПЛАНОВЫЕ ПЛАТЕЖИ
График Плановых платежей представляет собой сводные данные по графикам планового погашения ссуды и процентов. Данный график не хранится в БД АБС "Бисквит", а рассчитывается и записывается во временную таблицу xTT описанную в ps_rep.def:
- srok - срок до погашения (кол-во периодов), тип INT64;
- end-date - дата платежа, тип DATE;
- procent - сумма процентов, тип DEC;
- ssuda - сумма основного долга, тип DEC;
- itog - общая сумма, тип DEC;
- BegOst - входящий остаток ОД (до платежа), тип DEC;
- EndOst - исходящий остаток ОД (после платежа), тип DEC.
Пример:
{globals.i}
{tmprecid.def}
{intrface.get xclass}
{intrface.get loan}
{ps_rep.def}
DEF BUFFER bterm-obl FOR term-obl.
DEF BUFFER bloan FOR loan.
FIND FIRST tmprecid NO-LOCK NO-ERROR.
FIND FIRST bloan WHERE RECID(bloan) EQ tmprecid.id NO-LOCK NO-ERROR.
{empty xTT}
RUN PrepareTT(bloan.contract,bloan.cont-code,0).
{setdest.i}
FOR EACH xTT NO-LOCK:
PUT UNFORMATTED STRING(xTT.srok) + " " +
STRING(xTT.end-date) + " " +
STRING(xTT.procent) + " " +
STRING(xTT.ssuda) + " " +
STRING(xTT.itog) + " " +
STRING(xTT.BegOst) + " " +
STRING(xTT.EndOst)
SKIP.
END.
{preview.i}
ПЛАНОВОЕ ПОГАШЕНИЕ ССУДЫ
График плановых платежей по погашению основного долга хранится в таблице term-obl с term-obl.idnt = 3.
DEF VAR summ-t AS DECIMAL NO-UNDO.
DEF VAR iDate AS DATE NO-UNDO.
DEF TEMP-TABLE tt-term
FIELD end-date AS DATE
FIELD amt-rub AS DEC
FIELD itog AS DEC
.
DEF BUFFER bterm-obl FOR term-obl.
DEF BUFFER bloan FOR loan.
FIND FIRST tmprecid NO-LOCK NO-ERROR.
FIND FIRST bloan WHERE RECID(bloan) EQ tmprecid.id NO-LOCK NO-ERROR.
iDate = TODAY. /* По состоянию на сегодня (не требует пересчета договора) */
{empty tt-term}
FOR EACH bterm-obl WHERE bterm-obl.cont-code EQ bloan.cont-code
AND bterm-obl.contract EQ bloan.contract
AND bterm-obl.idnt EQ 3
NO-LOCK:
RUN summ-t.p (OUTPUT summ-t,
bloan.contract,
bloan.cont-code,
RECID(bterm-obl),
iDate).
CREATE tt-term.
ASSIGN
tt-term.end-date = bterm-obl.end-date
tt-term.amt-rub = bterm-obl.amt-rub
tt-term.itog = summ-t
.
END.
ПЛАНОВОЕ ПЛАТЕЖИ %%
График плановых платежей по процентам хранится в таблице term-obl с term-obl.idnt = 1.
DEF VAR summ-t AS DECIMAL NO-UNDO.
DEF TEMP-TABLE tt-term
FIELD end-date AS DATE
FIELD amt-rub AS DEC
FIELD itog AS DEC
.
DEF BUFFER bterm-obl FOR term-obl.
DEF BUFFER bloan FOR loan.
FIND FIRST tmprecid NO-LOCK NO-ERROR.
FIND FIRST bloan WHERE RECID(bloan) EQ tmprecid.id NO-LOCK NO-ERROR.
/* По состоянию на дату ситемной настройки ДатаОплаты% пересчета договора */
{empty tt-term}
FOR EACH bterm-obl WHERE bterm-obl.cont-code EQ bloan.cont-code
AND bterm-obl.contract EQ bloan.contract
AND bterm-obl.idnt EQ 1
NO-LOCK:
RUN summ-t1.p (OUTPUT summ-t,
RECID(bterm-obl),
RECID(bloan))
CREATE tt-term.
ASSIGN
tt-term.end-date = bterm-obl.end-date
tt-term.amt-rub = bterm-obl.amt-rub
tt-term.itog = summ-t
.
END.