CL_EXM_IM_RECN_CONTRACT_FAS13 - Example BAdI: Mapping of FAS 13 Requirements

CL_GUI_FRONTEND_SERVICES - Frontend Services   TXBHW - Original Tax Base Amount in Local Currency  
This documentation is copyright by SAP AG.

Functionality

This class gets a sample implementation for accruals and deferrals for leases based on the requirements set forth by FAS 13 and U.S. GAAP.

According to the basic guidelines of FAS 13, lease expense is to be recognized on a straight-line basis over the complete term of the lease, regardless of the timing of the actual payments.

The SUBSTITUTE method of example class CL_EXM_IM_RECN_CONTRACT_FAS13makes it possible to have the system automatically maintain special contract conditions needed to make the straight-line accruals/deferrals required by FAS 13.

This straight-line calculation, and the call of the SUBSTITUTE method, always takes place when a "contract" business object is changed or created.

The SUBSTITUTE method has the following tasks:

  • It specifies the total value of the contract or rental object.
    The total value is the sum of the receivable or payable items, relevant according to FAS13, in the cash flow of the contract or rental object.
  • It specifies the monthly straight-line value based on the determined calculation period, the value of the contract, and any accruals or deferrals or write-backs already posted.
  • It determines the accrual/deferral conditions on the basis of the straight-line value to reach thecorrect monthly costs or revenue. The system processes the accrual/deferral conditions automatically on a monthly basis.

Relationships

Example

Contract Term:
  • 01/01/2007 - 06/30/2007
Conditions:
  • Basic rent beginning 01/01/07: 1000

The calculated contract value is 6000. The average monthly rent is 600. The system generates a condition for posting the average monthly rent.

01.09.2006,, straightline rent,,600

The postings are as follows:
01.09.2006Debit accrual/deferral account, credit rent revenue 600
01.10.2006Debit accrual/deferral account, credit rent revenue 600
01.11.2006Debit accrual/deferral account, credit rent revenue 600
01.12.2006Debit accrual/deferral account, credit rent revenue 600
01.01.2007Debit accrual/deferral account, credit rent revenue 600
Debit receivables, credit rent revenue 1000
Debit rent revenue account, credit accrual/deferral -1000
01.02.2007Debit accrual/deferral account, credit rent revenue 600
Debit receivables, credit rent revenue 1000
Debit rent revenue account, credit accrual/deferral -1000
01.03.2007Debit accrual/deferral account, credit rent revenue 600
Debit receivables, credit rent revenue 1000
Debit rent revenue account, credit accrual/deferral -1000
01.04.2007Debit accrual/deferral account, credit rent revenue 600
Debit receivables, credit rent revenue 1000
Debit rent revenue account, credit accrual/deferral -1000
01.05.2007Debit accrual/deferral account, credit rent revenue 600
Debit receivables, credit rent revenue 1000
Debit rent revenue account, credit accrual/deferral -1000
01.06.2007Debit accrual/deferral account, credit rent revenue 600
Debit receivables, credit rent revenue 1000
Debit rent revenue account, credit accrual/deferral -1000

Unlike the procedure for normal contracts, the rent (relevant for payment) is posted on a monthly basis during the periodic posting run directly to the account for accruals/deferrals.

Set up your conditions and flows in Customizing accordingly. The rent is transferred to the settlement account using the object posting (reference flow type for relationship key 30).

Conditions
Condition typesDescription
Y011Basic office rent
Y012Basic warehouse rent
Y015Garage rent
Y019Rent reduction
YF00Straight-line rent
YF01Straight-line rent writeback
YF10Straight-line rent 2
YF11Straight-line rent writeback 2

Condition group
Condition groupDescription
YO01FASB13 Contract

