The new wiki link for this data flow is here:
Please update the new doc there and no longer here.
Contents
Objective of the application
ECC changes
Data Source – Master Data
Class
Data Source – Transaction Data
BW Changes
Info Area in BW
ODP Source System
Info Objects
ADSOs
Propagation layer
Business Transformation Layer
Cubes
Reporting Layer
Multi provider
Data Flow
Process Chains
This page provides all the technical and detailed documentation concerning the "RE-FX" application in BW,
IFRS 16 is effective for annual reporting periods beginning on or after 1st January 2019, with earlier application permitted (as long as IFRS15 is also applied). With IFRS 16, it is no longer required to treat financial and operational leases differently from an accounting perspective and therefore this new leasing standard eliminates nearly all "off-balance" sheet accounting for leases. The goal of the new lease accounting rules is to increase transparency and to enable the users of financial statements to assess the impact of their organization's leases on the financial position and cash flow directly from its balance sheet. To meet that objective, a lessee should recognize assets and liabilities arising from a lease.
Enhanced 0RECONTRACT_ATTR data source, added new fields, and written logic in class "Z0RECONTRACT_ATTR" under "DATA_TRANSFORM" method.

Data Source - 0REFX_6
Activated 0REFX_6 from standard SAP business content in both PF1 and WP1 sources.
ODP enabled data source only in WP1 not in PF1. Prerequisite and reason being for having ODP enablement is, source system must be on EHP8.
![]()
Flexible Real Estate Management (IA_REFX) is the newly created info area in BW system. All the newly created objects for RE-FX, like Info objects, DSOs, Cubes and corresponding data flows are created under this info area.
There is a new ODP system created in BW named WP1_ODP. Using this ODP source system data is being extracted using SAP's new ODP mechanism, which give more flexibility in terms of connectivity and data extraction.
Note: Only WP1 data is extracted using ODP connection. Where, PF1 is still using the RFC connection and not ODP connection.
Info object Contract (C_RECONTR) is enhanced with new attributes in BW for this RE-FX data flow under info area IA_REFX_MD.


The enhanced info object Contract (C_RECONTR) is added with attributes and used in data flows of RE-FX and FI-GL.
Below are the info objects created and added as attributes of C_RECONTR.
Created new IOBJs Asset Sub-number (C_ASSET2), Convergence ID (C_ZZCONV), Vendor Contract ID (C_ ZZVENDI), Valuation memo (C_VALMEMO), Frequency (C_FREQUEN), Frequency unit (C_FREQUUN), Frequency (C_VALREF). Also added Vendor number (C_VENDID), Main Asset number (C_AT_MAN2) as attributes of Contract (C_RECONTR).
There are four ADSOs created for RE-FX.
Please see the attached field-mapping document, which consists of field-to-field mapping from source system and then up to the cube level along with logic for the custom characteristics and key figures.


Two ADSOs (ABREFX01/02) as Business transformation layer
K_REPAYMT and K_ACCLINT new KF have been created and managed in BTL DSOs and Reporting Layers Cubes
And there is a logic written in transformation for K_REPAYMT and K_ACCLINT as per the business requirement.
Only Payment entries with Flow Type 0RE_FLW_TP = I400 have to be enhanced with new KF K_REPAYMT and K_ACCLINT
For each payment entry (P), the idea is to identify previous Payment (PrP) assigned to the same Contract* (meaning entries such as Due date 0NETDUEDATE < P Due date), and to sum up Interests collected in the meantime
*Same Contract 0RECONTRACT means also same Source System 0LOGSYS + same Company Code 0COMPCDE
Case 1: If no found entry (payment P is the 1st one or the only one in the Contract)
Selection of all Interest entries with Flow Type = I300/I301/I302 assigned to the same Contract with I Due date =< P Duedate
If no found entry, update of P Payment entry with:
K_ACCLINT = 0
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
If found entries with I Due date starting with 01
Sum up of 0CFAMNTNET of all Interest entries with I Due date < P Due date, and update of P Payment entry with:
K_ACCLINT = sum up result (incl. I300 + I301 - I302)
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
If found entries with I Due date starting with <> 01 (and not empty)
Sum up of 0CFAMNTNET of all Interest entries with I Due date =< P Due date, and update of P Payment entry with:
K_ACCLINT = sum up result (incl. I300 + I301 - I302)
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
Case 2: If N found entries, (payment P is not the 1st one in the Contract)
Selection of the latest previous one (PrP)
If PrP Period 0FISCPER = (P Period or P Period-1), meaning if previous payment is in same period or period-1 (ex. 11.2018 or 12.2018 for 12.2019)
Selection of all Interest entries with Flow Type = I300/I301/I302 assigned to the same Contract with PrP Due date =< I Due date =< P Duedate
If no found entry, update of P Payment entry with:
K_ACCLINT = 0
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
If found entries with I Due date starting with 01
Sum up of 0CFAMNTNET of all Interest entries with I Due date < P Due date, and update of P Payment entry with:
K_ACCLINT = sum up result (incl. I300 + I301 - I302)
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
If found entries with I Due date starting with <> 01 (and not empty)
Sum up of 0CFAMNTNET of all Interest entries with I Due date = P Due date, and update of P Payment entry with:
K_ACCLINT = sum up result (incl. I300 + I301 - I302)
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
Else, meaning if previous payment is not in same period or period-1
Selection of all Interest entries with Flow Type = I300/I301/I302 assigned to the same Contract with PrP Due date =< I Due date =< P Duedate
If no found entry, update of P Payment entry with:
K_ACCLINT = 0
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
If found entries with I Due date starting with 01
Sum up of 0CFAMNTNET of all Interest entries with PrP Due =< I Due date < P Due date, and update of P Payment entry with:
K_ACCLINT = sum up result (incl. I300 + I301 - I302)
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
If found entries with I Due date starting with <> 01 (and not empty)
Sum up of 0CFAMNTNET of all Interest entries with PrP Due < I Due date =< P Due date, and update of P Payment entry with:
K_ACCLINT = sum up result (incl. I300 + I301 - I302)
K_REPAYMT = 0CFAMNTNET - K_ACCLINT
Please see attached spreadsheet, which contains above logic as well as few examples to explain the logic. This spreadsheet also contains information on fields mapping from source system to propagation layer and further, up to Reporting Layer.

There are two cubes created for RE-FX. One for CRREFX01 - CAPEX REFX data – Rhodia and other for CRREFX02 - CAPEX REFX data – Solvay
Cubes CRREFX01 and CRREFX02 are included in Multi provider (MVFICX01) and required fields have been mapped as per business requirement. 
Please find the below link for MP mappings.


Dependency – While loading C_RECONTR there are few dependent info objects need to be loaded first (C_COSTCTR and C_ASSET2) as these are being used in the transformation routine for LOOKUP.
Process Chain | Code | Type | Frequency | Comments |
|---|---|---|---|---|
REFX: TD - D - CAPEX - Rhodia | PC_REFX_01 | SLAVE |
|
|
REFX: TD - D - CAPEX - Solvay | PC_REFX_02 | SLAVE |
|
|