Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

To Amend Script Logic for Validation Rule

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

Former Member
Not what you were looking for? View more on this topic or Ask a question