Assign Conditions to GroupFlow Type
Flow TypeDescriptionDebit/credit indicator
Y100Basic office rent S Debit posting
Y101Basic office rent - subs. receivable S Debit posting
Y102Foll-up office rent credit memo H Credit posting
Y140Office rent transfer H Credit posting
Y141Subs. revbl. office rent transfer H Credit posting
Y142Office rent credit memo transfer S Debit posting
Y200Basic warehouse rent S Debit posting
Y201B. warehouse rent - subs. receivable S Debit posting
Y202Foll-up warehouse rent credit memo H Credit posting
Y240Warehouse rent transfer H Credit posting
Y241Transfer subs. rcvbl. warehouse rent H Credit posting
Y242Transfer foll-up credit warehouse rent S Debit posting
Y500Garage rent S Debit posting
Y501Garage rent subs. receivable S Debit posting
Y502Foll-up pstg garage rent credit memo H Credit posting
Y540Transfer garage rent H Credit posting
Y541Transfer subs. rcvbl. garage rent H Credit posting
Y542Transfer foll-up garage rent credit S Debit posting
Y900Rent reduction H Credit posting
Y901Subs. rcvbl incr. rent reduction H Credit posting
Y902Subs. rcvbl reduced rent reduction S Debit posting
Y940Transfer rent reduction H Credit posting
Y941Transfer incr. rent reduct. rcvbl H Credit posting
Y942Transfer reduced rent reduction S Debit posting
YD00SL rent transfer H Credit posting
YD01SL rent writeback transfer S Debit posting
YD10SL rent transfer H Credit posting
YD11SL rent writeback transfer S Debit posting
YF00Straight-line rent S Debit posting
YF01Straight-line rent writeback H Credit posting
YF10Straight-line rent S Debit posting
YF11Straight-line rent writeback H Credit posting

Reference Flow Types
RelationshipsFlow TypeReference Flow Type
10 Follow-Up Postings Due to Condition IncreaseY100Y101
10 Follow-Up Postings Due to Condition IncreaseY200Y201
10 Follow-Up Postings Due to Condition IncreaseY500Y501
10 Follow-Up Postings Due to Condition IncreaseY900Y901
10 Follow-Up Postings Due to Condition IncreaseYF00YF00
10 Follow-Up Postings Due to Condition IncreaseYF01YF01
10 Follow-Up Postings Due to Condition IncreaseYF10YF10
10 Follow-Up Postings Due to Condition IncreaseYF11YF11
20 Follow-Up Postings Due to Condition ReductionY100Y102
20 Follow-Up Postings Due to Condition ReductionY200Y202
20 Follow-Up Postings Due to Condition ReductionY500Y502
20 Follow-Up Postings Due to Condition ReductionY900Y902
20 Follow-Up Postings Due to Condition ReductionYF00YF01
20 Follow-Up Postings Due to Condition ReductionYF01YF00
20 Follow-Up Postings Due to Condition ReductionYF10YF11
20 Follow-Up Postings Due to Condition ReductionYF11YF10
30 Distribution Posting (Object Transfer Postings)Y100Y140
30 Distribution Posting (Object Transfer Postings)Y101Y141
30 Distribution Posting (Object Transfer Postings)Y102Y142
30 Distribution Posting (Object Transfer Postings)Y200Y240
30 Distribution Posting (Object Transfer Postings)Y201Y241
30 Distribution Posting (Object Transfer Postings)Y202Y242
30 Distribution Posting (Object Transfer Postings)Y500Y540
30 Distribution Posting (Object Transfer Postings)Y501Y541
30 Distribution Posting (Object Transfer Postings)Y502Y542
30 Distribution Posting (Object Transfer Postings)Y900Y940
30 Distribution Posting (Object Transfer Postings)Y901Y941
30 Distribution Posting (Object Transfer Postings)Y902Y942
30 Distribution Posting (Object Transfer Postings)YF00YD00
30 Distribution Posting (Object Transfer Postings)YF01YD01
30 Distribution Posting (Object Transfer Postings)YF10YD10
30 Distribution Posting (Object Transfer Postings)YF11YD11

Note

Debit-side and credit-side conditions are posted during the periodic posting run to the accruals/deferrals account using object transfer.

Account Symbols
Account symbolDescription
FAS13FAS13 accrual of revenue
FAS13_2FAS13 accrual of revenue 2

Assign Account Symbol to Flow Type
Flow TypeD/CAccount symbolD/CAccount symbol
Y100DD*S100
Y101DD*S100
Y102S100DD*
Y140S100SFAS13
Y141S100SFAS13
Y142SFAS13S100
Y200DD*S100
Y201DD*S100
Y202S100DD*
Y240S100SFAS13
Y241S100SFAS13
Y242SFAS13S100
Y500DD*S100
Y501DD*S100
Y502S100DD*
Y540S100SFAS13
Y541S100SFAS13
Y542SFAS13S100
Y900S100DD*
Y901S100DD*
Y902DD*S100
Y940SFAS13S100
Y941SFAS13S100
Y942S100SFAS13
YD00S100S100
YD01S100S100
YD10S100S100
YD11S100S100
YF00SFAS13S100
YF01S100SFAS13
YF10SFAS13_2S100
YF11S100SFAS13_2

