Dieser Algorithmus ist gültig ab 30.06.2022.

Bezeichnung des AlgorithmusXEN_FinRep_Produkt
KurzbezeichnungAlgorithmus zur Ermittlung der Produktklassifizierung gem. FINREP
Verbale Beschreibung/BeispieleDer Algorithmus ordnet anhand diverser Eigenschaften den einzelnen Geschäftsfällen ein FinRep Produkt zu. 
Kommt vor in/wird verwendet fürGKA10_FinRep_Produkt_Code
Formale Beschreibung

FUNKTION XEN_FinRep_Produkt (AI_Geschaeftsfall_ID gfId, AI_Mandant MA, AI_Stichtag_Datum repDate, AI_Kons_ID konsId)

geschaeftsfallkategorie = SELEKTIERE GF.GF00_Geschaeftsfallkategorie_Code VON GF_Geschaeftsfall

ifrsKz = SELEKTIERE MO.MO04_IFRS_Kennzeichen VON MO_Meldeobjekt MIT MO.AI_Kons_ID ISTGLEICH konsId

BilPoIFRS = SELEKTIERE GF.GF152_Bilanzposition_IFRS_Code VON GF_Geschaeftsfall

BilPoUGB = SELEKTIERE GKA12_Bilanzposition_FinRep_NGAAP_Code VON GK_Geschaeftsfall_Konsolidierungssicht

Derivattyp = SELEKTIERE GF.GF42_Derivattyp_Code VON GF_Geschaeftsfall

Underlyingklasse = SELEKTIERE GF.GF43_Underlying_Klasse_Code VON GF_Geschaeftsfall

SicherungsgeberKZ = SELEKTIERE GF.GFA162_Mandant_Sicherungsgeber_Kennzeichen VON GF_Geschaeftsfall

OTC_KZ = SELEKTIERE GF.GF39_OTC_Kennzeichen VON GF_Geschaeftsfall

WPKlass = SELEKTIERE WM.WMA28_Wertpapierklassifikation_Code VON WM_Wertpapier_MS VON GF_Geschaeftsfall

ShortKZ = SELEKTIERE GF.GF40_Short_Position_Kennzeichen VON GF_Geschaeftsfall

RepoSicherheitKZ = SELEKTIERE ST.ST04_Repo_Sicherheit_Kennzeichen VON ST_Sicherheiten_Stammdaten VON SZ_Sicherheiten_Zerlegung MIT SZ.AI_Zerlegungsansatz_Code ISTGLEICH "FinRep (FIN)" VON GE_Geschaeftsfall_Exposure VON GF_Geschaeftsfall

AnVerkauf = SELEKTIERE GK.GKA18_Kredituebertragung_An_Verkauf_Code VON GK_Geschaeftsfall_Konsolidierungssicht

Kredituebertragung = SELEKTIERE GF.GKA20_Kredituebertragung_Art_Code VON GF_Geschaeftsfall

Laufzeit = SELEKTIERE GF.GFA83_Ursprungslaufzeit_Code VON GF_Geschaeftsfall

Kuendfrist = SELEKTIERE GF.GF82_Kuendigungsfrist_Code VON GF_Geschaeftsfall

BezArt = SELEKTIERE GB.GB01_Beziehungsart_Code VONGB_Geschaeftsfall_Sachkonto_Sicherheiten_BeziehungMIT GB.AI_Geschaeftsfall_ID2ISTGLEICHgfIdUND (GB.AI_Mandant2ISTGLEICHMAODER (ISTLEER(GB.AI_Mandant2) UND GB.AI_MandantISTGLEICHMA))

Bilanzseite = SELEKTIERE GK.GKA01_Bilanzseite_Code VON GK_Geschaeftsfall_Konsolidierungssicht

WPKlassFinRep = SELEKTIERE WM.WM15_Wertpapierklassifikation_gem_FinRep_Code VON WM_Wertpapier_MS

CoveredBondVorrang = SELEKTIERE WM.WM44_Vorrangige_Anlageklasse_Code VON WM_Wertpapier_MS

InhaberKI = SELEKTIERE EM.EMA41_Kreditinstitut_gem_FinRep_Kennzeichen VON EM_Einheit_MS MIT KR.AI_Rolle_Code ISTGLEICH "Inhaber (IH)"

rValue = NULL


WENN ifrsKz ISTGLEICH WAHR DANN

