DATA([d/Account]=[d/Account].[p/SUBACC])=RESULTLOOKUP()
IF [d/Account].[p/SUBACC] != "" THEN
DELETE([d/Account]=[d/Account])
ENDIF
//Set the scope of date dimension from 202003 to 202012
MEMBERSET [d/Date] = "202003" to "202012"
//Get monthly depreciation value, which equals to acquisition cost / duration of a depreciation
DATA ([d/Account]= "12107000", [d/Flow]= "F_INC") =
RESULTLOOKUP([d/Account]="12103000", [d/Flow]= "F_INC", [d/Date]= "202003") / RESULTLOOKUP([d/Account]="90007000", [d/Flow]= "#", [d/Date]= "202003")
////Loop with the defined date dimension scope, in this case it is from 201803 to 201812
//FOREACH [d/Date]
// //Calculate the ending balance
// DATA ([d/Account]= "12107000", [d/Flow]= "F_CLO") =
// RESULTLOOKUP ([d/Account]= "12107000", [d/Flow]= "F_OPE") + RESULTLOOKUP ([d/Account]= "12107000", [d/Flow]= "F_INC")+ RESULTLOOKUP ([d/Account]="12107000", [d/Flow]="F_DEC")
// //Carry forward previous closing value to current month's opening value
// DATA ([d/Account]= "12107000", [d/Flow]= "F_OPE", [d/Date]= NEXT()) = RESULTLOOKUP([d/Account]="12107000", [d/Flow]= "F_CLO" )
//ENDFOR
DATA() = CARRYFORWARD([d/Flow] ,"F_OPE" ,"F_CLO" ,"F_OPE"+ "F_INC"+"F_DEC" )
MEMBERSET [d/Account] = "CLOSING"
MEMBERSET [d/Date] = "202101" to "202112"
DATA([d/Account] = "CLOSING") = RESULTLOOKUP ( [d/Account]="CLOSING", [d/Date] ="202012")
MEMBERSET [d/Account]=("TURNOVERS","CLOSING")
FOREACH [d/Date]
//Before performing any calculations, copy the closing amount of the prior period to the opening of current period.
DATA ([d/Account]= "OPENING") = RESULTLOOKUP ([d/Account]= "CLOSING", [d/Date]= PREVIOUS())
//Forecast turnover number of current period based on the historical turnover rate of the same period last year. current year’s turnover rate = current year’s opening amount * (previous year’s turnovers / previous year’s opening amount)
DATA ([d/Account]= "TURNOVERS") = ROUND(RESULTLOOKUP ([d/Account]= "OPENING") * RESULTLOOKUP ([d/Account]= "TURNOVERS", [d/Date]= PREVIOUS (12)) / RESULTLOOKUP ([d/Account]= "OPENING", [d/Date]= PREVIOUS (12)),0)
//Update current period’s closing amount by subtracting turnovers from the opening amount
DATA ([d/Account]= "CLOSING") = RESULTLOOKUP ([d/Account]= "OPENING") - RESULTLOOKUP ([d/Account]= "TURNOVERS")
ENDFOR
CONFIG.GENERATE_UNBOOKED_DATA = OFF
CONFIG.FLIPPING_SIGN_ACCORDING_ACCTYPE = ON
MEMBERSET [d/Date] = "202001" TO "202012"
MEMBERSET [d/Audit] = "10"
IF [d/Account] = ("BSA_IC_AR" , "BSA_IC_AP") Then
DATA ([d/Entity] = ELIMMEMBER ([d/Entity].[h/HIERARCHY], [d/Entity] , [d/Interco_Entity], [d/Entity].[p/ELIMINATION] = "Y" ), [d/Audit] = "30" ) = RESULTLOOKUP () * -1
DATA ([d/Entity] = ELIMMEMBER ([d/Entity].[h/HIERARCHY], [d/Entity] , [d/Interco_Entity], [d/Entity].[p/ELIMINATION] = "Y" ), [d/Account] = [d/Account].[p/ELIMACC], [d/Audit] = "30" ) = RESULTLOOKUP ()
ENDIF
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
13 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 | |
2 | |
2 | |
2 |