1. Migration the DataSource
Up to version BI730 it is not possible to migrate the hierarchy datasource, because the hierarchies can only be loaded with datasource 3.x via the IDoc method.
Since release 7.2 there’s an work-around (SAP-note no. 1313068), which enable loading hierarchies via PSA. Like this we can create the transformation and DTP and now we can migrate the hierarchy datasource.
If you get syntax error by activation of the hierarchy datasource, please execute the program ZROOHIECAT_REPAIR in the source sytem.
Don’t forget to tick the box P-REPAIR
After the migration step, the hierarchy DataSource may be listed in the standard SAP – component tree, so you may have to select the source system to find it out.
Then right click and choose “Create the Transformation”. Don’t forget to select the Subtype “Hierarchies”.
The migration datasource from 3.x to 7.3 creates a PSA table that can be used to load hierarchies using transformation. Within the transformation you have to map the corresponding segments to each other. We have to select Source Segments and Target Segments in the transformation and do the necessary mappings.
Segment Hierarchy Header
We set the Info Object 0H_NORESTNO (Display Assigned Nodes Only) to ‘X’ using an constant. This ensures that non-assigned are not saved in the hierarchy SID table and do not have to be loaded into memory at runtime.
Segment Hierarchy Structure
The interesting one is the mapping of source segment “Hierarchy structure” to the correspondent target segment.
- NODENAME is mapped to 0H_HIERNODE and 0COORDER.
If the target InfoObject is compounded, then we have to use rule type “Hierarchy Split” to split the information according to the InfoObject.
For example, the InfoObject 0COSTENTER is compounded with 0CO_AREA. So we have to use the rule “Hierarchy Split” for 0CO_AREA and match NODENAME to 0H_HIERNODE, 0COSTCENTER, 0CO_AREA.
- Some DataSources may use IDOC method to load the hierarchies. In this case, the Source Segment Structure will have the field FIELDNM instead IOBJNM. Then we have to use the rule type “Derive Hierarchy Characteristic” for the Target InfoObject 0H_IOBJNM
- 0OBJECTID: For normal DataSource it’s not relevant, because one hierarchy will be delivered by one request. This field will be used to load more than one hierarchy by one request.to have a unique key. In this case there’s no mapping of 0OBJECTID
In the most documentation the Extraction Mode is suggested on “Full” and check box “only retrieve last request”. But if you have more than one hierarchy, which is delivered by more than one request (InfoPackage), you should set “Delta” mode and check “Get All New Data Request by Request”. Don’t forget to make an Init (Delta Init Without Data) for the first loading.
Set “Full Update” and “Activate Hierarchy” to automatically the hierarchy load
4. Execute the DTP
If you get a runtime error type UNCAUGHT_EXCEPTION, the problem may be causes by creating new PSA tables through the migration steps. That means, the table type are not existing in the ABAP dictionary. In this case you can start the report RS_PSA_TABTYPE_EXISTENE_CHECK to check or repair the PSA Table type. You can activate the PSA table for sure.
After successful executing the DTP, the protocol will show the loading status of one request, as we use the option “get all new data request by request”.
To see status of the other requests, please go to the monitoring.