Bezeichnung des AlgorithmusXEN_Laufzeit_Neukredit_in_Monaten
KurzbezeichnungAlgorithmus zur Berechnung der vertraglich vereinbarten Laufzeit eines Kredits in Monaten
Verbale Beschreibung/Beispiele

Die Laufzeit wird nur für Geschäfte mit GFA185_Private_Wohnimmobilienfinanzierung_Kennzeichen = WAHR und Neukreditvergaben ermittelt.

Vom Algorithmus ausgeschlossen sind Kredite mit Vertragsende = "99991231" und GF82_Kuendigungsfrist_Code = "Keine Frist".

Es wird die Differenz zwischen dem letzten Neukreditvergabe-Ereignisdatum und dem Geschäftsende errechnet. Gab es in der Vergangenheit kein solches Ereignis, so wird der Geschäftsbeginn herangezogen. Gibt es kein Geschäftsende, so wird stattdessen der nächstmögliche Auflösungstermin verwendet.

Im Unterschied zu SC_Ursprungslaufzeit_Code bekommt die Neukreditvergabe bei einer Rahmenerhöhung eine eigene Laufzeit.

Kommt vor in/wird verwendet fürGFA188_Laufzeit_Neukredit_in_Monaten
Formale Beschreibung

FUNKTION XEN_Laufzeit_Neukredit_in_Monaten (AI_Mandant MA, AI_Geschaeftsfall_ID gfId, AI_Stichtag_Datum date)

 //Ermittlung bestimmter Eigenschaften des betrachteten Geschäftsfalls

vBeginn = SELEKTIERE GF.GF17_Geschaeftsbeginn_Datum VON GF_Geschaeftsfall

vEnde = SELEKTIERE GF.GF52_Geschaeftsende_Datum VON GF_Geschaeftsfall

kuendigungsfrist = SELEKTIERE GF.GF82_Kuendigungsfrist_Code VON GF_Geschaeftsfall

nTermin = SELEKTIERE GF.GF50_Naechstmoeglicher_Aufloesungstermin_Datum VON GF_Geschaeftsfall

ereignisDatum = SELEKTIERE EE.AI_Ereignis_Datum VON EE_Ereignis VON GF_Geschaeftsfall MIT EE.AI_Ereignisart_Code ISTGLEICH "Rahmenerhöhung (RA)"

relevanterKredit = SELEKTIERE GF.GFA185_Private_Wohnimmobilienfinanzierung_Kennzeichen VON GF_Geschaeftsfall

neukreditvergabe = SELEKTIERE GFW.Wert VON GFW_Geschaeftsfall_Wert MIT GFW.AI_Wertart_Code ISTGLEICH "Neukreditvergabe (NV)" VON GF_Geschaeftsfall

//Verarbeitung sonstiger Geschäftsfälle

WENN (relevanterKredit ISTGLEICH WAHR UND neukreditvergabe > 0) DANN

WENN(NICHT(ISTLEER(ereignisDatum))) DANN

beginn = ereignisdatum

SONST

beginn = vBeginn

ENDE

WENN (vEnde ISTGLEICH "99991231") DANN

WENN(kuendigungsfrist UNGLEICH "Keine Frist (KF)") DANN

WENN (nTermin UNGLEICH "99991231") DANN

ende = nTermin

ENDE

ENDE

SONST

ende = vEnde

ENDE

WENN(beginn UNGLEICH NULL UND ende UNGLEICH NULL) DANN

diff = XEN_Laufzeitenberechnung(beginn, ende)

//Gibt die zweite Stelle (Monate) des Vektors zurück

m_diff = diff[2]

//Gibt die dritte Stelle (Jahre) des Vektors zurück

j_diff = diff[3]

rValue = m_diff + j_diff * 12

RUECKGABE rValue

ENDE

ENDE

FUNKTIONSENDE




  • No labels