Академический Документы
Профессиональный Документы
Культура Документы
Contents
1 2 3 4
Motivation Data validation with BW 3.x Error handling with BW 3.x Data repair
Contents
1 2 3 4
Motivation Data validation with BW 3.x Error handling with BW 3.x Data repair techniques
BW is used as EDW, this means it is the central data store for consolidation and distribution of enterprise wide data
BW data often serve as foundation for further processing BW data are highly integrated
Data Contaminants - 1
012-3344 Cup Holder, green 012-3378 Cup Holder, red Lighter, black 012-4122 012-552 white cover 012-7662 green Cup Holder
US US US US US
inconsistent keys
JP JP JP JP JP
multiple keys
012-401 Cup Holder, green 012-4122 phone plug 012-661 channel 013-1452 plastic cover, red 013-1452 (pink version of above)
invalid characters
surprises
SAP AG 2004, Efficient usage of BW InfoProviders / 7
Data Contaminants - 2
data format
XYZ.com Ltd. 10/10/99 $ 44332 XYZ.com Ltd. 10/12/99 $ 33222
data redundancy
XYZ.com Ltd. XYZ.com Ltd. XYZ.com Ltd. XYZ.com Ltd. XYZ.com Ltd. XYZ.com Ltd. XYZ.com Ltd. 10/10/2000 10/10/2000 10/10/2000 10/12/2000 10/14/2000 10/17/2000 10/19/2000 $ 67221 $ 67221 $ 67221 $ 35332 $ 31122 $ 99999999 $ 78882
data anomalies
data redundancy
Data Contaminants - 3
Data Contamination during upload via Exits
Application Exits Generic BW Exit RSAP0001 Transfer- / Update-Routines Virtual Exits
Contents
1 2 3 4
Motivation Data validation with BW 3.x Error handling with BW 3.x Data repair techniques
Data validation
Data validation answers the questions: check what?
Technical quality Semantically (Business rules) Completeness
check where?
Automatically during data load Rule driven
check how?
Built-in Routine Formula (planned)
Update Rules
InfoSource InfoSource
Transfer Rules
Data
SAP AG 2004, Efficient usage of BW InfoProviders / 12
Data
technical
Empty field, Correct data type, code page, Master data check (SID)
Single field
Check for double records Records sent to BW = Records updated Sum of single revenues < 200
Multi table
In an update rule:
Arithmetic or conversion error Master data read unsuccessful Currency translation or time conversion error User built routine with error message No aggregation
SAP AG 2004, Efficient usage of BW InfoProviders / 14
Look Up Error Handling Bus. Partner InfoObject Bus. Partner 9000 doesnt meet the referential Integrity => the record is marked as erroneous
1000
COSTC##_FLEX_MD
0COMP_CODE
Communication Structure
9999
SUBSTRING ( TXTSH , ' 0' , ' 4' )
0TXTSH
Transfer Structure
SAP AG 2004, Efficient usage of BW InfoProviders / 19
9999-0000000001100
Update Rules
Benefit: Flexibility
Referential Integrity
All Data targets One check in transfer rules Only for selected InfoObjects Error handling Works for all ODS objects types Check against MD-table or ODS object is possible
If you select this indicator, the request is regarded as incorrect if the number of records received in BW does not match the number of updated records. That means that the request is regarded as incorrect if the records are sorted out, aggregated or created in the following:
transfer rules update rules update
Handling of double Data Records (checked on the key fields of the characteristics) means that only the last data record is updated to the master data / text table Checking for double data records only possible if update method is Only PSA Update Subsequently in Data Targets
SAP AG 2004, Efficient usage of BW InfoProviders / 23
1000 2000
120.000,00 190.000,00
120.000,00 189.600,00
0,00 - 400,00
Proactive Alerting off Administrator via Reporting Agent Embed this check in BW 3.x process chains
SAP AG 2004, Efficient usage of BW InfoProviders / 25
variable 0LSTRQID
Sales (Basis Cube)
Update Rules
InfoSource InfoSource
Transfer Rules
MultiCube
Remote Cube
Source System
variable 0MAPRQID *see: How to Validate InfoCube Data by Comparing it With PSA Data
APIs are available to read PSA contents Function RSAR_ODS_MAINTAIN,. Check for reference between records Summary checks, .
Identify check points in source system Write check point data to custom table Use generic extractor for load Populate check cube Perform Compress with 0 suppression Execute exception report
Complete Incomplete
Myself Data Mart Export DataSource Export DataSource Material Check completeness
Material Type Global Material Packing Size QM Status
Material
Complete Incomplete Expert Report stored information! Consumer Report only complete Information!
Audit Dimensions can identify: When were the data created? Which source did the data come from? Which tools where used for extraction? Which rules had touched the data?
Contents
1 2 3 4
Motivation Data validation in BW 3.x Error handling in BW 3.x Data repair techniques
Data Cleansing
Where: In the Source System? During Data Extraction? In the BW System? When: In the productive phase? In the test phase? In the blueprint phase? Who: Is it a technical issue? Is it a project issue? Is it an organizational issue?
Data cleansing occurs at all levels. Avoid tendency to attempt cleanse only within the BW extraction process. Often data cleansing is best performed at the legacy / source system level.
Data cleansing is one of the greatest risks in data movement efforts. Design belongs into blueprint phase. Test data are often cleaner than real data. Often data quality and inconsistency issues are systemic in the organization and must be addressed at higher level in the organization to get resolved.
Show error status of records in PSA table Possibility to choose in the scheduler to... abort process when errors occurr process the correct records but do not allow reporting on them process the correct records and allow reporting on them It also can be chosen, with how many errors the whole request is wrong Write invalid records to a new request Update the invalid records after correction
Error handling
Error handling No Error handling
Scheduler Scheduler
Extract
OK
PSA
Error
PSA
Abort of update
Application log
Marked in PSA
ErrorRequest
Color of Request
red red
red red
No update, no reporting Update valid records, no reporting Update valid records, Reporting possible
X X X
X X X
X X X X X
InfoSource InfoSource
Transfer Rules
Data
SAP AG 2004, Efficient usage of BW InfoProviders / 40
Data
IDoc
Hierarchies
InfoSource InfoSource
Transfer Rules
Data
SAP AG 2004, Efficient usage of BW InfoProviders / 41
Data
If no Error Handling is needed, records or even the whole data package can be skipped: RETURNCODE <> 0 means skipping the record ABORT <> 0 means skipping the data package With BW 3.0B the functions SKIP RECORD and ABORT PACKAGE exist in the Transformation library
Example
Bad
Good
Lookup
Communication structure Communication structure
Transfer structure
Transfer structure
Contents
1 2 3 4
Repair requests
With BW 3.x repair requests can be updated to an ODS object. This means: Full update for correction purposes updated to an ODS object which is usually updated using delta loads In the InfoPackage menu the request is then marked as repair request Before doing this, incorrect data can be deleted selectively from the ODS object
Possible approach in BW 2.0B / 2.1C: Use generic DataSource based on PSA table to correct ODS object data via full uploads
Further Information
Public Web:
www.sap.com > Solutions > SAP NetWeaver