80
August 2010 1 Inventory Data Loading This document explains step by step Inventory loading to 0IC_C03 Cube. Inventory Scenario Is it required to load data using 2LIS_03_BX data source to get initialize stock opening balances...!! 2LIS_03_BX --> This structure is used to extract the stock data from MM Inventory Management for initialization to a BW system. 2LIS_03_BF --> This structure is used to extract the material movement data from MM Inventory Management (MM-IM) consistently to a BW system 2LIS_03_UM --> This structure is used to extract the revaluation data from MM Inventory Management (MM- IM) consistently to a BW system. Contains only value changes, no quantity changes. Before you can extract data for revaluations to a BW system, you must ensure that the transaction/event key is active. For this, see the following SAP Notes: · 353042: How To: Activate transaction key (PROCESSKEY) · 315880: Missing event control after PI-A installation Usage of BX datasource is depends on business requirement. Requirement1: For example data getting pulled from R/3 system. It contains 10 years of History Data. Business requirement is want to see Inventory / Stocks data for last 2 years only. In this case, to get opening balances can only get through BX datasource and compress WITH Maker update. after that we can load only last 2 years of historic data using BF & UM datasources and compress WITHOUT Marker update. Requirement2: For example data getting pulled from R/3 system. It contains 2 years of History Data only andentire data needed from reporting. In this case, we can use BX to pull opening stock balances and compress WITH Marker update and Pull BF & UM for 2 years of historic data and compress WITHOUT Marker update. Same as above. OR Just Pull entire historic data - stock movements (2 years) using BF and UM datasources and compress WITH Marker update . It creates Opening Balances. In this case no need to Load BX datasource. How To… Handle Inventory Management Scenarios in BW:https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f83be790-0201-0 1) First thing we need lock the all users 2) In Init load we should maintain given serialization First 2LIS_03_BX,2LIS_03_BF and then 2LIS_03_UM with following given markerupdates.

Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

  • Upload
    buique

  • View
    559

  • Download
    16

Embed Size (px)

Citation preview

Page 1: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 1

Inventory Data Loading

This document explains step by step Inventory loading to 0IC_C03 Cube.

Inventory Scenario

Is it required to load data using 2LIS_03_BX data source to get initialize stock opening balances...!!

2LIS_03_BX --> This structure is used to extract the stock data from MM Inventory Management forinitialization to a BW system.

2LIS_03_BF --> This structure is used to extract the material movement data from MM Inventory Management(MM-IM) consistently to a BW system

2LIS_03_UM --> This structure is used to extract the revaluation data from MM Inventory Management (MM-IM) consistently to a BW system. Contains only value changes, no quantity changes.

Before you can extract data for revaluations to a BW system, you must ensure that the transaction/event keyis active.For this, see the following SAP Notes:· 353042: How To: Activate transaction key (PROCESSKEY)· 315880: Missing event control after PI-A installation

Usage of BX datasource is depends on business requirement.

Requirement1: For example data getting pulled from R/3 system. It contains 10 years of History Data.Business requirement is want to see Inventory / Stocks data for last 2 years only.In this case, to get opening balances can only get through BX datasource and compress WITH Maker update.after that we can load only last 2 years of historic data using BF & UM datasources and compress WITHOUTMarker update.

Requirement2: For example data getting pulled from R/3 system. It contains 2 years of History Data onlyandentire data needed from reporting.In this case, we can use BX to pull opening stock balances and compress WITH Marker update andPull BF & UM for 2 years of historic data and compress WITHOUT Marker update. Same as above.

OR

Just Pull entire historic data - stock movements (2 years) using BF and UM datasources and compress WITHMarker update . It creates Opening Balances. In this case no need to Load BX datasource.

How To… Handle Inventory Management Scenarios inBW:https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f83be790-0201-0

1) First thing we need lock the all users

2) In Init load we should maintain given serialization First 2LIS_03_BX,2LIS_03_BF and then 2LIS_03_UM withfollowing given markerupdates.

Page 2: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 2

3) In delta load we should load 2LIS_03_BF first then 2LIS_03_UM.

4) Every delta load should be compress with marker update.

Inventory data loading step by step procedure

