Skip to Content
0

Bpc 10 nw oading Data between 2 models

Feb 21, 2017 at 11:58 PM

182

avatar image
Former Member

I used bpc 10 nw latest for development. I have 2 models, model A and B. Model B needs transaction data and conversion from model A. I prefer I can use DM Package because we should to maintain accout mapping likes in conversion file. If I use script logic likes DESTINATION_APP, I worry if end user double run DM Package.

Do you have any helps?

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

11 Answers

Vadim Kalinin Feb 22, 2017 at 06:41 AM
0

Strange idea!

First - data loading using standard chain from one bpc model to another is not recommended due to yellow request.

Second - I see no difference, user can launch any package multiple time. Before destination_app it's a good practice to clear destination.

Share
10 |10000 characters needed characters left characters exceeded
avatar image
Former Member Feb 22, 2017 at 09:17 AM
0

Hi Vadim,

If I used DESTINATION_APP code and will trigger by DM Package , Could you please inform me how to clear destination? Let say, I run it and success. After that, I run it again. Will system post double data?

Thanks

Share
10 |10000 characters needed characters left characters exceeded
Vadim Kalinin Feb 22, 2017 at 09:50 AM
0

REC in script logic always overwrite target. Data will not be doubled.

To clear target use Runlogic_pH badi.

Share
10 |10000 characters needed characters left characters exceeded
avatar image
Former Member Mar 06, 2017 at 12:06 AM
0

Hi Vadim,

Iam coming back now. If I used bpc script DESTINATION_APP for data loading in model A and trigger by DM package from end user of model A. Bpc system will push out a particular data from model A into model B. My end user requirement is end user of model B will run DM package.

Do you have any suggestion?

Share
10 |10000 characters needed characters left characters exceeded
Vadim Kalinin Mar 06, 2017 at 06:56 AM
0

What do you mean by end user of model B?

If you want to run script in model A when your current model is B use RUNLOGIC_PH badi - it's a standard solution.

Share
10 |10000 characters needed characters left characters exceeded
avatar image
Former Member Mar 06, 2017 at 09:06 AM
0

what i understand is, what you want is "not pushing data from A to B by triggering DM from A", its "pulling data to B from A by triggering DM from B". For me, better to fix by abap coding by using BADI. There are "Query" and "Write Back "Functions help to manage such a tasks. But if you wanna use script logic, you should be sure that the set you wanna update should be cleaned completely before. Vadim is right about overwrite functionalty of REC command, but incase if the new set volume in source model doesnt cover (equal) the current set in destination model, it may create a problem. Like, after first load execution, some records have been turned to zero by user in source model and lite optimization has been executed after, which means records has been deleted phsically. so just executing "loading dm" from source to destination will not update destionation completely. so its better to run clean package at destination and run load after.

Good luck.

Share
10 |10000 characters needed characters left characters exceeded
Vadim Kalinin Mar 06, 2017 at 10:01 AM
0

No issues with "should be cleaned completely before"

Create a script in Model B:

*WHEN ACCOUNT //or any other dimension
*IS * //selection will be based on script scope
*REC(EXPRESSION=0)
*ENWHEN

START_BAdI RUNLOGIC_PH
QUERY = OFF
WRITE = ON
LOGIC = PUSH_DATA_A_B.LGF
APP = A
DEBUG = OFF
END_BAdI

Share
10 |10000 characters needed characters left characters exceeded
avatar image
Former Member Mar 06, 2017 at 10:19 AM
0

Yeap, that was what i meant actually . So its better to have "pre-coding blog" (like you put by using rec command) spesificly for cleaning part and then move to copy part. So my point was, it d be not correct way to expect "copy part" to handle cleaning task too. Anyway solution is on the board already.

Show 2 Share
10 |10000 characters needed characters left characters exceeded

Yes, I use this approach for about 6 years without any issues! First - clear, then push!

0
Former Member

Yeap. To be honest i am not script logicer :)

0
Vadim Kalinin Mar 06, 2017 at 11:40 AM
0

"I mean end user at model B would like to get data from model A. And script logic will be in model B." - then my script will do exactly what you want.

"Do you have doc how to use RUNLOGIC_PH?" - yes, I have it, but unfortunately the links on the sap.com are broken...

https://archive.sap.com/documents/docs/DOC-35152

P.S. Please change your name to real name, I will answer questions only from real people! Not from BPC User, BPC expert, Sap Student etc...

Share
10 |10000 characters needed characters left characters exceeded
avatar image
Former Member Mar 06, 2017 at 11:28 AM
0

Hi Vadim,

I mean end user at model B would like to get data from model A. And script logic will be in model B.

Do you have doc how to use RUNLOGIC_PH?

Share
10 |10000 characters needed characters left characters exceeded