cancel
Showing results for 
Search instead for 
Did you mean: 

SAP BPC: TMVL function not working

Former Member
0 Kudos

Hi experts,

I am having some problems with TMVL function. I want to record amounts in future periods with the following script but it seems that BPC doesn't recognize TMVL function:

*XDIM_MEMBERSET TIME =%TIME_SET%,TMVL(12,%TIME_SET%)

*SELECT(%SCENARIO%,"[ID]","SCENARIO","CF_SCRIPT='Y'")

*XDIM_MEMBERSET SCENARIO = %SCENARIO%

*SELECT(%ACCOUNTS%,"[ID]","ACCOUNT","CF_SCRIPT='EXTCF' or CF_SCRIPT='INTCF' or CF_SCRIPT='VATCF'")

*XDIM_MEMBERSET ACCOUNT = %ACCOUNTS%

*SELECT(%AUDIT%,"[ID]","AUDITTRAIL","DATASRC_TYPE='I'")

*XDIM_MEMBERSET AUDITTRAIL = %AUDIT%

*XDIM_MEMBERSET STATUS <ALL>

*XDIM_MEMBERSET RPTCURRENCY = LC

*XDIM_MEMBERSET COST_CENTRE = <ALL>

*XDIM_MEMBERSET SCOPES = SC_PAY

*WHEN SCENARIO.CF_SCRIPT

*IS "Y"    

*WHEN TIME.PERIOD    

*IS "APR"

          *REC(FACTOR=-1,ACCOUNT=CHARGE_002,SCOPES=NO_SCOPE,TIME=TMVL(12,%TIME_SET%))    

*IS "MAY"

          *REC(FACTOR=-1,ACCOUNT=CHARGE_002,SCOPES=NO_SCOPE,TIME=TMVL(11,%TIME_SET%))

*ENDWHEN

*ENDWHEN

*COMMIT

In the log of the package, as you can see in the lines below, the system has not calculated the time to be posted into:

LC,CHARGE_002,INPUT_INTERNAL,SDBS,FORECAST_Q3_V1_15.16,NO_SCOPE,ST_ACT,,151922.4100000000

LC,CHARGE_002,INPUT_INTERNAL,SDIN,FORECAST_Q3_V1_15.16,NO_SCOPE,NO_STATUS,,0.0000000000

The time periods should be shown between the two commas.

Do you have any idea why is function TMVL not working?

Thanks in advance.

Best regards,

Jorge

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Jorge,

what is the value of %TIME_SET% you used when running the script? Based on that, what would the target period be and does that exist in your dimension?

Also, in the MS version of BPC you might be able to use TIME=NEXT(12) to achieve a 12 period shift from the current time. See also online help

Former Member
0 Kudos

Thank you very much Arnold!

We are using MS version and therefore we had to use TIME=NEXT statements.

Best regards,

Jorge

Answers (0)