BilPo = BilPoIFRS

SONST

BilPo = BilPoUGB

ENDE


//Cash balances at central banks und other demand deposits - für IFRS und UGB

WENN (geschaeftsfallkategorie ENTHAELT ("Einmalkredit (exkl. Kreditlinie) (X)", "Kreditlinie (Y)", "Wechselkredit (B)", "Reolvierender Kredit (exkl. Überziehungskredit) (V)", "Überziehungskredit (W)", "Barvorlage (E)")  UND (BilPo ISTGLEICH "Guthaben bei Zentralbanken und andere Sichteinlagen (IGZAS)" ODER BilPo ISTGLEICH "Guthaben bei Zentralbanken (GUZEB)") DANN

WENN InhaberKI ISTGLEICH WAHR DANN

rValue"Andere Sichteinlagen (CODD)"

SONST

rValue"Sichteinlagen bei Zentralbanken (CBCB)"

ENDE

SONST

//Derivate

WENN (geschaeftsfallkategorie ISTGLEICH "Derivate (Q)") DANN

WENN (Derivattyp ISTGLEICH "Swap (SWAP)" UND Underlyingklasse ENTHAELT ("Credit Default (CD)", "Total Return (TR)") UND SicherungsgeberKZ ISTGLEICH WAHR) DANN

//Es handelt sich um CDS Garantien, die Off-Balance darzustellen sind und damit keine Derivate lt. FinRep Produkt

rValue = "Erteilte Kreditzusagen (CDSG)"

SONST WENN (Underlyingklasse ISTGLEICH "Interest Rate (INTRATE)") DANN

WENN (Derivattyp ISTGLEICH "Option (OPT)") DANN

WENN (OTC_KZ ISTGLEICH WAHR) DANN

rValue = "Zinssatz - Nicht börsengehandelte Optionen (DIROCOP)"

SONST

rValue = "Zinssatz - Börsengehandelte Optionen (DIROMOP)"

ENDE

SONST WENN (OTC_KZ ISTGLEICH WAHR) DANN

rValue = "Zinssatz - Sonstige nicht börsengehandelte Instrumente (DIROCOD)"

SONST

rValue = "Zinssatz - Sonstige börsengehandelte Instrumente (DIROMOD)"

ENDE

SONST WENN (Underlyingklasse ISTGLEICH "Equity (EQU)") DANN

WENN (Derivattyp ISTGLEICH "Option (OPT)") DANN

WENN (OTC_KZ ISTGLEICH WAHR) DANN

rValue = "Eigenkapital - Nicht börsengehandelte Optionen (DEQOCOP)"

SONST

rValue = "Eigenkapital - Börsengehandelte Optionen (DEQOMOP)"

ENDE

SONST WENN (OTC_KZ ISTGLEICH WAHR) DANN

rValue = "Eigenkapital - Sonstige nicht börsengehandelte Instrumente (DEQOCOD)"

SONST

rValue = "Eigenkapital - Sonstige börsengehandelte Instrumente (DEQOMOD)"

ENDE

SONST WENN (Underlyingklasse ENTHAELT ("Foreign Exchange (FE)", "Cross Currency Interest Rate (CC)", "Commodity Precious Metals (Gold only) (CG)")) DANN

WENN (Derivattyp ISTGLEICH "Option (OPT)") DANN

WENN (OTC_KZ ISTGLEICH WAHR) DANN

rValue = "Fremdwährungen und Gold - Nicht börsengehandelte Optionen (DFXOCOP)"

SONST

rValue = "Fremdwährungen und Gold - Börsengehandelte Optionen (DFXOMOP)"

ENDE

SONST WENN (OTC_KZ ISTGLEICH WAHR) DANN

rValue = "Fremdwährungen und Gold - Sonstige nicht börsengehandelte Instrumente (DFXOCOD)"

SONST

rValue = "Fremdwährungen und Gold - Sonstige börsengehandelte Instrumente (DFXOMOD)"

ENDE

SONST WENN (Underlyingklasse ENTHAELT ("Credit Default (CD)", "Credit Spread (CS)", "Total Return (TR)", "Credit Other (CO)")) DANN

WENN (Derivattyp ISTGLEICH "Option (OPT)" UND Underlyingklasse ISTGLEICH "Credit Spread (CS)") DANN

rValue = "Kreditspreadoption (DCRCSO)"

SONST WENN (Derivattyp ISTGLEICH "Swap (SWAP)" UND Underlyingklasse ISTGLEICH "Credit Default (CD)") DANN

rValue = "Kreditausfallswap (DCRCDS)"

 SONST WENN (Derivattyp ISTGLEICH "Swap (SWAP)" UND Underlyingklasse ISTGLEICH "Total Return (TR)") DANN

rValue = "Kredit - Gesamtertragsswap (DCRTRS)"

SONST

//Alle anderen kommen in Kredit sonstige (Derivate)

rValue = "Kredit - Sonstige (DCROD)"

ENDE

SONST WENN (Underlyingklasse ENTHAELT ("Commodity without Precious Metals (CW)", "Commodity Precious Metals (without Gold) (CM)")) DANN

rValue = "Waren (DCD)"

SONST WENN (Underlyingklasse ENTHAELT ("Other (OT)", "Indices (ID)")) DANN

rValue = "Sonstige (DOD)"

ENDE

ENDE

//Equity Instruments incl. Short Positions, other financial liabilities ohne leasing

WENN (geschaeftsfallkategorie ISTGLEICH "Wertpapiere (H)" UND WPKlass ENTHAELT ("Aktien (AKT)", "Partizipationsscheine (PART)", "Sonstige Wertpapiere (SONS)") ODER (geschaeftsfallkategorie ENHAELT ("Investmentfonds (I)", "Anteilsrechte nicht in Form von Wertpapieren (K)")) DANN

WENN (Bilanzseite ENTHAELT ("Aktiv in der Bilanz (AKT)", "Nicht in der Bilanz (NIB)")) DANN

rValue = "Eigenkapitalinstrumente (EQI)"

SONST WENN (Bilanzseite ISTGLEICH "Passiv in der Bilanz (PAS)") DANN

WENN (ShortKZ ISTGLEICH WAHR) DANN

rValue = "Verkaufspositionen - Eigenkapitalinstrumente (EQIS)"

SONST WENN (geschaeftsfallkategorie ISTGLEICH "Wertpapiere (H)" UND WPKlass ISTGLEICH "Sonstige Wertpapiere (SONS)") DANN

rValue = "Sonstige finanzielle Verbindlichkeiten (OFL)"

ENDE

ENDE

ENDE

//Debt Instruments incl. Short Positions, Debt securities issued

WENN (geschaeftsfallkategorie ISTGLEICH "Wertpapiere (H)" UND WPKlass ENTHAELT ("Schuldverschreibung (SCHV)", "Credit Linked Note (CLN)")) ODER (geschaeftsfallkategorie ISTGLEICH "Verbriefung (J)" ) DANN

WENN (Bilanzseite ENTHAELT ("Aktiv in der Bilanz (AKT)", "Nicht in der Bilanz (NIB)")) DANN

rValue = "Schuldverschreibungen (DS)"

SONST WENN (Bilanzseite ISTGLEICH "Passiv in der Bilanz (PAS)") DANN

WENN (ShortKZ ISTGLEICH WAHR) DANN

rValue = "Verkaufspositionen - Schuldverschreibungen (DSS)"

// Debt securities issued

SONST WENN (WPKlassFinRep ISTGLEICH "Einlagenzertifikat (EZ)") DANN

rValue = "Einlagenzertifikate (DICD)"

SONST WENN (WPKlassFinRep ISTGLEICH "Forderungsgedecktes Wertpapier (FW)") DANN

rValue = "Forderungsgedeckte Wertpapiere (DIABS)"

SONST WENN (WPKlassFinRep ISTGLEICH "Gedeckte Schuldverschreibung gem. OGAW-Richtlinie (GO)") DANN

WENN (CoveredBondVorrang IST NICHT NULL) DANN

rValue = "Gedeckte Schuldverschreibungen (DICB)"

SONST

rValue = "Sonstige begebene Schuldverschreibungen - Nicht wandelbar (DIONC)"

ENDE

SONST WENN (WPKlassFinRep ENTHAELT ("Hybrider Vertrag (exkl. Strukturierte Schuldverschreibung) (HE)", "Strukturierte Schuldverschreibung (ST)")) DANN

rValue = "Hybride Verträge (DIHYB)"

SONST WENN (WPKlassFinRep ISTGLEICH "Sonstige begebene Schuldverschreibung - wandelbares zusammengesetztes Finanzinstrument (BSZF)") DANN

rValue = "Sonstige begebene Schuldverschreibungen - Wandelbare zusammengesetzte Finanzinstrumente (DIOC)"

SONST WENN (WPKlassFinRep ISTGLEICH "Sonstige begebene Schuldverschreibung - nicht wandelbar (BSNW)") DANN

rValue = "Sonstige begebene Schuldverschreibungen - Nicht wandelbar (DIONC)"

ENDE

ENDE

ENDE

//Loans and advances - 2 Behandlungen Advances that are not loans sind extra

WENN (geschaeftsfallkategorie ENTHAELT ("Sonstige Forderungen (AB)","Sonstige Aktiva/Passiva aus Zwischenkonten (T)", "Sonstige Aktiva/Passiva aus Schwebender Verrechnung (U)")) DANN

WENN(Bilanzseite ISTGLEICH("Aktiv in der Bilanz (AKT)") DANN

rValue = "Vorauszahlungen außer Darlehen (LANL)"

SONST WENN(Bilanzseite ISTGLEICH("Passiv in der Bilanz (PAS)") DANN

rValue = "Sonstige finanzielle Verbindlichkeiten (OFL)"

ENDE

ENDE

WENN (geschaeftsfallkategorie ENTHAELT ("Wechselkredit (B)", "Kreditkartenkredit (C)", "Barvorlagen (E)", "Operating Leasing (F)", "Finance Leasing (G)", "Revolvierender Kredit (exkl. Überziehungskredit) (V)", "Überziehungskredit (W)", "Einmalkredit (exkl. Kreditlinie) (X)", "Kreditlinie (Y)")) DANN

WENN (RepoSicherheitKZ ISTGLEICH WAHR) DANN

rValue = "Darlehen aus umgekehrten Pensionsgeschäften (LRR)"

SONST WENN (AnVerkauf ENTHAELT ("Ankauf ohne Einfluss auf die Bilanz (AO)",  "Ankauf mit Einfluss auf die Bilanz (AM)")) DANN

// Gem. Annex V (3.0) sind Wechselkredite "Trede receivables" ie Forderungen aus Lieferungen und Leistungen

WENN (geschaeftsfallkategorie ISTGLEICH "Wechselkredit (B)" ODER Kredituebertragung ENTHAELT ("Factoring/Forfaitierung mit Regress (FMR)", "Factoring/Forfaitierung ohne Regress (FOR)")) DANN

rValue = "Forderungen aus Lieferungen und Leistungen (LTR)"

SONST

rValue = "Sonstige befristete Darlehen (LOTL)"

ENDE

SONST WENN (AnVerkauf ISTGLEICH "Kein An-/Verkauf (KK)" DANN

WENN (geschaeftsfallkategorie ISTGLEICH "Kreditkartenkredit (C)") DANN

rValue = "Kreditkartenschulden (LCC)"

SONST WENN (geschaeftsfallkategorie ENTHAELT ("Operating Leasing (F)", "Finance Leasing (G)")) DANN

rValue = "Finanzierungs-Leasingverhältnisse (LFL)"

SONST WENN (Laufzeit ENTHAELT ("keine Frist (KF)", "1 Tag (1T)")) DANN

rValue = "Auf Anforderung und kurzfristig (LODSN)"

SONST

rValue = "Sonstige befristete Darlehen (LOTL)"

ENDE

ENDE

ENDE

//Deposits

WENN (geschaeftsfallkategorie ISTGLEICH "Einlagen (L)" DANN

WENN (BezArt ISTGLEICH "Pensionsgeschäft echt (PE)") DANN

rValue = "Pensionsgeschäfte (DREP)"

SONST WENN (Laufzeit ENTHAELT ("keine Frist (KF)", "1 Tag (1T)")) DANN

WENN (Kuendfrist ENTHAELT ("keine Frist (KF)", "1 Tag (1T)")) DANN

rValue = "Girokonten/Tagesgeldkonten (DON)"

SONST

rValue = "Einlagen mit vereinbarter Kündigungsfrist (DRAN)"

ENDE

SONST

rValue = "Einlagen mit vereinbarter Laufzeit (DAM)"

ENDE

ENDE

ENDE

RUECKGABE rValue

FUNKTIONSENDE

  • No labels