cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Copy data between two model with non-identical dimensions in SAP BPC

leonel_mario
Explorer
0 Likes
341

Hello,

This question is somewhat similar to most of the posts that I ave gone through and I have referenced the below blog to nearly reach my scenario as well.

https://blogs.sap.com/2018/11/14/how-to-copy-data-between-models-in-bpc-script-logic/

I have gone through the below Help document as well.

https://help.sap.com/viewer/a2049170bfeb4178ace32222842c3ec1/10.1/en-US/f433f0bbc46c4a53860f1410f20f...

My scenario is as below - I have two models - Model 1 and Model 2

Model 1 contains Actual data and the scenario is I will need to copy the Actual data from Model 1 to Model 2

Model 2 has recently been created with near to same structure.

Structure of Model 1

Structure of Model 2

The data for Organization Product and Term needs to be mapped to P_ORGANIZATION, P_PRODUCT and P_ACCOUNT respectively.

The structure of the dimensions between the source and target are not the same.

Organization

Org100

-Org101

--Org1011

--Org1012

--Org1013

-Org102

--Org1021

--Org1022

-Org103

--Org1031

P_ORGANIZATION

Org100

-Org101

-Org102

-Org103

The mapping will be, for example Org1011, Org1012, Org1013 will be mapped to Org101; Org1021, Org1022 mapped to Org 102 and Org1031 mapped to Org103.

Similarly for Product to P_PRODUCT and Term to P_ACCOUNT. For this, I have created a property in each of the source dimensions named Targetmodel_mapping and mapped as above.

For all base members of source mapped to base members of Target dimension.

Dimension Organization Structure in source model

Organization TargeModel_mapping Org100 ORG101 ORG1011 Org101 ORG1012 Org101 ORG1013 Org101 ORG102 ORG1021 Org102 ORG1022 Org102 ORG103 ORG1031 Org103

Please find the code that has been written for the above source and target models

Source model Code

*XDIM_MEMBERSET AUDITTRAIL  = BAS("SOURCESYSTEM")
*XDIM_MEMBERSET MEASURES = "PERIODIC"
*XDIM_MEMBERSET CATEGORY    = "ACTUAL" 
*XDIM_MEMBERSET CURRENCY   = BAS("ALL_CUR")
*XDIM_MEMBERSET ENTITY   = BAS("TOTAL_BMO")
*XDIM_MEMBERSET GEOGRAPHY   = BAS("GEO_TOTAL") 
*XDIM_MEMBERSET ORGANIZATION   = BAS("Org.99995")
*XDIM_MEMBERSET PARTNER   = "Pa03047" 
*XDIM_MEMBERSET PRODUCT   = BAS("Prd.TOTAL BANK")
*XDIM_MEMBERSET REPORTED   = "UNCONVERTED"
*XDIM_MEMBERSET TERM   = BAS("TOTALTERM")
*XDIM_MEMBERSET TYPE = "AVERAGE", "MARGINAL" 
*XDIM_MEMBERSET TIME = %TIME_SET%

*DESTINATION_APP = STRAT_COPY
//Dimensions not in STRAT
*SKIP_DIM = ENTITY, PARTNER, REPORTED, TYPE, AUDITTRAIL

*ADD_DIM P_VERSION = Version_NA, P_VIEW = VIEW_NA, P_AUDITTRAIL = A_LYR_NA
//Dimensions in EP renamed in STRAT
// *RENAME_DIM ORGANIZATION = P_ORGANIZATION, TERM = P_ACCOUNT, PRODUCT = P_PRODUCT

*RENAME_DIM ORGANIZATION = P_ORGANIZATION
*RENAME_DIM TERM = P_ACCOUNT
*RENAME_DIM PRODUCT = P_PRODUCT

*WHEN TERM.STRAT_MAPPING
*IS <> ""
	*WHEN PRODUCT.STRAT_MAPPING
	*IS <> ""
		*WHEN ORGANIZATION.STRAT_MAPPING
		*IS <> ""
			*REC(EXPRESSION=%VALUE%,TERM=[TERM].STRAT_MAPPING,PRODUCT=[PRODUCT].STRAT_MAPPING,ORGANIZATION=[ORGANIZATION].STRAT_MAPPING)
		*ENDWHEN
	*ENDWHEN
