on 03-03-2017 7:19 PM
Hi Friends,
Env bpc 10.1
We are currently exploring the possibility of customising a copy package.
We need to copy data from category actual to different forecast periods based on the working forecast. The source would be "actual" and the destination would be Q1, Q2, Q3 or Q4 forecast. The destination is determined by a flag which points to the working forecast period. (prior months of the working forecast need to be filled by actual data) (category and time need to be dynamic selections based on properties of category and time dimension)
Is it possible to customise a standard copy package for this requirement.
Currently i am using script logic for this requirement.
Thanks
Ed.
Also if you still require standard COPY process - then copy UJD_TEST_PACKAGE to Z version and add abap code to read required members from dimension and generate answer prompt!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks Vadim, I will try both your options. Following is the script that we are using currently and its failing for large data (short dumps). The difference in the script , we are using account in when statement and you are using time. Should that be a problem in terms of performance?
*SELECT(%WORK_FCST%, "ID", CATEGORY, "WORKING_FORECAST='Y'")
*SELECT(%PERIODS%, "ID", TIME, "copy_flag='Y'")
*XDIM_MEMBERSET CATEGORY = ACTUAL
*XDIM_MEMBERSET TIME = %PERIODS%
*XDIM_MEMBERSET RPTCURRENCY = LC, USD
*WHEN ACCOUNT
*IS *
*REC(FACTOR=1, CATEGORY=%WORK_FCST%)
*ENDWHEN
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
And by the way, it's a good idea to perform Light Optimization of the cube before copy!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
And this one can be faster:
*SELECT(%CATTARGET%,[ID],CATEGORY,[working_forecast]=Y)
*SELECT(%TIMECOPY%,[ID],TIME,[Copy_flag]=Y)
*XDIM_MEMBERSET TIME=%TIMECOPY%
*RUNALLOCATION
*FACTOR=1
*DIM CATEGORY WHAT=Actual; WHERE=%CATTARGET%
*ENDALLOCATION
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Simple script sample:
*SELECT(%CATTARGET%,[ID],CATEGORY,[working_forecast]=Y)
*SELECT(%TIMECOPY%,[ID],TIME,[Copy_flag]=Y)
*XDIM_MEMBERSET TIME=%TIMECOPY%
*XDIM_MEMBERSET CATEGORY=Actual
*WHEN TIME
*IS *
*REC(EXPRESSION=%VALUE%,CATEGORY=%CATTARGET%)
*ENDWHEN
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks Vadim for your reply.
Category
id working_forecast ......................................
Actual
Plan
Q1Forecast
Q2Forecast
Q3Forecast Y
Q4Forecast
Time
ID Copy_flag ...........................................
2017.01 Y
2017.02 Y
2017.03 Y
2017.04 Y
2017.05
...........
2017.012
copy--
source category - Actual destination category - working_forecast ="Y"
source time - copy_flag ="Y" destination time - copy_flag ="Y"
The script times out if the data is huge, but if i run the regular standard copy package with the same amount of data it runs successfully.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You have to use script logic copy!
But detailed description with real dimension members and properties required!
"The destination is determined by a flag which points to the working forecast period." - not clear without detailed sample.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
15 | |
4 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.