Replace account symbols
Chart of AccountsAccount symbolAccount
INTFAS1399000Deferred Income
INTFAS13_299010Deferred Income

Notes

The attributes of the class have the following meanings:

  • MC_CONDPURPOSE_BOOKING,,
Condition purpose of FAS13 accrual/deferral conditions,,
  • MC_CALCRULE_FIXED,,
Calculation formula of FAS13 accrual/deferral conditions
  • MC_DISTRULE_MEAS
Distribution formula of FAS13 accrual/deferral conditions
  • MC_DISTRULE_MEAS_PAR_1
Parameter 1 of distribution formula of FAS13 accrual/deferral conditions
  • MC_DISTRULE_MEAS_PAR_2
Parameter 2 of distribution formula of FAS13 accrual/deferral conditions
  • MC_TERMNO_FAS13,,
Number of posting terms and frequency terms to be created for the accrual/deferral conditions,,
  • MC_TERMNO_FAS13_2,,
Number of frequency term to be created for the last (adjustment) accrual/deferral conditions
  • MC_TAXGROUP,,
Tax group of FAS13 accrual/deferral conditions
  • MC_TAXTYPE_VENDOR,,
Tax type of credit-side FAS13 accrual/deferral conditions,,
  • MC_TAXTYPE_CUSTOMER,,
Tax type of debit-side FAS13 accrual/deferral conditions,,,,
  • MC_CALCBEG_FAS13,,,,
Customer-specific field of contract data that defines a start date differing from that of the calculation period. Keep in mind, that in relation to possession dates, the calculation period can differ from the term of the contract.
  • MC_UNITPRICE_MARGIN
Defines a value that is used for capping changes to conditions. If a condition change is less than the value entered here, then the existing condition is not changed.
If you set this value too low, then rounding differences are corrected too often by the system, and the number of conditions increases. The system always corrects the rounding differences cumulatively in the last period.
  • MC_CALCULATION_BASE,,
Specifies which algorithm is used. The following algorithms are available:
  • mc_calculation_base = 1

This algorithm normally distributes the remaining value to the periods that are still open. In that case, the algorithm does not change the accrual/deferral conditions retroactively.
However, if a contract is terminated unexpectedly or conditions are changed so that all months up tothe contract end date are already posted, then the algorithm determines the remaining value. It posts this value as a one-time correction with retroactive effect back to the period in which the contract ends.
  • mc_calculation_base = 2

With this algorithm, the original start date of the calculation serves as the calculation start date.Any accrual/deferral records that may have been posted are corrected retroactively and distributed over the entire calculation period (term of the contract or object).
  • mc_calculation_base = 3

With this algorithm, the date of the condition changes serves as the new calculation start date. Thismeans that retroactively effective changes of conditions relevant for FAS13 also lead to correspondingtime corrections to the accrual/deferral conditions. If the system does not find any retroactively effectivechanges to conditions, then changes are distributed over the open periods using the straight-line approach (see mc_calculation_base = 1).
  • MC_CONDTABLE_FAS13
Name of the Z table that you need in order to be able to specify the conditions that are relevant for FAS13 (see SAP Note 907742)
ConditionFAS13 AcctTpDescriptionSL AcctTp
Y011YF00Basic office rent
Y012YF10Basic warehouse rent
Y015YF00Parking space/garage rent
Y019YF00Rent reduction
YF00YF01Straight-line rentX
YF01 Straight-line rent writebackX
YF10YF11Straight-line rent 2X
YF11 Straight-line rent writeback 2X


  • MC_CALCMETHPER
Calculation method of FAS 13 conditions: 30 days per month, or exact day (0.1)
  • MT_TIVCONDFAS13, MT_CONDITION, MF_CREATE_TEMPLATE_DONE and MO_OBJECT
These algorithms are used internally.

Further information



BAL_S_LOG - Application Log: Log header data   BAL Application Log Documentation  
This documentation is copyright by SAP AG.


Length: 32878 Date: 20120526 Time: 122120     triton ( 269 ms )