Skip to Content
avatar image
Former Member

Script logic question on Year property and to avoid *For/*Next in the logic

Hi,
Couple of questions on the script logic below

1) Doesn't the system look for the "Year" property in the "category" dimension where I used %YEAR%.INP in the script below? Year property in the category that I selected has 2016, but the script below is using 2017.INP.

2) The below script works fine with *FOR/*NEXT. If I remove *FOR/*NEXT logic to improve the performance and replace the row containing Time dimension to the line below, it is summing up the values for 2016.01, 2016.02, 2016.03.... and posting the summed number in each months. Do you know how this can be corrected?
*DIM TIME WHAT = %TIME_SET%; WHERE = <<<; USING = %YEAR%.INP;


*XDIM_MEMBERSET CATEGORY = %CATEGORY_SET%
*XDIM_MEMBERSET TIME = %TIME_SET%
*XDIM_MEMBERSET EMPLOYEE = BAS(EXISTING_EMP)
*XDIM_MEMBERSET COSTCENTER = %COSTCENTER_SET%
*XDIM_MEMBERSET HC_LOCATION = %HC_LOCATION_SET%
*XDIM_MEMBERSET HC_COMPANY = %HC_COMPANY_SET%
*XDIM_MEMBERSET HC_POSITION = %HC_POSITION_SET%
*XDIM_MEMBERSET AUDITTRAIL = INPUT,HC_CALC,WORKDAY
*XDIM_MEMBERSET RPTCURRENCY = LC
*XDIM_MEMBERSET HC_ACCOUNT = SPREAD_YEAR,SALARIES_FTE,SALARIES_ANNUAL

*FOR %TIM%=%TIME_SET%
*RUNALLOCATION
*FACTOR = USING
*DIM AUDITTRAIL WHAT = INPUT; WHERE = HC_CALC; USING = WORKDAY;
*DIM COSTCENTER WHAT = CC_NONE; WHERE = %COSTCENTER_SET%; USING = <<<;
*DIM EMPLOYEE WHAT = NO_EMP; WHERE = BAS(EXISTING_EMP); USING = <<<;
*DIM HC_ACCOUNT WHAT = SPREAD_YEAR; WHERE = SALARIES_FTE; USING = SALARIES_ANNUAL;
*DIM HC_COMPANY WHAT = E_1000; WHERE = BAS(ALL_COMPANY); USING = <<<;
*DIM HC_LOCATION WHAT = BAS(L_ALL); WHERE = <<<; USING = <<<;
*DIM HC_POSITION WHAT = CG_NA; WHERE = %HC_POSITION_SET%; USING = <<<;
*DIM HC_STATUS WHAT = FTE_EXISTING; WHERE = BAS(FTE_EXIST_TOT); USING = <<<;
*DIM RPTCURRENCY WHAT = LC; WHERE = <<<; USING = <<<;
*DIM TIME WHAT = %TIM%; WHERE = <<<; USING = %YEAR%.INP;
*ENDALLOCATION
*NEXT

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    Jan 11, 2017 at 08:35 PM

    First - please prepare the question in line with https://blogs.sap.com/2014/01/31/how-to-ask-questions-about-script-logic-issues/

    You have to explain the logic you want to achieve and only after the explanation with data sample you can provide your script!

    Formal answers (the required logic is not clear)

    1. %YEAR% has no relation to the category YEAR property, it will always contain the current year. Just read standard help.

    2. To avoid for/next you may use *DIM_NONAGGR instead of *DIM in some cases but you have to clearly explain the required logic.

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Jan 11, 2017 at 11:32 PM

    This is exactly what I was looking for.... Thanks Vadim...

    *DIM_NONAGGR worked...

    Add comment
    10|10000 characters needed characters exceeded