*ENDWHEN

Target Model Code

//Prompt for Category, Organization, Product, and Version
*XDIM_MEMBERSET CATEGORY = "ACTUAL"
*XDIM_MEMBERSET P_VERSION = "Version_NA"
*XDIM_MEMBERSET CURRENCY = BAS("ALL_CUR")
*XDIM_MEMBERSET P_AUDITTRAIL = "A_LYR_NA" 
*XDIM_MEMBERSET P_VIEW = "VIEW_NA" 
*XDIM_MEMBERSET P_PRODUCT = BAS("S_Prd.TOTAL_BANK")
*XDIM_MEMBERSET P_ACCOUNT = BAS("S_REP_ACCS")
*XDIM_MEMBERSET P_ORGANIZATION = BAS("Org.K9898")
*XDIM_MEMBERSET GEOGRAPHY = BAS("GEO_TOTAL")

*XDIM_MEMBERSET TIME = %TIME_SET%

//Clear Target Data Points
*WHEN TIME
	*IS %TIME_SET%
	*WHEN CATEGORY
		*IS ACTUAL 
		*REC(EXPRESSION=0)
	*ENDWHEN
*ENDWHEN

*COMMIT

//Prompt for Category, Organization, Product, and Version
*XDIM_MEMBERSET CATEGORY = "ACTUAL"
*XDIM_MEMBERSET P_VERSION = "Version_NA" 
*XDIM_MEMBERSET CURRENCY = BAS("ALL_CUR")
*XDIM_MEMBERSET P_AUDITTRAIL = "A_LYR_NA" 
*XDIM_MEMBERSET P_VIEW = "VIEW_NA" 
*XDIM_MEMBERSET P_PRODUCT = BAS("S_Prd.TOTAL_BANK")
*XDIM_MEMBERSET P_ACCOUNT = BAS("S_REP_ACCS")
*XDIM_MEMBERSET P_ORGANIZATION = BAS("Org.K9898")
*XDIM_MEMBERSET GEOGRAPHY = BAS("GEO_TOTAL")

*XDIM_MEMBERSET TIME = %TIME_SET%

*START_BADI RUNLOGIC_PH
QUERY = OFF
WRITE = ON
DEBUG = OFF
LOGIC = SUBMIT_TO_STRAT.lgf
APP = ENTERPRISEPLANNING
//Dims in EP not in STRAT
DIMENSION AUDITTRAIL = <ALL>
DIMENSION ENTITY = <ALL>
DIMENSION ORGANIZATION = <ALL>
DIMENSION PARTNER = <ALL> 
DIMENSION PRODUCT = <ALL>
DIMENSION REPORTED = <ALL>
DIMENSION TERM = <ALL>
DIMENSION TYPE = <ALL>
//Dims in STRAT not in EP
DIMENSION P_ACCOUNT = <NONE>
DIMENSION P_AUDITTRAIL = <NONE>
DIMENSION P_ORGANIZATION = <NONE>
DIMENSION P_PRODUCT = <NONE>
DIMENSION P_VERSION = <NONE>
DIMENSION P_VIEW = <NONE>
*END_BADI

This is what I have from the logs -

/CPMB/MODIFY completed in 0 seconds
/CPMB/RUNCALCACCOUNT_LOGIC completed in 20 seconds
/CPMB/CLEAR completed in 0 seconds
[Selection]
--------------------------------------------------------------
SELECTION = /BMO_ENVIRONMENT/STRAT_COPY/PRIVATEPUBLICATIONS/LMARIO/TempFiles/FROM.TMP@@@SAVE@@@@@@EXPAND@@@|DIMENSION:TIME|2019.11

[Message]
--------------------------------------------------------------

model: STRAT_COPY. Package status: SUCCESS

LOG BEGIN TIME:2020-11-11 11:31:58
FILE:\ROOT\WEBFOLDERS\BMO_ENVIRONMENT\ADMINAPP\STRAT_COPY\PULL_EP.LGF
USER:LMARIO
APPSET:BMO_ENVIRONMENT
APPLICATION:STRAT_COPY
[INFO] GET_DIM_LIST(): I_APPL_ID="STRAT_COPY", #dimensions=11
CATEGORY,CURRENCY,GEOGRAPHY,MEASURES,P_ACCOUNT,P_AUDITTRAIL,P_ORGANIZATION,P_PRODUCT,P_VERSION,P_VIEW,TIME