1)2LIS_03_BX(Stock Initialization for Inventory Management

Deleting the setup tables using Tcode: LBWG Select the inventory controlling application component

Then Click on execute button

Page 3: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 3

Setup Tables: Its place where BW Come and pick the Init Data load

To fill the setup tables of 2LIS_03_BX using Tocde: MCNB in transfer structur tap Select the 2LIS_03_BX

Change the Time of termination and click on Execute button

After filling the setup tables go to Tcode: RSA3 Enter the datasource name execute and check weather datagot filled in setup tables. RSA3 Showing data means your setup tables got filled.

Page 4: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 4

Login into BI Side Select and expand the tree of 0IC_C03 (2LIS_03_BX) Trigger the Infopackage for the dataload upto PSA and then Trigger the DTP to load the from PSA to 0IC_C03.

Make sure DTP Should contain the following settings .

Check the data successfully got loaded into cube. Go to Manage screen Click on Collapse tab and make sureNo Marker Update should not be checked, enter the request id and click on Release. Now data got compresswith marker update

2LIS_03_BF: Goods Movements From Inventory Management

To fill the setup tables of 2LIS_03_BF using Tocde: OLI1BW Enter the Name of run Change the Terminationtime and click on Execute button.

Page 5: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 5

After filling the setup tables go to Tcode: RSA3 Enter the datasource name execute and check weather datagot filled in setup tables. RSA3 Showing data means your setup tables got filled.

Login into BI Side Select and expand the tree of 0IC_C03 Select the infopackage of (2LIS_03_BF) and Triggerthe Infopackage to load the data upto PSA and then Trigger the DTP to load the data from PSA to ZIC_C03.

Page 6: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 6

Check the data successfully got loaded into cube. Go to Manage screen Click on Collapse tab and make sureNo Marker Update should be checked, enter the request id and click on Release button. Now data gotcompress without marker update

Revaluations: 2LIS_03_UM

To fill the setup tables of 2LIS_03_UM Enter the Tocde: OLIZBW Give the Name of run, Company codeChange the Termination time and click on Execute button.

Page 7: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 7

After filling the setup tables go to Tcode: RSA3 Enter the datasource name execute and check weather datagot filled in setup tables. In RSA3 Showing data means your setup tables got filled.

Login into BI Side Select and expand the tree of 0IC_C03 Select the Init infopackage of (2LIS_03_UM) andTrigger the Infopackage to load the data upto PSA and then Trigger the DTP to load the data from PSA toZIC_C03.

Page 8: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 8

Check the data successfully got loaded into cube. Go to Manage screen Click on Collapse tab and make sureNo Marker Update should be checked, enter the request id and click on Release button. Now data gotcompress without marker update.

Inventory Delta Load 2LIS_03_BF

Go to Tcode: LBWE then Click on Job Control Tab

Page 9: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 9

1)Click on Start Date you will get following screen enter the date and time to trigger the delta load from lbwqto RSA7.

Then click on Print Parameters

Page 10: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 10

After entering print parameters Click on schedule job.

Login into BI Side Select and expand the tree of 0IC_C03 Select the Delta infopackage of (2LIS_03_BF) andTrigger the Infopackage to load the data upto PSA and then Trigger the DTP to load the data from PSA toZIC_C03.

Page 11: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 11

Check the data successfully got loaded into cube. Go to Manage screen Click on Collapse tab and make sureNo Marker Update should not be checked, enter the request id and click on Release button. Now data gotcompress with marker update.

Inventory Delta Load: 2LIS_03_UM

Select and expand the tree of 0IC_C03 Select the Delta infopackage of (2LIS_03_UM) and Trigger theInfopackage to load the data upto PSA and then trigger the DTP to load the data from PSA to ZIC_C03.

Check the data successfully got loaded into cube. Go to Manage screen Click on Collapse tab and make sureNo Marker Update should not be checked, enter the request id and click on Release button. Now data gotcompress with marker update.

Page 12: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 12

1. Business Scenario

SAP Business Objects Planning and Consolidation, version for Netweaver (herein referred to as “BPC”) DataManager is designed to help the user to move data into and out of BPC. Transformation Files and Conversionfiles are used to aid in the manipulation of the imported data before it is written to the database. As of BPC7.5, transformation files now support the use of two new parameter options, known as START_ROUTINE andEND_ROUTINE. These parameters are used to trigger BAdI implementations on the backend ABAP system,where the user is allow to write custom ABAP code to process the data to specific requirements. TheSTART_ROUTINE is called after the data has been read from the source, and before the transformation orconversion file logic is applied to it. The END_ROUTINE is called after all processing has been done, and justbefore the data is committed to the database. In this guide, we will demonstrate how to implement both.For the START_ROUTINE BAdI implementation, we will implement a check which will ensure that an importedproperty value length is not greater than a certain length. For the END_ROUTINE BAdI implementation, wewill implement code which will retrieve a property value from a custom database table and updates the

BPC master data accordingly.

2. Background Information

SAP Business Add-Ins (BAdIs) are one of the most important technologies used to adapt SAP software tospecific requirements. As of Release 7.0 of the SAP NetWeaver Application Server ABAP, BAdIs are part of theEnhancement Framework, where they represent explicit enhancement options. BAdIs are the basis for ObjectPlug-Ins that can enhance the functions in ABAP programs without having to make core softwaremodifications. As such, BAdI calls can be integrated into customer applications (like BusinessObjects Planningand Consolidation, version for SAP NetWeaver for example) to allow enhanced customization of standardapplication functionality.

Page 13: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 13

This How-To Guide (HTG) describes the procedure for creating and configuring the Data Manager StartRoutine and End Routine BAdIs within BPC. The Step By Step section will outline the steps needed in order tocreate the BAdI itself in addition to the configuration required within BPC to actually execute the BAdI. TheAppendix section contains the example ABAP code that goes along with this guide’s Business Scenario. Thiscode is only meant as an example and while it will perform the actions described in this guide it may notmatch the exact needs of your own particular Business Scenario – it is only intended to guide you in thecreation of your own BAdI Implementation

3. Prerequisites

Required/recommended expertise or prior knowledge

x SAP BusinessObjects Planning and Consolidation 7.5, version for SAP NetWeaver, SP00 and higher

x ABAP programming skills

