cancel
Showing results for 
Search instead for 
Did you mean: 

To Amend Script Logic for Validation Rule

0 Kudos

Dear Expert ,

Need your advise. We have one script logic to handle one of the validation (we call validation ST3007) to ensure the last period closing is equal to current period opening. Below is the script logic that I have found out (not sure if this is the script logic). However as the opening for current is copy from other application , so there is no closing data from last period. Beside disable the script logic, how can we put for example for period 2014.Jun, the validation ST3007 should not be apply.

Any help very much appreciated as I am not well verse when come to script logic

//============================================================================

// COMMIT 8: ST3007 COMPUTATION (CHECK OPENING=CLOSING) - CALC

//============================================================================

*XDIM_MEMBERSET ACCOUNT=%BS%

*XDIM_MEMBERSET ACCTFLOW=F0000,F0440

*XDIM_MEMBERSET CATEGORY=%CATEGORY_SET%

*XDIM_MEMBERSET CONSOSCOPE=LC,%CONSOSCOPE_SET%

*XDIM_MEMBERSET DATASRC=%NonADataSrc%

*XDIM_MEMBERSET ENTITY=%GrpEntities%

*XDIM_MEMBERSET INTCO=N_IG

*XDIM_MEMBERSET PRODUCT=NONEP

*XDIM_MEMBERSET TIME=%TIME_SET%,%MyPrevYear%.JUN

*WHEN ACCTFLOW

*IS "F0000"

  *WHEN TIME

  *IS %TIME_SET%

    *REC(ACCTFLOW="#TOTOFLOW")

  *ENDWHEN

*ELSE

  *WHEN TIME

  *IS %MyPrevYear%.JUN

    *REC(ACCTFLOW="#TOTOFLOW",TIME="%TIME_SET%",FACTOR=-1)

  *ENDWHEN

*ENDWHEN

*GO

*WHEN ACCTFLOW

*IS #TOTOFLOW

  *WHEN GET()

  *IS <> 0

    *REC(ACCOUNT="ST3007",ACCTFLOW="F0440",DATASRC="11_INPUT",EXPRESSION=1)

  *ENDWHEN

*ENDWHEN

*COMMIT

//============================================================================

// COMMIT 7: ST3007 COMPUTATION (CHECK OPENING=CLOSING) - CLEAR

//============================================================================

*SELECT(%NonADataSrc%,[ID],"DATASRC","DATASRC_TYPE<>'A'")

*SELECT(%MyPrevYear%,[YEAR]-1,"TIME","[ID]='%TIME_SET%'")

*XDIM_MEMBERSET ACCOUNT=ST3007

*XDIM_MEMBERSET ACCTFLOW=F0440

*XDIM_MEMBERSET CATEGORY=%CATEGORY_SET%

//*XDIM_MEMBERSET CONSOSCOPE=LC,%CONSOSCOPE_SET%

*XDIM_MEMBERSET CONSOSCOPE=%CONSOSCOPE_SET% //change on Nov 30,2013

*XDIM_MEMBERSET DATASRC=11_INPUT

*XDIM_MEMBERSET ENTITY=%GrpEntities%

*XDIM_MEMBERSET INTCO=N_IG

*XDIM_MEMBERSET PRODUCT=NONEP

*XDIM_MEMBERSET TIME=%TIME_SET%

*WHEN *

*IS *

  *REC(EXPRESSION=0)

*ENDWHEN

*COMMIT

//============================================================================

// COMMIT 8: ST3007 COMPUTATION (CHECK OPENING=CLOSING) - CALC

//============================================================================

*XDIM_MEMBERSET ACCOUNT=%BS%

*XDIM_MEMBERSET ACCTFLOW=F0000,F0440

*XDIM_MEMBERSET CATEGORY=%CATEGORY_SET%

//*XDIM_MEMBERSET CONSOSCOPE=LC,%CONSOSCOPE_SET%

*XDIM_MEMBERSET CONSOSCOPE=%CONSOSCOPE_SET% //change on Nov 30,2013

*XDIM_MEMBERSET DATASRC=%NonADataSrc%

*XDIM_MEMBERSET ENTITY=%GrpEntities%

*XDIM_MEMBERSET INTCO=N_IG

*XDIM_MEMBERSET PRODUCT=NONEP

*XDIM_MEMBERSET TIME=%TIME_SET%,%MyPrevYear%.JUN

*WHEN ACCTFLOW

*IS "F0000"

  *WHEN TIME

  *IS %TIME_SET%

    *REC(ACCTFLOW="#TOTOFLOW")

  *ENDWHEN

*ELSE

  *WHEN TIME

  *IS %MyPrevYear%.JUN

    *REC(ACCTFLOW="#TOTOFLOW",TIME="%TIME_SET%",FACTOR=-1)

  *ENDWHEN

*ENDWHEN

*GO

*WHEN ACCTFLOW

*IS #TOTOFLOW

  *WHEN GET()

  *IS <> 0

    *REC(ACCOUNT="ST3007",ACCTFLOW="F0440",DATASRC="11_INPUT",EXPRESSION=1)

  *ENDWHEN

*ENDWHEN

*COMMIT

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

is this a one off? In other words, is it only for one period that you want to disable this check or will it be a recurring thing?

If it is a one off you could amend the script with a *WHEN TIME *IS <>2014.JUN.

If it is a recurring thing you could add a property to your time dimension such as "RUN_VAL" and mark all periods for which you want the validation to be run with a Y and all others with a N. You could then amend the script to filter the periods on this property: *WHEN TIME.RUN_VAL *IS Y.

BR,

Arnold