cancel
Showing results for 
Search instead for 
Did you mean: 

Customize the standard SAP BPC Packages

marijnbax2
Participant
0 Kudos

Hi All,

I followed the instructions in the following document.

I have implemented this with success but now I would like to put in a further tweak:

I would like to source CATEGORY to always be ACTUAL but destination select-able (from all members of the CATEGORY dimension)

I would like the destination TIME to always be <SAME> but source select-able (from all members of the CATEGORY dimension)

Can anyone help me with this?

For the rest of the dimensions it should just be ALL and SAME

View Entire Topic
former_member186338
Active Contributor
0 Kudos

Please provide full info:

Do you want to select anything else?

What is the DM package purpose? Please post DM advanced script you have!

Vadim

marijnbax2
Participant
0 Kudos

Hi Vadim,

Thanks for you prompt reply as always 🙂

No. As mentioned. All other dimensions should be Source <ALL> and Destination <SAME>

The purpose of the package is to make a snapshot of the data once it's externally published so we can always revert back to these numbers. We might have accounting policy changes to the numbers on category ACTUAL and then we will not tie back to the externaly published numbers any more.

the script is:

PROMPT(COPYMOVEINPUT,%SELECTION%,%TOSELECTION%,"IMPORTANT: Select SOURCE CATEGORY ACTUAL. Select DESTINATION TIME <SAME>","%TIME_DIM%,%CATEGORY_DIM%")

INFO(%TEMPNO1%,%INCREASENO%)

INFO(%ACTNO%,%INCREASENO%)

TASK(/CPMB/CM_CONVERT,OUTPUTNO,%TEMPNO1%)

TASK(/CPMB/CM_CONVERT,ACT_FILE_NO,%ACTNO%)

TASK(/CPMB/CM_CONVERT,SAPPSET,%APPSET%)

TASK(/CPMB/CM_CONVERT,SAPP,%APP%)

TASK(/CPMB/CM_CONVERT,SELECTION,%SELECTION%)

TASK(/CPMB/CM_CONVERT,TOSELECTION,%TOSELECTION%)

TASK(/CPMB/CM_CONVERT,CLEARDATA,%CLEARDATA%)

TASK(/CPMB/CLEAR_SOURCE_CUBE,CHECKLCK,%CHECKLCK%)

TASK(/CPMB/CLEAR_SOURCE_CUBE,SELECTION,%TOSELECTION%)

TASK(/CPMB/APPEND_LOAD,INPUTNO,%TEMPNO1%)

TASK(/CPMB/APPEND_LOAD,ACT_FILE_NO,%ACTNO%)

TASK(/CPMB/APPEND_LOAD,RUNLOGIC,1)

TASK(/CPMB/APPEND_LOAD,CHECKLCK,1)

TASK(/CPMB/APPEND_LOAD,CLEARDATA,1)

former_member186338
Active Contributor
0 Kudos

Do you have a lot of target CATEGORY members? If it's not a long list you can:

PROMPT(COMBOBOX,%TCAT%,"Select Target CATEGORY",0,CAT1,{CAT1,CAT2,CAT3,CAT4,CAT5})

PROMPT(SELECTINPUT,%SELECTION%,,"Enter TIME selection","%TIME_DIM%")

...

TASK(/CPMB/CM_CONVERT,SELECTION,%SELECTION%DIMENSION:CATEGORY|ACTUAL|)

TASK(/CPMB/CM_CONVERT,TOSELECTION,%SELECTION%DIMENSION:CATEGORY|%TCAT%|)

...

TASK(/CPMB/CLEAR_SOURCE_CUBE,SELECTION,%SELECTION%DIMENSION:CATEGORY|%TCAT%|)

...

Please check other lines, there are errors in your script. I recommend to start with standard script and then modify it accurately!

Vadim

former_member186338
Active Contributor
0 Kudos

P.S. Another option is to use script logic to copy data. In this case you will have single prompt:

PROMPT(SELECTINPUT,%SELECTION%,,"Select Target CATEGORY and TIME","%CATEGORY_DIM%,%TIME_DIM%")

TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SUSER,%USER%)

TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPPSET,%APPSET%)

TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SAPP,%APP%)

TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,SELECTION,%SELECTION%)

TASK(/CPMB/DEFAULT_FORMULAS_LOGIC,LOGICFILENAME,COPY.LGF)

and COPY.LGF:

*XDIM_MEMBERSET TIME=%TIME_SET%

*XDIM_MEMBERSET CATEGORY=ACTUAL

*WHEN TIME

*IS *

*REC(EXPRESSION=%VALUE%,CATEGORY=%CATEGORY_SET%)

*ENDWHEN

marijnbax2
Participant
0 Kudos

Thanks Vadim. The script logic works like a charm!

former_member186338
Active Contributor
0 Kudos

The advantage of my first proposal is that you can restrict list of target CATEGORY members and the copy process will be fasted using standard copy chain.