x Access to SAP NetWeaver transaction codes: SE20, SE18, SE19, SE38, SE80, SE24, STMS AdditionalDocumentation

x RKT Online Knowledge Product

{ http://service.sap.com/rkt On the left hand side, navigate to SAP Ramp-Up Knowledge Transfer -> SAPBusinessObjects EPM Solutions -> SAP BO PC 7.5, version for SAP NetWeaver

x Other EPM How-To Guides

{ http://wiki.sdn.sap.com/wiki/display/BPX/Enterprise+Performance+Management+%28EPM%29+How-to+Guides

x SAP Help Library – Business Add Ins

{ http://help.sap.com/saphelp_nw70/helpdata/en/8f/f2e540f8648431e10000000a1550b0/fr ameset

Page 14: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 14

4. Step-by-Step Procedure

A BAdI implementation is the term used in the Enhancement Framework for an enhancement implementationelement. A BAdI implementation consists of a BAdI implementation class that implements the BAdI interface.The BAdI implementation also contains a filter condition which is specified in the BAdI definition. This filtercondition can be used to execute the BAdI implementation at runtime.

4.1 Create the Start Routine BAdI Implementation

1. Log on to the NetWeaver system via SAPgui. Enter transaction SE18 and press “Enter“.

2. In the initial screen, enter the name of the corresponding enhancement spot. Enter

UJD_ROUTINE, and click “Display“.

Page 15: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 15

3. On the left side of the screen, expand the BAdI definition tree by clicking on the icon. You should thensee the following nodes.

x Interface

x Filter

x Implementations

4. Right-click on the “Implementations” node, and choose “Create BAdI Implementation”.

Page 16: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 16

5. In some cases, a developer may have already created an enhancement implementation for thisenhancement spot for a different BAdI definition. If an enhancement implementation already exists, a dialoglisting all implementations will be displayed. Click the “Create” button in the lower right hand corner. If thisdialog is not displayed, continue to step 6.

6. In this dialog, enter the name of the enhancement implementation and the short description.

Name it as ZUJ_DM_ROUTINE_EX. Then click the green check to continue.

7. Enter the name of a package name for transporting this BAdI to another system in your landscape, or click“Local Object” if you do not plan to transport this BAdI.

Page 17: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 17

8. If you are presented with this dialog, then select your enhancement implementation which was justcreated in step 6, and click the green check. If there are no other previous implementations, go directly to thedialog box shown in step 9.

9. In this dialog, enter the name of the BAdI Implementation as ZUJ_START_ROUTINE_EX_IMP, and enter thedescription. Also, enter the name of the implementing class as ZCL_UJD_START_ROUTINE_EX.

10. Enter the name of a package name for transporting this BAdI to another system in your landscape, or click“Local Object” if you do not plan to transport this BAdI.

Page 18: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 18

11. The BAdI Implementation will then be saved. Notice it is not yet active.

12. Click on the icon next to the name of the BAdI Implementation. This will expose the following nodesbelow.

x Implementing Class

x Filter Values

Page 19: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 19

13. Double Click on the “Filter Val.” Node.

14. Click the “Change” icon.

15. Click on the “Combination” button from the filter values screen.

16. Next double click on the BADIIMPL_NAME line of the combination.

Page 20: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 20

17. Enter the name of the BAdI implementation into the “Value 1” field. This is the value which will be passedin the transformation file later on. In this example, we will use ZUJ_START_ROUTINE_EX_IMP for consistancy,but this value could be anything as long as this name and the name used in the transformation file are thesame . Next set the drop down box for “Comparator 1” to “=”. Finally click the “Green Check” to continue.

18. Finally, save and activate by clicking the appropriate buttons.

Page 21: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 21

19. In the following dialog, first click the “Select All” button, and then the “Green Check” button. All objectsshould then be active.

20. Finally, the code which will be executed by the BAdI implementation can be inserted into theimplementing class. Double click on the “Implementing Class” node from the left side of the screen.

21. Now double-click on the implementing class name.

Page 22: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 22

22. Due to forward navigation, the implementing class is displayed in the class builder tool. Click on the“Change” icon. Then double-click on the RUNROUTINE method.

23. An empty method implementation will be shown. Notice, the method signature is displayed at the top. Ifthe method signature is not displayed, click the “Signature” button on the application toolbar.

Page 23: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 23

24. Copy and paste the source code from Appendix 5.1 into the RUNROUTINE method. For the Start RoutineBAdI, the IR_DATA parameter contains the importing data in a comma delimited format. In most cases, youwill need to convert this comma delimited format to a structured internal table in order to work with the dataefficiently. This example code shows how to do this conversion. Also, this code will check the value of thePROFIT_CENTER column and ensure that its length is not greater than 10.

Page 24: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 24

25. Save and activate the class by clicking the appropriate buttons.

4.2 Create the End Routine BAdI Implementation

1. Once again, log on to the NetWeaver system via SAPgui. Enter transaction SE18 and press

“Enter“.

2. In the initial screen, enter the name of the corresponding enhancement spot. Enter

UJD_ROUTINE, and click “Display“.

Page 25: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 25

3. On the left side of the screen, expand the BAdI definition tree by clicking on the icon. You should thensee the following nodes.

x Interface

x Filter

x Implementations

4. Right-click on the “Implementations” node, and choose “Create BAdI Implementation”.

Page 26: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 26

5. Select the enhancement implementation which was created in section 4.1

6. In this dialog, enter the name of the BAdI Implementation as ZUJ_END_ROUTINE_EX_IMP, and enter thedescription. Also, enter the name of the implementing class as ZCL_UJD_END_ROUTINE_EX.

7. Enter the name of a package name for transporting this BAdI to another system in your landscape, or click“Local Object” if you do not plan to transport this BAdI.

Page 27: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 27

8. The BAdI Implementation will then be saved. Notice it is not yet active.

9. Click on the icon next to the name of the BAdI Implementation. This will expose the following nodesbelow.

x Implementing Class

x Filter Values

10. Double Click on the “Filter Val.” Node.

Page 28: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 28

11. Click the “Change” icon.

12. Click on the “Combination” button from the filter values screen.

13. Next double click on the BADIIMPL_NAME line of the combination.

14. Enter the name of the BAdI implementation into the “Value 1” field. This is the value which will be passedin the transformation file later on. In this example, we will use ZUJ_END_ROUTINE_EX_IMP for consistancy,but this value could be anything as long as this name and the name used in the transformation file are thesame . Next set the drop down box for “Comparator 1” to “=”. Finally click the “Green Check” to continue.

Page 29: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 29

15. Finally, save and activate by clicking the appropriate buttons.

16. In the following dialog, first click the “Select All” button, and then the “Green Check” button. All objectsshould then be active.

Page 30: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 30

17. Finally, the code which will be executed by the BAdI implementation can be inserted into theimplementing class. Double click on the “Implementing Class” node from the left side of the screen.

18. Now double-click on the implementing class name.

19. Due to forward navigation, the implementing class is displayed in the class builder tool. Click on the“Change” icon. Then double-click on the RUNROUTINE method.

Page 31: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 31

20. An empty method implementation will be shown. Notice, the method signature is displayed at the top. Ifthe method signature is not displayed, click the “Signature” button on the application toolbar.

21. Copy and paste the source code from Appendix 5.2 into the RUNROUTINE method. For the End RoutineBAdI, the IR_DATA parameter contains the importing data in a structured format. So, unlike the Start RoutineBAdI, you do not have to worry about converting the comma delimited format to a structured internal table.In this implementation, the value for ECC_CC will come from a custom table ZECC_CC based on the ID value.Note: The ZECC_CC table will not exist in your system, and is only used as an example in this guide. You willneed to implement your own data retrieval logic in that section of code.

Page 32: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 32

Page 33: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 33

22. Save and activate the class by clicking the appropriate buttons.

4.3 Test the BAdI Implementations

In this example, the P_CC dimension has been modified to include properties, PROFIT_CENTER and ECC_CC.This guide assumes that the reader knows how to add properties to dimensions, so that will not be coveredhere. The screenshot below shows the newly created properties and their lengths.

The PROFIT_CENTER value length will be checked by the Start Routine BAdI, and if it is too long, it will rejectthe record. The ECC_CC value will be filled by the End Routine BAdI implementation by retrieving the valuefrom a custom “Z” table based on the ID field. Note: This “Z” table will not exist in your system. It is only usedas an example implementation. The source data could potentially come from a number of other sources.

We will use the upload file shown below. This file has already been uploaded to the BPC file service. We willattempt to load the “Spain” and “Austria” cost center dimension members into the P_CC dimension. ThePROFIT_CENTER property value length will be checked by the Start Routine BAdI implementation, so in thiscase, we would expect the Austria record to be rejected as the value

50000200001 is 11 characters long. The ECC_CC property value is blank in the file, and will be filled

at runtime by the End Routine BAdI implementation. In this example, the value will be retrieved from a customtable, ZECC_CC. Again, this table will not exist in your system. We should expect to see the Spain recordupdated correctly.

Page 34: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 34

1. Go to the BPC Excel Client and log on to the application set. In this example, a copy of

APSHELL called APSHELL_HTG is used.

2. From the action pane, click “Mange Data”.

Page 35: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 35

3. Click “Maintain Transformations”.

4. Click “Create New Transformation”.

5. Insert a new row into the transformation file under the *OPTIONS section. Enter the parameter nameSTARTROUTINE and assign the value ZUJ_START_ROUTINE_EX_IMP. This is the name that you provided whendefining the filter for the BAdI implementation

Page 36: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 36

6. Insert another new row into the transformation file under the *OPTIONS section. Enter the parametername ENDROUTINE and assign the value ZUJ_END_ROUTINE_EX_IMP. Again, this is the name that youprovided when defining the filter for the BAdI implementation.

Page 37: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 37

7. Validate and save the transformation file by clicking the link in the action pane.

8. Save the file as transformation_badi_example.xls in the example folder.

Page 38: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 38

9. Close the transformation file and click on the “Manage Data” link from the action pane.

10. Click on “Run a Packaget”.

Page 39: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 39

11. Select “ImportMasterData”, and click “Run”

12. In this dialog, select the import file containing the new master data, for example P_CC_Data.txt.

Again, this file has already been uploaded to the BPC file service. Next, select the transformation file called“transformation_badi_example.xls” which you have just created. Select the appropriate dimension and click“Finish”.

Page 40: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 40

13. Click “Ok”.

Page 41: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 41

14. Click the “View Status” button.

15. The package should now be running

ng.

Page 42: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 42

16. Once the package is complete, you can check the results by selecting the package and clicking the“Detail” button.

17. The detail screen shows that the Start and End Routines has been called successfully. Also, notice that theerror raised from the Start Routine shows up in this log.

Page 43: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 43

18. Click on the Rejected Records node. The rejected Austria record shows here as well as the reason why itwas rejected.

19. From the Admin Console, you can check to make sure that the records have been created successfully.Spain has been added successfully.

Page 44: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 44

5. Appendix

5.1 Source Code for Start Routine BAdI Implementation

METHOD if_ujd_routine~runroutine.

TYPE-POOLS: abap.

DATA: lt_components TYPE abap_component_tab. DATA: lt_columns TYPE TABLE OF string.

DATA: lt_column_data TYPE TABLE OF string.

DATA: lt_message TYPE uj0_t_message.

DATA: lt_error_reason TYPE uj0_t_message. DATA: lv_tabix TYPE sy-tabix.

DATA: lo_dataref TYPE REF TO data.

DATA: lo_struct_descr TYPE REF TO cl_abap_structdescr. DATA: lo_field_type TYPE REF TO cl_abap_datadescr.

FIELD-SYMBOLS: <lt_data_im> TYPE STANDARD TABLE. FIELD-SYMBOLS: <lt_data_ex> TYPE STANDARD TABLE.FIELD-SYMBOLS: <lt_data_er> TYPE STANDARD TABLE.

FIELD-SYMBOLS: <ls_components> TYPE abap_componentdescr. FIELD-SYMBOLS: <ls_columns> TYPE string.

FIELD-SYMBOLS: <ls_column_data> TYPE ANY. FIELD-SYMBOLS: <ls_data> TYPE ANY.

FIELD-SYMBOLS: <ls_message> TYPE uj0_s_message.

FIELD-SYMBOLS: <lt_data_struct> TYPE STANDARD TABLE. FIELD-SYMBOLS: <ls_data_struct> TYPE ANY.

FIELD-SYMBOLS: <lv_data_field> TYPE ANY. FIELD-SYMBOLS: <lv_line> TYPE ANY.

FIELD-SYMBOLS: <lv_profit_center> TYPE string.

* Assign importing data reference to field symbol

ASSIGN ir_data->* TO <lt_data_im>

Page 45: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 45

* Create work area for importing data

CREATE DATA lo_dataref LIKE LINE OF <lt_data_im>. ASSIGN lo_dataref->* TO <ls_data>.

* Create new internal table for exporting data and

* error data.

CREATE DATA lo_dataref LIKE TABLE OF <ls_data>. ASSIGN lo_dataref->* TO <lt_data_ex>.

CREATE DATA lo_dataref LIKE TABLE OF <ls_data>. ASSIGN lo_dataref->* TO <lt_data_er>.

* Move header row to exporting table, and remove from importing

* Store column names in LT_COLUMNS

READ TABLE <lt_data_im> ASSIGNING <ls_data> INDEX 1. IF sy-subrc = 0.

ASSIGN COMPONENT `LINE` OF STRUCTURE <ls_data> TO <lv_line>.

SPLIT <lv_line> AT `,` INTO TABLE lt_columns. APPEND <ls_data> TO <lt_data_ex>.

DELETE <lt_data_im> INDEX 1.

ENDIF.

* Build internal table with true columns from header row. lo_field_type ?=

cl_abap_datadescr=>describe_by_name( `UJ_LARGE_STRING` ). LOOP AT lt_columns ASSIGNING<ls_columns>.

APPEND INITIAL LINE TO lt_components ASSIGNING <ls_components>.

<ls_components>-name = <ls_columns>.

<ls_components>-type = lo_field_type. ENDLOOP.

* Use RTTS to describe the structure lo_struct_descr =

cl_abap_structdescr=>create( p_components = lt_components p_strict = abap_false ).

Page 46: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 46

* Create structure from describer

CREATE DATA lo_dataref TYPE HANDLE lo_struct_descr. ASSIGN lo_dataref->* TO <ls_data_struct> .

* Create internal table from structure

CREATE DATA lo_dataref LIKE TABLE OF <ls_data_struct> . ASSIGN lo_dataref->* TO <lt_data_struct>

* Fill new structured internal table with data from importing parameter

LOOP AT <lt_data_im> ASSIGNING <ls_data>.

APPEND INITIAL LINE TO <lt_data_struct> ASSIGNING <ls_data_struct>. ASSIGN COMPONENT `LINE` OFSTRUCTURE <ls_data> TO <lv_line>.

SPLIT <lv_line> AT `,` INTO TABLE lt_column_data. LOOP AT lt_column_data ASSIGNING <ls_column_data>.

ASSIGN COMPONENT sy-tabix

OF STRUCTURE <ls_data_struct> TO <lv_data_field>. IF sy-subrc <> 0.

CONTINUE.

ENDIF.

<lv_data_field> = <ls_column_data>. ENDLOOP.

ENDLOOP.

* Now you have a internal table with true columns.

* Loop each imported record and read corresponding

* record from structured internal table and perform

* check on profit center column, length must not be > 10.

LOOP AT <lt_data_im> ASSIGNING <ls_data>. lv_tabix = sy-tabix.

READ TABLE <lt_data_struct> ASSIGNING <ls_data_struct> INDEX lv_tabix. IF sy-subrc <> 0.

CONTINUE. ENDIF.

Page 47: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 47

* Get value of profit center

ASSIGN COMPONENT `PROFIT_CENTER` OF

STRUCTURE <ls_data_struct> TO <lv_profit_center>. IF sy-subrc <> 0 OR <lv_profit_center> IS INITIAL.

CONTINUE. ENDIF.

* Check the length, if > 10, add to reject table

* otherwise add to exporting table.

IF STRLEN( <lv_profit_center> ) > 10.

APPEND <ls_data> TO <lt_data_er>.

APPEND INITIAL LINE TO lt_error_reason ASSIGNING <ls_message>.

<ls_message>-msgid = `00`.

<ls_message>-msgty = `E`.

<ls_message>-msgno = `208`.

<ls_message>-msgv1 = `Profit Center value can not be > 10`.

<ls_message>-recno = lv_tabix + 1. " Account for removed header line

<ls_message>-message = cl_uj_utl_message=>get_message_text(

i_language = sy-langu is_message = <ls_message> ).

ELSE.

APPEND <ls_data> TO <lt_data_ex>. ENDIF.

ENDLOOP.

Page 48: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 48

IF lt_error_reason IS NOT INITIAL.

APPEND INITIAL LINE TO lt_message ASSIGNING <ls_message>.

<ls_message>-msgid = `00`.

<ls_message>-msgty = `E`.

<ls_message>-msgno = `208`.

<ls_message>-msgv1

= `Error occured during Start Routine BAdI processing`.

<ls_message>-message = cl_uj_utl_message=>get_message_text(

i_language = sy-langu is_message = <ls_message> ).

ENDIF.

* Exporting data to exporting data reference et_message = lt_message. et_error_reason =lt_error_reason.

GET REFERENCE OF <lt_data_ex> INTO er_data.

GET REFERENCE OF <lt_data_er> INTO er_error_data. ENDMETHOD.

5.2 Source Code for End Routine BAdI

Implementation

METHOD if_ujd_routine~runroutine.

DATA: lo_dataref TYPE REF TO data.

FIELD-SYMBOLS: <lt_data_im> TYPE STANDARD TABLE. FIELD-SYMBOLS: <lt_data_ex> TYPE STANDARD TABLE.

FIELD-SYMBOLS: <ls_data> TYPE ANY.

FIELD-SYMBOLS: <lv_id> TYPE string. FIELD-SYMBOLS: <lv_ecc_cc> TYPE string.

Page 49: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 49

* Assign importing data reference to field

symbol

ASSIGN ir_data->* TO <lt_data_im>.

* Create work area for importing data

CREATE DATA lo_dataref LIKE LINE OF <lt_data_im>. ASSIGN lo_dataref->* TO <ls_data>.

* Create new internal table for exporting data CREATE DATA lo_dataref LIKE TABLE OF <ls_data>. ASSIGNlo_dataref->* TO <lt_data_ex>.

* Get ECC_CC value from custom table or other datasource

LOOP AT <lt_data_im> ASSIGNING <ls_data>.

* Get ID value

ASSIGN COMPONENT `ID` OF STRUCTURE <ls_data> TO <lv_id>. IF sy-subrc <> 0 OR <lv_id> IS INITIAL.

CONTINUE. ENDIF.

* Get reference to ECC_CC field

ASSIGN COMPONENT `ECC_CC` OF STRUCTURE <ls_data> TO <lv_ecc_cc>. IF sy-subrc <> 0.

CONTINUE. ENDIF

* Get cost center value from custom table ZECC_CC per ID

* and fill field in structure, then append to exporting table

* This is just an example of what can be done here, this value

* could potentially come from many other sources, but to keep

* it simple, this HTG simply gets a value from a “Z” table. This

* “Z” table will not exist in your system, so you must implement

* your own data retrieval method here.

Page 50: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 50

* select single cost_center

* into <lv_ecc_cc>

* from zecc_cc

* where id = <lv_id>.

APPEND <ls_data> TO <lt_data_ex>. ENDLOOP.

* Exporting data to exporting data references

GET REFERENCE OF <lt_data_ex> INTO er_data. ENDMETHOD.

Info package load

When the info package load is running check the following:

Use tcode: RSMON > click on Load Data > check the status.Use “Refresh all” to refresh the data being loaded.Click on the data source and hit the “manage PSA” button and determine the load status. Check the PSA tablefor the data source and determine the data load.

use tcode: SM50 to check the BGD processes that are running.

Use tcode: SM37 to determine whether the job is being scheduled and check the job details and the job logsto determine the status.

DSO load

When DSO load is running check the following:

Use the monitor for the DTP and check the status for the data load. check the “Error Stack” button anddetermine if there are any errors.Use tcode RSMON > click on monitors > Data Store Objects > search theDSO.

Determine whether the 2 fields: last loading request ID and activated upto request iD. If there are no numbersin the “activated up to request ID” column then hit the Activate button at the right…When you activate theDSO i.e. the active tables you can check 3 places to determine the status of the flow. First obtain the job thatis displayed the moment you hit the start button while activating the DSO and go to SM37 and check the jobstatus….check the status and keep refreshing it until it says FINISHED. The same time check SM50 and look atthe BGD processes that are running under your name and keep refreshing until the BGD process stopsrunning..then you know that the data has been completely loaded…when the DTP is used to load data to theDSO you can always check the DTP monitor and determine the status of the load.

Page 51: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 51

Determine that Data is completely loaded in the Persistence Storage Area ….

Before anything make sure you have no data hiding in the “Initialization Options”….follow this one step below

If you find any data record as shown below before loading ….select it and delete it !!!

Page 52: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 52

Hit the monitor button at the top….

Page 53: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 53

Now click on the step-by-step analysis button

Hit the analysis button at the bottom

Page 54: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 54

Find the PSA database table and data

Find your datasource

Click on Technical Attributes…

Page 55: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 55

go to Tcode: SE16 and enter the table name: PSA table: /BIC/B0001997000

Page 56: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 56

there you go…simple way to find what data gets loaded in your Persistent Staging Area !

BI Metadata

Launching Web Application Designer the first time downloads all the metadata stored in BI server

the metadata is basically pulled from the metadata repository as shown below:

Page 57: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 57

Viewing reports on the web requires a repository manager in knowledge management which can pull all themetadata to display the reports..

Error DTP handling

when a DTP is created the below screen is the standard options available:

Page 58: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 58

1 Valid Records Update, No reporting (request Red)Here the incorrect data will NOT be available in the target info provider and the error records will be shown

in red. However, the correct data will continue to load in the target info provider.2 Valid Records Update, Reporting Possible (request Green)

Here the data will be available for reporting in the target info provider but the error records will not beshown in red. You have to go to the error DTP and catch the incorrect data.No update, No reporting

This is the standard option available for DTP.Below is the screen shot showing the error data in the DTP run.

Page 59: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 59

Go to the error DTP and click on the cushion button to get the below screen.

Page 60: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 60

Notice that the req del date is missing

Correct the missing req del date.

Page 61: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 61

Go back and run the ERROR DTP again and below is the result:

Now go back to the actual DTP and run it again and you might see this message:

If you choose “Repair” it will not delete the existing records and continue to load the non-error records to beloaded in the target info provider.If you choose “Delete “ it will delete the existing records in the target info provider and start a fresh load.If you don’t want to take the above approach, go to the maintain link of the target info provider and click onthe monitor and change the “red” status to green and that should solve the problem as shown below.

If you see a “Yellow” it means that the data loading is going on since you have chosen1 Valid Records Update, No reporting (request Red)

Data Transfer Process (DTP)

Page 62: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 62

Extraction Modes

The data from source can be loaded into to target by using either Full or Delta mode.

Delta:

No initialization is required if extraction mode „Delta‟ selected. When the DTP is executed with this option forthe first time, it brings all requests from the source into target and also sets the target in such way that it isinitialized.

Page 63: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 63

If you selected transfer mode Delta, you can define further parameters:

a. Only get delta once: It can select this option where the most recent data required in data target. In casedelete overlapping request from data target have to select this option and use delete overlapping requestprocess type in process chain. If used these setting then from the second loads it will delete the overlappingrequest from the data target and keeps only the last loaded request in data target.

b. Get all new data request by request: If don‟t select this option then the DTP will load all new requestsfrom source into a single request. Have to select this option when the number of new requests is more insource and the amount of data volume is more. If selected this option then the DTP will load request byrequest from source and keep the same request in target.

In 3.x, in info package have an option Initialization without data transfer. This can be achieved in 7.x

by putting „No data transfer, delta status in source: Fetched‟.

Full: It behaves same like info package with option “Full”. It loads all data/requests from source into target.

Page 64: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 64

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com |UAC - uac.sap.com

Page 65: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 65

Processing Mode:

These modes detail the steps that are carried out during DTP execution (e.g. Extraction, transformation,transfer etc). Processing mode also depends on the type of source.

The various types of processing modes are shown below:

1. Serial extraction, immediate parallel processing (asynchronous processing)

This option is most used in background processing when used in process chains. It processes the data packagesin parallel.

2. Serial in dialog process (for debugging) (synchronous processing)

This option is used if we want to execute the DTP in dialog process and this is primarily used for debugging.

3. No data transfer; delta status in source: fetched

This option behaves exactly in the same way as explained above.

Temporary Data Storage Options in DTP:

In DTP, it can set in case to store the data temporarily in data loading process of any process like beforeextraction, before transformations. It will help in data analyzing for failed data requests.

Page 66: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 66

Temporary store settings:

Page 67: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 67

Error Handling using DTP:

Options in error handling:

Page 68: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 68

Deactivated

Using this option error stack is not enabled at all. Hence for any failed records no data is written to the errorstack. Thus if the data load fails, all the data needs to be reloaded again.

No update, no reporting

If there is erroneous /incorrect record and we have this option enabled in the DTP, the load stops there withno data written to the error stack. Also this request will not be available for reporting. Correction would meanreloading the entire data again.

Valid Records Update, No reporting (Request Red)

Using this option all correct data is loaded to the cubes and incorrect data to the error stack. The data will notbe available for reporting until the erroneous records are updated and QM status is manually set to green. Theerroneous records can be updated using the error DTP.

Valid Records Updated, Reporting Possible (Request Green)

Using this option all correct data is loaded to the cubes and incorrect data to the error stack. The data will beavailable for reporting and process chains continue with the next steps. The erroneous records can be updatedusing the error DTP.

Page 69: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 69

How to Handle Error Records in Error Stack:

Error stack:

A request-based table (PSA table) into which erroneous data records from a data transfer process is written.The error stack is based on the data source, that is, records from the source are written to the error stack.

At runtime, erroneous data records are written to an error stack if the error handling for the data transferprocess is activated. You use the error stack to update the data to the target destination once the error isresolved.

In below example explained error data handling using error DTP in invalid characteristics data records:

Page 70: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 70

Here, DTP failed due to invalid characteristic values in records. Double click on error stack to see the errorrecords in error stack.

Modify the error record in error stack by clicking on edit button.

Page 71: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 71

Create and execute error DTP to load these modified records in error stack by clicking on create error DTP

of existing DTP of data source.

Page 72: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 72

This DTP load will create a new load request in target and load these modified records into target. Here, cansee the modified 3 records loaded into target.

Page 73: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 73

Importance of Semantic Groups

This defined key fields in semantic group‟s works as key fields of data package while reading data from

source system and error stock.

If need to put all records into a same data package which are having same keys from loading source system. Inthis case select semantic keys in DTP those are required as keys in data package.

Page 74: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 74

In semantic group the key fields will be available if selected the error handling option „Valid Records Update,No reporting (Request Red)‟ or „Valid Records Updated, Reporting Possible (Request Green)‟

DTP Settings to Increase the Loading Performance

1. Number of Parallel Process:

We can define the number of processes to be used in the DTP.

Page 75: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 75

Here defined 3, hence 3 data packages are processed in parallel.

2. Don’t Load Large Value Data by Sing DTP Load Request:

To avoid load large volume data into a single DTP request select Get all new data request by request inextraction tab

Page 76: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 76

3. Full Load to Target:

In case full load into data target from DSO or first load from DSO to target always loads from Active tableas it contains less number of records with Change log table.

Page 77: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 77

4. Load from Info Cube to Other Target:

In case reading data from info cube to open hub destination it is best to use extraction from Aggregates.If select this option it reads first the aggregates tables instead of E and F table in case cube contains anyaggregates.

Handle Duplicate Records

In case load to DSO, we can eliminate duplicate records by selecting option "Unique Data Records". Ifloading to master data it can be handled by selecting “handling duplicate record keys” option in DTP.

If you select this option then It will overwrite the master data record in case it time independent and willcreate multiple entries in case dime dependent master data.

Page 78: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 78

How to re-construct a Load From DSO

This guide is in reference to reconstruct a load in Opportunities Header DSO but the process is similar toany other object and can be a reference for any other DSO we need to fix data without taking new datafrom source system (CRM or R3).

1. Delete the existing load from the DSO.2. Go to the Reconstruction tab and select the request we want to reconstruct and click theReconstruction/Insert button.3. Come back to the Request tab and monitor the progress of the load clicking therefresh button, weneed continue monitoring until the request reach the green status.4. Despite of the load will complete, it won’t be inactive (there is no value in the ID of Request column).5. In order to activate it, we need to choose the request from the manage and click on the activatebutton.6. A new window with the list of available requests in the DSO will be shown, most of the times it willonly exist one in the first row of the list, let’s select it and click on the start button7. A new window asking in which specific Server we want to run the process appears, let’s accept what isproposed by default and click on green button to allow the process to continue.8. Once the activation is done, the request in the manage will show with all the information populatedand data wi

How to check the setting of flat file in BW

o check the settings of your flat file , what format of flat file we can upload in bw side,we need to go for se11 , go to the RSADMINCV1,this a Maint. view with text BW: Settings for Flat Files..Simply execute this , you will get the settings , follow the below screen shot

Page 79: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 79

Delta Update Methods in Logistic

We have three delta update methods in Logistic.

Page 80: Inventory Data Loading This document explains step by …docshare01.docshare.tips/files/24634/246349135.pdf · Inventory Data Loading This document explains step by step Inventory

August 2010 80

Direct Delta: With this update mode, the extraction data is transferred with each document postingdirectly into the BW delta queue. In doing so, each document posting with delta extraction is posted forexactly one LUW in the respective BW delta queues.

Queued Delta: With this update mode, the extraction data is collected for the affected applicationinstead of being collected in an extraction queue, and can be transferred as usual with the V3 update bymeans of an updating collective run into the BW delta queue. In doing so, up to 10000 delta extractionsof documents for an LUW are compressed for each DataSource into the BW delta queue, depending onthe application.

Un-serialized V3 Update: With this update mode, the extraction data for the application considered iswritten as before into the update tables with the help of a V3 update module. They are kept there aslong as the data is selected through an updating collective run and are processed. However, in contrastto the current default settings (serialized V3 update), the data in the updating collective run are therebyread without regard to sequence from the update tables and are transferred to the BW delta queue.