observation for end routine in transformation



Just wanted to share one of the observation.

1.       Previously we used to have a option to select update behaviour for fields in end routine calculation which says field with active rules need to be considered or all.
2.       But in SAP BW 731 SP 7 we do not have that option which means by default the fields are considered in end routine.

This creates problem when we want to map DSO or infoobject from two sources. ( i have observed in infoobject & i suppose DSO may be of also same behaviour )

The moment we use end routine it activates the result_package structure ( which has complete target field as internal table ) which will be finally updated into the target.
Consider a case:
Infoobject
fields
Time Dep
Time Indep
Source
IOBJ1
f1
yes

Source1
IOBJ1
f2
Yes

source1
IOBJ1
f3

Yes
source2
IOBJ1
f4

Yes
source2

Idealy when we map f1 and f2 from one source1 ( f3 f4 is not mapped in transformation ) f3 and f4 should not be overwritten or any impact should not be there.
Other source2 updates f3 and f4 ( f1 f2 is not mapped in transformation) f1 and f2 should not be overwritten or any impact should not be there.

The moment we put end routine it activates target structure and this results in overwriting the data of f3 & f4 from source 1 and f1 and f2 from source 2.
So be careful in creating end routine. If necessary add all required fields in info source and create in start routine.

No comments:

Post a Comment