#dim_memberset=10
CATEGORY:ACTUAL,1 in total.
P_VERSION:Version_NA,1 in total.
CURRENCY:CAD,EUR,GBP,USD,ZZZ,5 in total.
P_AUDITTRAIL:A_LYR_NA,1 in total.
P_VIEW:VIEW_NA,1 in total.
P_PRODUCT:Prd.3PT_HOLC_FXD,Prd.3PT_HOLC_INST,Prd.3PT_HOLC_NONINSTR,Prd.3PT_HOLC_REV,Prd.3PT_HOLC_VAR,...84 in total.
P_ACCOUNT:A6000073D,A6000083D,A9020000Y,A9025500Y,A9035000Y,...193 in total.
P_ORGANIZATION:ORG.V7363_US,Org.D1000_CA,Org.D1000_US,Org.D1000_ZZ,Org.D2000_CA,...168 in total.
GEOGRAPHY:Geo.CA,Geo.US,Geo.ZZ,3 in total.
TIME:2019.11,1 in total.


REC :0


CALCULATION BEGIN:
QUERY PROCESSING DATA
QUERY TIME : 2.00 ms. 0  RECORDS QUERIED OUT.
QUERY REFERENCE DATA
CALCULATION TIME IN TOTAL :1.00 ms.
NO RECORDS GENERATED.
CALCULATION END.


ENDWHEN ACCUMULATION: 0  RECORDS ARE GENERATED.
EXECUTION BADI:RUNLOGIC_PH
QUERY: OFF
WRITE: ON
Parameter APPSET not specified. Current BMO_ENVIRONMENT used.
FILE:\ROOT\WEBFOLDERS\BMO_ENVIRONMENT\ADMINAPP\STRAT_COPY\00O2TJR3GJ3TOTZT3RYQKNQF0_PULL_EP.LGF
USER:LMARIO
APPSET:BMO_ENVIRONMENT
APPLICATION:ENTERPRISEPLANNING
[INFO] GET_DIM_LIST(): I_APPL_ID="ENTERPRISEPLANNING", #dimensions=13
AUDITTRAIL,CATEGORY,CURRENCY,ENTITY,GEOGRAPHY,MEASURES,ORGANIZATION,PARTNER,PRODUCT,REPORTED,TERM,TIME,TYPE


#dim_memberset=13
AUDITTRAIL:FC,INSIGHT,PENCIL,3 in total.
MEASURES:PERIODIC,1 in total.
CATEGORY:ACTUAL,1 in total.
CURRENCY:CAD,EUR,GBP,USD,ZZZ,5 in total.
ENTITY:BFC,BFCOFFSET,BHB,BHFI,BMI,...11 in total.
GEOGRAPHY:Geo.CA,Geo.US,Geo.ZZ,3 in total.
ORGANIZATION:Org.0001,Org.0002,Org.0003,Org.0004,Org.0005,...11717 in total.
PARTNER:Pa03047,1 in total.
PRODUCT:Prd.ABL_MRP,Prd.AOS_UNDEF,Prd.AOS_UNDEF_DPL,Prd.AOS_UNDEF_OD,Prd.BMOGGOF_3P_RECON,...1987 in total.
REPORTED:UNCONVERTED,1 in total.
TERM:9800000,9801000,9802000,9803000,9804000,...1886 in total.
TYPE:AVERAGE,MARGINAL,2 in total.
TIME:2019.11,1 in total.
Amount of time to run script:                                           1807.06 ms
BADI EXECUTION TIME IN TOTAL :13.00 ms.


SCRIPT RUNNING TIME IN TOTAL:20.00 s.
LOG END TIME:2020-11-11 11:31:58
File path: \ROOT\WEBFOLDERS\BMO_ENVIRONMENT\STRAT\PRIVATEPUBLICATIONS\LMARIO\tempfiles\20201111113138\00O2TJR3GJ3TOTZT3RYQKNQF0_PULL_EP.LOG

There is no data being written on the Target model for the Actual category.

Can someone please advise? Please let me know if you require any other information.

Thank you.

Regards,

Leonel S Mario

Accepted Solutions (0)

Answers (0)