| Status | Revision in Progress |
|---|---|
| Owner | |
| Stakeholders |
Purpose
The purpose of this document is to define the conversion approach to migrate Business Partners - Prospect (BUP002) in S/4 HANA.
In Salesforce, a Prospect is typically used to track potential customers who have shown interest but have not yet been qualified as quotations or sales order. They may include essential details like company information, interaction history, and engagement level.
In SAP S/4HANA, the Prospect is intended to be represented similarly. Prospects are classified as BP (Business Partners) under the Customer category, with attributes that allow future conversion into full-fledged customers
Conversion Scope
The scope of this document covers the approach for converting active Prospect from Legacy Source Systems into S/4HANA following the Business Partners - Prospect (BUP002) Master Data Design Standard.
The data from legacy system includes:
For Core CRM
- Under the Salesforce Account object, the 'Partner Type' is Prospect.
- The 'Account Organization' is 'SCO' (Syensqo).
- There is usage for the prospect within 4 years(i.e., based on 'last activity' field to check the usage), e.g., there are visit reports, leads or sales opportunities created.
- The prospect is for GBU within scope based on field 'Involved GBU(s)', which include Novecare, Technology Solutions, Specialty Polymers and Composite Materials.
- There is no customer number in field 'PRS ID / RCS ID'
For iCare
- Under the Salesforce Account object, the 'Type' is Prospect.
- There is usage for the prospect within 4 years(i.e., based on 'last activity' field to check the usage), e.g., there are visit reports, leads or sales opportunities created.
- The prospect is for GBU within scope (based on 'GBU' field in the report), which include Novecare, Technology Solutions, Specialty Polymers and Composite Materials..
- There is no customer number in field 'PRS Code' or 'RCS Code'
The data from legacy system excludes:
- The Prospect is defined exclusively for GBU out of scope, such as Oil&Gas, Aroma.
- The Prospect has already been converted to customer.
- Exclude Status for the Prospect is Rejected
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| iCare | Active Prospect | 338 | S4 Hana | 338 |
| CoreCRM | Active Prospect | 2167 | S4 Hana | 2167 |
Additional Information
Multi-language Requirement
The prospect may contain local language. Therefore, the conversion will also need to support the multi-language address.
Document Management
N/A.
Legal Requirement
CMMC 2.0 is a mandatory DoD cybersecurity certification for contractors handling Controlled Unclassified Information (CUI) and Federal Contract Information (FCI). CUI includes sensitive technical data (e.g., design specs, system info) related to U.S. military and space applications. The Composites Business handles CUI and is therefore within CMMC scope. Without certification, the business risks disqualification from existing and future DoD programs.
It is mandatory to implement CMMC-compliant systems and processes to for all the organizations that are dealing with CUI.
Special Requirements
Due to compliance requirement, there will be three SAP instances, one for Rest of the World (ROW), one for China and one for CUI. As Prospect is Tier 1 data object, all the Prospects will be migrated into all three SAP instances.
Target Design
The technical design of the target for this conversion approach.
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| BUT000 | PARTNER | PARTNER | Business Partner | CHAR | 10 | Mandatory |
| BUT000 | BU_GROUP | BU_GROUP | Grouping | CHAR | 4 | Mandatory |
| BUT000 | BPEXT | BPEXT | External BP Number | CHAR | 20 | Mandatory |
| BUT000 | BU_SORT1 | BU_SORT1 | Search Term 1 | CHAR | 20 | Mandatory |
| BUT000 | NAME_ORG1 | NAME_ORG1 | Name 1 | CHAR | 40 | Mandatory |
| BUT000 | NAME_ORG2 | NAME_ORG2 | Name 2 | CHAR | 40 | Conditional |
| BUT000 | IND_SECTOR | IND_SECTOR | Industry sector | CHAR | 10 | Conditional |
| ADRC | NATION | NATION | Address Version | CHAR | 1 | Conditional |
| ADRC | NAME1 | NAME1 | Name | CHAR | 40 | Mandatory |
| ADRC | NAME2 | NAME2 | Name 2 | CHAR | 40 | Conditional |
| ADRC | NAME_CO | NAME_CO | c/o | CHAR | 40 | Conditional |
| ADRC | CITY1 | CITY1 | City | CHAR | 40 | Conditional |
| ADRC | CITY2 | CITY2 | District | CHAR | 40 | Conditional |
| ADRC | POST_CODE1 | POST_CODE1 | Postal Code | CHAR | 10 | Conditional |
| ADRC | TRANSPZONE | TRANSPZONE | Transportation Zone | CHAR | 10 | Conditional |
| ADRC | STREET | STREET | Street | CHAR | 60 | Conditional |
| ADRC | HOUSE_NUM1 | HOUSE_NUM1 | House Number | CHAR | 10 | Conditional |
| ADRC | HOUSE_NUM2 | HOUSE_NUM2 | Supplement | CHAR | 10 | Conditional |
| ADRC | STR_SUPPL1 | STR_SUPPL1 | Street 2 | CHAR | 40 | Conditional |
| ADRC | STR_SUPPL2 | STR_SUPPL2 | Street 3 | CHAR | 40 | Conditional |
| ADRC | STR_SUPPL3 | STR_SUPPL3 | Street 4 | CHAR | 40 | Conditional |
| ADRC | LOCATION | LOCATION | Street 5 | CHAR | 40 | Conditional |
| ADRC | COUNTRY | COUNTRY | Country/Region Key | CHAR | 3 | Mandatory |
| ADRC | ADRC | TAXJURCODE | Tax Jurisdiction | CHAR | 15 | Conditional |
| ADRC | LANGU | LANGU | Language Key | LANG | 1 | Mandatory |
| ADRC | REGION | REGION | Region | CHAR | 3 | Mandatory |
| ADRC | SORT1 | SORT1 | Search Term 1 | CHAR | 20 | Mandatory |
| ADRC | FAX_NUMBER | FAX_NUMBER | Fax | CHAR | 30 | Conditional |
| ADRC | TEL_NUMBER | TEL_NUMBER | Telephone | CHAR | 30 | Conditional |
| ADR6 | SMTP_ADDR | SMTP_ADDR | E-Mail Address | CHAR | 241 | Conditional |
| KNA1 | KTOKD | KTOKD | Account group | CHAR | 4 | Mandatory |
| KNA1 | DEAR3 | DEAR3 | Indicator: Sales prospect | CHAR | 1 | Mandatory |
| BUT100 | PARTNER | PARTNER | Business Partner | CHAR | 10 | Mandatory |
| BUT100 | RLTYP | RLTYP | BP Role | CHAR | 6 | Mandatory |
| ADR12 | URI_SRCH | URI_SRCH | URI address | CHAR | 50 | Conditional |
| DFKKBPTAXNUM | TAXTYPE | TAXTYPE | Tax Number Category | CHAR | 4 | Conditional |
| DFKKBPTAXNUM | TAXNUM | TAXNUM | Tax number | CHAR | 20 | Conditional |
Data Cleansing
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
| 3009-001 | C2 | Transportation zone is not mapped | Based on the unique combination of country/region/city/postal code, transportation zone cannot be mapped based on TM's DCT result | Account ID/Account Name/Street/Country/Region/Postal Code |
Conversion Process
The high-level process is represented by the diagram below:
The ETL (Extract, Transform, Load) process is a structured approach to data migration and management, ensuring high-quality data is seamlessly transferred across systems. Here’s a breakdown of its key components:
1. Extraction
A report will be run in the source systems, such as Syensqo CRM system (i.e., iCare/CoreCRM) periodically to extract the prospect information in excel format. The excel is then staged for transformation.
2. Transformation
Once extracted, the data undergoes cleansing, consolidation, and governance. This step ensures data integrity, consistency, and compliance with business rules. The transformation process includes:
- Data validation to remove inconsistencies.
- Standardization to align formats across datasets.
- Business rule application to refine data for operational use.
3. Loading
The transformed data is then loaded into the target S4 Hana system.
Data Privacy and Sensitivity
N/AExtraction
Extract data from a source into Syniti Migrate. Syniti Migrate connects to the source and loads the data into Syniti Migrate. As Syniti Migrate cannot connect to the source, data is loaded to the repository from the provided source system extract/report.
The agreed Relevancy criteria is applied to the extracted records to identify the records that are applicable for the Target loads.
Extraction Run Sheet
| Req # | Requirement Description | Team Responsible |
|---|---|---|
| Extraction Scope Definition | - Identify the source systems and databases involved. - Define the data objects (tables, fields, records) to be extracted. - Establish business rules for data selection. | Syniti Syniti / LTC Data team |
| Extraction Methodology | - Specify the extraction approach (full, incremental, or delta extraction). - Determine the tools and technologies used. - Define data filtering criteria to exclude irrelevant records. | Syniti |
| Extraction Execution Plan | - Establish execution timelines and batch processing schedules. - Assign responsibilities for extraction monitoring. - Document dependencies on other migration tasks. | Syniti |
| Data Quality and Validation | - Define error handling mechanisms for extraction failures. | Syniti |
Selection Screen
| Selection Ref Screen | Parameter Name | Selection Type | Requirement | Value to be entered/set |
|---|---|---|---|---|
| N/A | ||||
Data Collection Template (DCT)
Target Ready Data Collection Template will be created for data with exception of some fields which require transformation as mentioned in the transformation rule.DCT Rules
| Field Name | Field Description | Rule |
|---|---|---|
| N/A | ||
Extraction Dependencies
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Source System Availability
| Syensqo IT |
| 2 | Data Structure
| Syniti |
| 3 | Referential Integrity
| Syniti |
| 4 | Extraction Methodology
| Syniti |
| 5 | Performance and Scalability Considerations
| Syniti |
| 6 | Security and Compliance
| Syniti |
Transformation
The Target fields are mapped to the applicable Legacy field that will be its source, this is a 3-way activity involving the Business, Functional team and Data team. This identifies the transformation activity required to allow Syniti Migrate to make the data Target ready:
- Perform value mapping and data transformation rules.
- Legacy values are mapped to the to-be values (this could include a default value)
- Values are transformed according to the rules defined in Syniti Migrate
- Prepare target-ready data in the structure and format that is required for loading via prescribed Load Tool. This step also produces the load data ready for business to perform Pre-load Data Validation
Transformation Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Identify target S/4HANA fields and determine applicable legacy source fields from both Salesforce systems iCare, Core CRM | Functional Team (L2C)+ Data Team (L2C) |
| 2 | Map legacy field values to S/4HANA target values (including field-level mapping and technical names) | Data Team (L2C), Data Team (Syniti) |
| 3 | Define value mapping rules for fields requiring standardization or harmonization across the two source systems iCare, Core CRM | Functional Team (L2C)+ Data Team (L2C) |
| 4 | Identify and agree on default values where legacy data is incomplete or inconsistent | Business Team + Functional Team (L2C) |
| 5 | Configure transformation rules in Syniti Migrate | Data Team (Syniti), Data Team (L2C) |
| 6 | Review transformation logic and mappings with Business for confirmation | Business Team + Functional Team (L2C) |
| 7 | Perform initial transformation run and generate draft target-ready dataset | Data Team (Syniti), |
| 8 | Review draft target-ready data for structure and completeness | Data Team (L2C), Functional Team (L2C) |
| 9 | Share transformed data with Business for Pre-load Validation | Business Team |
| 10 | Incorporate feedback from Business and refine mappings or transformation logic as needed | Data Team (L2C) |
| 11 | Finalize and approve transformed data as Target Ready Load File | Business + Functional (L2C) + Data Team (L2C) |
| 12 | Handover final file to Load Team or trigger the load via Syniti Load Workbench | Data Team (Syniti), Data Load Team |
Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Core CRM | Account | SLV10_Acc_Id__c / Account ID | S4 Hana | BUT000 | PARTNER | Business Partner | Rule - Apply external number range from 1000000 to 99999999, use the running number from 1000000. This will need to consider the CNV-3007 as it shares the same BP grouping. | |
| 2 | Core CRM | Account | S4 Hana | BUT000 | BU_GROUP | Grouping | Default - BP02 | ||
| 3 | Core CRM | Account | SLV10_Acc_Id__c / Account ID | Account Id | S4 Hana | BUT000 | BPEXT | External BP Number | Copy |
| 4 | Core CRM | Account | SLV41_Customer_Name__c / Account Name or Corporate Group | Customer Name Corporate Group | S4 Hana | BUT000 | BU_SORT1 | Search Term 1 | Rule - If there is corporate group and the corporate group value is not 'DECISION: VARIOUS' or 'NOT ASSIGNED', copy 'Corporate group', Otherwise it would be the abbreviation of the 'Customer Name', copy first 20 char |
| 5 | Core CRM | Account | SLV41_Customer_Name__c / Account Name | Customer Name | S4 Hana | BUT000 | NAME_ORG1 | Name 1 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimiter to separate the entire name |
| 6 | Core CRM | Account | SLV41_Customer_Name__c / Account Name | Customer Name | S4 Hana | BUT000 | NAME_ORG2 | Name 2 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimiter to separate the entire name |
| 7 | Core CRM | Account | S4 Hana | BUT000 | IND_SECTOR | Industry sector | Not in use | ||
| 8 | Core CRM | Account | SLV41_Customer_Name_INT__c/Account Name (local language) | Account Name (local language) | S4 Hana | ADRC | NATION | Address Version | Rule - If there is value in field 'Account Name (local language)' then international version will be used. The international version will be mapped based on country. MAP_NATION_CX |
| 9 | Core CRM | Account | For std version - SLV41_Customer_Name__c / Account Name For international version - SLV41_Customer_Name_INT__c / Account Name (local language) | Account Name | S4 Hana | ADRC | NAME1 | Name | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimiter to separate the entire name |
| 10 | Core CRM | Account | For std version - SLV41_Customer_Name__c / Account Name For international version - SLV41_Customer_Name_INT__c / Account Name (local language) | Account Name | S4 Hana | ADRC | NAME2 | Name 2 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimiter to separate the entire name |
| 11 | Core CRM | Account | For std version, SLV41_C_O_Name__c / C/O Name For International version SLV41_C_O_Name_INT__c / C/O Name (Local Language) | C/O Name C/O Name (Local Language) | S4 Hana | ADRC | NAME_CO | c/o | Copy - |
| 12 | Core CRM | Account | For std version, SLV7_ACC_Country__c / City For international version SLV_City_local_language__c / City (Local Language) | City City (Local Language) | S4 Hana | ADRC | CITY1 | City | Copy - |
| 13 | Core CRM | Account | SLV20_District__c / District | District | S4 Hana | ADRC | CITY2 | District | Copy - |
| 14 | Core CRM | Account | SLV_Address__c / Zip/Postal Code | Zip/Postal Code | S4 Hana | ADRC | POST_CODE1 | Postal Code | Copy - |
| 15 | Core CRM | Account | S4 Hana | ADRC | TRANSPZONE | Transportation Zone | Rule - Follow TM CNV-1052 Based on the unique combination of country/region/city/postal code to map the value from the TM CNV-1052 DCT page. If there is value found, then use it as transportation zone. if there is no value found, just leave it blank | ||
| 16 | Core CRM | Account | Std version - SLV_Address__c /Address Line 1 International Version - SLV_Street_local_language__c / Street (Local Language) | Address Line 1 Street (Local Language) | S4 Hana | ADRC | STREET | Street | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1 / STR_SUPPL2/3/4. Use Space as delimiter to separate the entire street |
| 17 | Core CRM | Account | SLV_Address__c / House Number 1 | Address | S4 Hana | ADRC | HOUSE_NUM1 | House Number | Not in use |
| 18 | Core CRM | Account | SLV_Address__c | Address | S4 Hana | ADRC | HOUSE_NUM2 | Supplement | Not in use |
| 19 | Core CRM | Account | Std version - SLV_Address__c / Address Line 2 International Version - SLV_Street_local_language__c /Street (Local Language) | Address Line 2 Street (Local Language) | S4 Hana | ADRC | STR_SUPPL1 | Street 2 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1 / STR_SUPPL2/3/4. Use Space as delimiter to separate the entire name |
| 20 | Core CRM | Account | Std version - SLV_Address__c / Address Line 3 International Version - SLV_Street_local_language__c /Street (Local Language) | Address Line 3 Street (Local Language) | S4 Hana | ADRC | STR_SUPPL2 | Street 3 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1 / STR_SUPPL2/3/4. Use Space as delimiter to separate the entire name |
| 21 | Core CRM | Account | Std version - SLV_Address__c /Address Line 1/2/3
| Address Line 1/2/3 Street(Local Language) | S4 Hana | ADRC | STR_SUPPL3 | Street 4 | Rule - If the Address line 1/2/3 exceeds the length and require this field, otherwise it is not in use. |
| 22 | Core CRM | Account | S4 Hana | ADRC | LOCATION | Street 5 | Not in use | ||
| 23 | Core CRM | Account | SLV7_ACC_Country__c/ Country | Country / City | S4 Hana | ADRC | COUNTRY | Country/Region Key | Mapping - MAP_LAND_CX |
| 24 | Core CRM | Account | SLV2_ACC_Language__c / Language | Language | S4 Hana | ADRC | LANGU | Language Key | Rule If there is value in field 'Language', Mapping - MAP_SPRAS_CX Otherwise default EN |
| 25 | Core CRM | Account | SLV_Address__c /State/Province | State/Province | S4 Hana | ADRC | REGION | Region | Mapping - MAP_REGION_CX |
| 26 | Core CRM | Account | SLV41_Customer_Name__c / Customer Name or Corporate Group | Customer Name Corporate Group | S4 Hana | ADRC | SORT1 | Search Term 1 | Rule - If there is corporate group and the corporate group value is not 'DECISION: VARIOUS' or 'NOT ASSIGNED', copy 'Corporate group', Otherwise it would be the abbreviation of the 'Customer Name', copy first 20 char |
| 70 | Core CRM | Account | Fax | Fax | S4 Hana | ADRC | Fax | Fax | Copy - |
| 27 | Core CRM | Account | Phone | Phone | S4 Hana | ADRC | TEL_NUMBER | Telephone | Copy - |
| 28 | Core CRM | Account | SLV20_HeadQuarter_Email__c / HeadQuarter Email | HeadQuarter Email | S4 Hana | ADR6 | SMTP_ADDR | E-Mail Address | Copy - |
| 29 | Core CRM | Account | S4 Hana | KNA1 | KTOKD | Account group | Default - DEBI | ||
| 66 | Account | S4 Hana | KNA1 | DEAR3 | Indicator: Sales prospect | Default - X | |||
| 30 | Core CRM | Account | S4 Hana | BUT100 | PARTNER | Business Partner | Rule - Follow BUT000, | ||
| 31 | Core CRM | Account | S4 Hana | BUT100 | RLTYP | BP Role | Default - BUP002 & FLCU01. It refers to 2 roles here, every prospect will have 2 roles. | ||
| 32 | Core CRM | Account | Website | Website | S4 Hana | ADR12 | URI_SRCH | URI address | Copy - |
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
| 33 | iCare | Account | Account ID | Account ID | S4 Hana | BUT000 | PARTNER | Business Partner | Rule - Apply external number range from 1000000 to 99999999, use the running number from 1000000. This will need to consider the CNV-3007 as it shares the same BP grouping. |
| 34 | iCare | Account | S4 Hana | BUT000 | BU_GROUP | Grouping | Default - BP02 | ||
| 35 | iCare | Account | X18D_Account_ID__c / Account ID | Account ID | S4 Hana | BUT000 | BPEXT | External BP Number | Copy - |
| 36 | iCare | Account | Account Name or Corporate Group | Account Name Corporate Group | S4 Hana | BUT000 | BU_SORT1 | Search Term 1 | If Rule - If there is corporate group and the corporate group value is not 'DECISION: VARIOUS - PARENT ACCOUNT' or 'NOT ASSIGNED', copy 'Corporate group', but ignore the '- PARENT ACCOUNT' part Otherwise it would be the abbreviation of the customer name, copy first 20 char |
| 37 | iCare | Account | Account Name | Account Name | S4 Hana | BUT000 | NAME_ORG1 | Name 1 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimiter to separate the entire name |
| 38 | iCare | Account | Account Name | Account Name | S4 Hana | BUT000 | NAME_ORG2 | Name 2 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimiter to separate the entire name |
| 39 | iCare | Account | S4 Hana | BUT000 | IND_SECTOR | Industry sector |
Not in use | ||
| 41 | iCare | Account | Account Name (Local Language) | Account Name (Local Language) | S4 Hana | ADRC | NATION | Address Version | Rule - If there is value in field 'Account Name (Local Language)' then international version will be used. The international version will be mapped based on country. refer to mapping table MAP_NATION_CX |
| 42 | iCare | Account | For std version - Account Name (Local Language) For international version - Account_Name_Local_Language__c /Account Name (Local Language) | Account Name Account Name (Local Language) | S4 Hana | ADRC | NAME1 | Name | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimitor to separate the entire name |
| 43 | iCare | Account | For std version - Account Name (Local Language) For international version - Account_Name_Local_Language__c /Account Name (Local Language) | Account Name Account Name (Local Language) | S4 Hana | ADRC | NAME2 | Name 2 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in NAME_ORG1 rest in NAME_ORG2. Use Space as delimitor to separate the entire name |
| 44 | iCare | Account | S4 Hana | ADRC | NAME_CO | c/o | Not in use | ||
| 45 | iCare | Account | For std version, BillingAddress / Sold-to City For international version Billing_City_Local_Language__c / Sold-to City (Local Language) | Sold-to City Sold-to City (Local Language) | S4 Hana | ADRC | CITY1 | City | Copy - |
| 46 | iCare | Account | S4 Hana | ADRC | CITY2 | District | Not in use | ||
| 47 | iCare | Account | BillingAddress / Sold-to Zip/Postal Code | Sold-to Zip/Postal Code | S4 Hana | ADRC | POST_CODE1 | Postal Code | Copy - |
| 48 | iCare | Account | S4 Hana | ADRC | TRANSPZONE | Transportation Zone | Rule - Follow TM CNV-1052 | ||
| 49 | iCare | Account | Std version - BillingAddress / Sold-to Address Line 1 International Version - Billing_Street_Local_Language__c/ Sold-to Street (Local Language) | Sold-to Address Line 1 Sold-to Street (Local Language) | S4 Hana | ADRC | STREET | Street | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1/2/3/4. Use Space as delimiter to separate the entire name |
| 50 | iCare | Account | Sold-to Address | S4 Hana | ADRC | HOUSE_NUM1 | House Number | Not in use | |
| 51 | iCare | Account | Sold-to Address | S4 Hana | ADRC | HOUSE_NUM2 | Supplement | Not in use | |
| 52 | iCare | Account | Std version - BillingAddress / Sold-to Address Line 2 International Version - Billing_Street_Local_Language__c / Sold-to Street (Local Language) | Sold-to Address Line 2 Sold-to Street (Local Language) | S4 Hana | ADRC | STR_SUPPL1 | Street 2 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1/2/3/4. Use Space as delimiter to separate the entire name |
| 53 | iCare | Account | Std version - BillingAddress / Sold-to Address Line 3 International Version - Billing_Street_Local_Language__c / Sold-to Street (Local Language) | Sold-to Address Line 3 Sold-to Street (Local Language) | S4 Hana | ADRC | STR_SUPPL2 | Street 3 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1/2/3/4. Use Space as delimiter to separate the entire name |
| 54 | iCare | Account | Std version - BillingAddress Billing_Street_Local_Language__c / Sold-to Street (Local Language) | Sold-to Address Line 1/2/3 Sold-to Street (Local Language) | S4 Hana | ADRC | STR_SUPPL3 | Street 4 | Rule - If the field length is less than 40 char, then copy. If the field length is more than 40 char, copy the first part in STREET rest in STR_SUPPL1/2/3/4. Use Space as delimiter to separate the entire name |
| 55 | iCare | Account | International Version - Billing_State_Province_Local_Language__c | S4 Hana | ADRC | LOCATION | Street 5 | Not in use | |
| 69 | iCare | Account | Tax Juridiction code | Tax Juridiction code | S4 Hana | ADRC | TAXJURCODE | Tax Jurisdiction | Copy |
| 56 | iCare | Account | BillingAddress / Sold-to Country | Sold-to Country | S4 Hana | ADRC | COUNTRY | Country/Region Key | Mapping - MAP_LAND_CX |
| 57 | iCare | Account | S4 Hana | ADRC | LANGU | Language Key |
Default EN | ||
| 58 | iCare | Account | BillingAddress / Sold-to State/Province | Sold-to State/Province | S4 Hana | ADRC | REGION | Region | Mapping - MAP_REGION_CX |
| 59 | iCare | Account | Account Name or Corporate Group | Account Name Corporate Group | S4 Hana | ADRC | SORT1 | Search Term 1 | Rule - If there is corporate group and the corporate group value is not 'DECISION: VARIOUS - PARENT ACCOUNT' or 'NOT ASSIGNED', copy 'Corporate group', but ignore the '- PARENT ACCOUNT' part Otherwise it would be the abbreviation of the customer name, copy first 20 char |
| 68 | iCare | Account | Fax | Fax | S4 Hana | ADRC | Fax | Fax | Copy - |
| 60 | iCare | Account | Phone | Phone | S4 Hana | ADRC | TEL_NUMBER | Telephone | Copy - |
| 61 | iCare | Account | Email_update__c / Email & General Customer Email | Email & General Customer Email | S4 Hana | ADR6 | SMTP_ADDR | E-Mail Address | Copy. If there are values in both fields, then copy both emails address. |
| 62 | iCare | Account | S4 Hana | KNA1 | KTOKD | Account group | Default - DEBI | ||
| 40 | iCare | Account | S4 Hana | KNA1 | DEAR3 | Indicator: Sales prospect | Default - X | ||
| 63 | iCare | Account | S4 Hana | BUT100 | PARTNER | Business Partner | Rule - Follow BUT000, | ||
| 64 | iCare | Account | S4 Hana | BUT100 | RLTYP | BP Role | Default - BUP002 & FLCU01. Both roles will be applied. | ||
| 65 | iCare | Account | Website | Website | S4 Hana | ADR12 | URI_SRCH | URI address | Copy - |
| 66 | iCare | Account | Sold-to Country | Sold-to Country | S4 Hana | DFKKBPTAXNUM | TAXTYPE | Tax Number Category | Rule - Refer to MAP_TAXTYPE_CX. Based on 'Sold-to Country' to map the tax number categories |
| 67 | iCare | Account | VAT ID | VAT ID | S4 Hana | DFKKBPTAXNUM | TAXNUM | Tax number | Copy - |
List of Custom Target Reports for this object is maintained here: Conversion Specification - Custom Reports Register.
Transformation Mapping
| Mapping Table Name | Mapping Table Description |
|---|---|
| MAP_REGION_CX | Country/Region Code Mapping Table for Salesforce |
| MAP_NATION_CX | International version mapping table for Salesforce |
| MAP_LAND_CX | Country Code Mapping Table for Salesforce |
| MAP_SPRAS_CX | Language mapping table for Salesforce |
| MAP_TAXTYPE_CX | Tax Number Category mapping table for Salesforce |
Transformation Dependencies
List the steps that need to occur before transformation can commence| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Source Data Integrity - Ensure extracted data is complete, accurate, and consistent. - Validate that data types and formats align with transformation requirements. | Syniti |
| 2 | Referential Integrity - Ensure dependent records are transformed together or in advance | Syniti |
| 3 | Transformation Logic and Mapping - Define data mapping rules between source and target schemas. | Data Team |
| 4 | Performance and Scalability Considerations - Optimize transformation processes for large datasets. - Ensure system resources can handle transformation workloads | Syniti |
| 5 | Logging and Error Handling - Maintain detailed logs of transformation activities. - Define error-handling procedures for failed transformations | Syniti |
Pre-Load Validation
Project Team
Completeness
| Task | Action |
|---|---|
| Compare Data Counts |
|
| Validate the mandatory fields | Validate there is value for all the mandatory fields |
| Validate Primary Keys and Unique Constraints |
|
Accuracy
| Task | Action |
|---|---|
| Validate the transformation | Validate the fields which require transformation have the value after transformation instead of the original field value |
| Check Data Consistency |
|
Business
Completeness
| Task | Action |
|---|---|
| Compare Data Counts |
|
Accuracy
| Task | Action |
|---|---|
| Check Data Consistency |
|
Load
The load process includes:
- Execute the automated data load into target system using load tool or product the load file if the load must be done manually
- Once the data is loaded to the target system, it will be extracted and prepared for Post Load Data Validation
Load Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Confirm readiness of final approved data sets for each ECC source system WP2 and PF2 | Business / Functional Team |
| 2 | Validate transformation rules and mappings in Syniti tool | Data Team (L2C-Data) |
| 3 | Generate target-ready load files based on S/4HANA condition table format | Data Team (Syniti) |
| 4 | Review and approve load files before execution | Business / Functional Team |
| 5 | Execute the custom loading program in the S/4HANA system | Data Load Team |
| 6 | Monitor load progress and capture load statistics (records loaded, errors, duplicates, etc.) | Data Team (Syniti) / Technical Team |
| 7 | Extract loaded data from S/4HANA for post-load validation | Data Team (Syniti) |
| 8 | Perform post-load data validation (compare target data with source/approved files) for all loaded prospects | Data Team (L2C-Data) |
| 9 | Log and resolve any data load errors or mismatches identified during validation | Data Team (L2C-Data) + Functional Team |
| 10 | Obtain business sign-off on successful load and validation | Business Team |
| 11 | Archive load logs, error reports, and validation results for audit/compliance | Data Team (L2C-Data) / Data Team (Syniti) / PMO |
Load Phase and Dependencies
Configuration
| Item # | Configuration Item |
|---|---|
| 1 | BP Grouping |
| 2 | Customer Account Group |
| 3 | BP Number Range |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
| N/A | |
Error Handling
| Error Type | Error Description | Action Taken |
|---|---|---|
| Configuration / Data Transformation | The value XXX for field XXX doesn't exist |
|
| Configuration | There is mandatory field XXX missing |
|
| Configuration | The BP grouping is External or Internal Number range |
|
Post-Load Validation
Project Team
Completeness
| Task | Action |
|---|---|
| Perform Data Count | Validate that migrated data matches source records. |
| Perform Source-to-Target Comparisons | Validate all the mandatory fields are populated as per the loading file |
Accuracy
| Task | Action |
|---|---|
| Execute Sample Queries and Reports | Generate prospect reports to compare expected vs. actual results, i.e., all the fields loaded into S4 hold the same value after transformation. |
Business
Completeness
| Task | Action |
|---|---|
| Perform Source-to-Target Comparisons | Validate that migrated data matches source records counts. |
| Conduct Post-Migration Reconciliation | Go through reports comparing pre- and post-migration data provided by Syniti. |
Accuracy
| Task | Action |
|---|---|
| Perform Manual Testing | Open Fiori App 'Manage Business Partner', conduct manual spot-checks for additional assurance. |
Key Assumptions
- Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
- Prospect is in scope based on data design and any exception requested by business.
- There will be 3 SAP instances, one for ROW, one for China and one for CUI only.
- Prospect will be maintained in 3 SAP instances
- Data cleansing for Prospect, including Deduplication in Salesforce (iCare and Core CRM) will be performed in R3 release. The potential cleansing activity is listed below, but will not be restricted to below scenarios. The details will be further elaborated in R3 data migration activities.
| System | Field | Cleansing Requirement |
|---|---|---|
| iCare/Core | Phone | There are different formats and invalid data, such as 'Error', 'tel' etc. |
| iCare/ Core | Website | There are phone numbers and non-website information maintained in this field |
| iCare /Core | Zip/Postal Code | There are postal code which format doesn't meet the standard set up |
See also
Change log
Workflow history
| Title | Last Updated By | Updated | Status | |
|---|---|---|---|---|
| There are no pages at the moment. | ||||
