| Status | In Progress |
|---|---|
| Owner | |
| Stakeholders |
Purpose
The purpose of this document is to define the conversion approach to create and migrate Purchase Order Attachments in S/4 HANA.
Attachment Functionality in SAP ECC
- Storage Method: Attachments are typically stored using Generic Object Services (GOS), which allow users to link files to sales documents (via transaction codes like ME21N, ME22N, ME23N).
- Technical Reference: The attachments are managed via the Business Object Repository (BOR) object. The Business Object Repository (BOR) in SAP is a central access point for SAP business object types and their corresponding Business Application Programming Interfaces (BAPIs). It provides an object-oriented view of data and processes within an SAP system and is crucial for integrating SAP with external applications. The BOR also plays a role in SAP Business Workflow, ArchiveLink, and output control.
Below are the object names with their document types. There could be more that are applicable
BUS2009 - Purchase Requisition Item
BUS2010 - Vendor Quotation Request
BUS2011 - Vendor Quotation
BUS2012 - Purchase Order
BUS2013 - Purchase Scheduling Agreement
BUS2014 - Purchase Contract
BUS2015 - Inbound Delivery
BUS2020 - Vendor Document
BUS2025 - Purchasing Contract
BUS2052 - Purchase Outline Agreement
BUS2105 - Purchase Requisition
BUS2126 - Vendor Billing Document
Changes in SAP S/4HANA
- Attachments are linked using the Attachment List Service (also used in Fiori apps).
- Technically embedded in the Business Object Processing Framework (BOPF) or handled by Object Page Layout for Fiori views
- User Experience Enhancements: Drag-and-drop uploads via Fiori.
Attachment Types
Any type of document can be an attachment, and can be attached when the user creates a PO from the shopping cart.
In most cases this is a PDF type attachment, and includes Invoices, Specs, Emails....
Conversion Scope
The scope of this document covers the approach for converting active Attachments for Open Purchase Orders from Legacy Source Systems into S/4HANA following the S2P Master Data Design Standard.
The data from legacy system includes:
- The basis of this object's legacy data is Open Purchase Orders that cannot be closed, and must be migrated. This is handled in CNV-9045 Open Purchase Orders
- That the purchase order in point 1 has an attachment maintained.
The data from legacy system excludes:
- Attachments for closed Purchase orders, or where the PO is not in scope for various reasons.
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| WP2 | Attachment for Open Purchase orders | S4 Hana ROW | ||
| PF2 | Attachment for Open Purchase orders | S4 Hana ROW | ||
| WP2 | Attachment for Open Purchase orders | S4 Hana China | ||
| PF2 | Attachment for Open Purchase orders | S4 Hana China | ||
| WP2 | Attachment for Open Purchase orders | S4 Hana CUI | ||
| PF2 | Attachment for Open Purchase orders | S4 Hana CUI |
Additional Information
Multi-language Requirement
Document Management
Generic Object Services (GOS) is a functionality that allows users to attach documents, notes, and other objects to business objects like purchase orders. It provides a standard way to manage and access these attachments within various SAP transactions, including those related to purchase orders.
The following are the key concepts for POs.
Attachment Management:
GOS enables users to add attachments (like PDFs, Word documents, etc.) to purchase orders, either directly within the transaction or through a separate DMS (Document Management System) if configured.Viewing Attachments:
GOS also allows users to view the attachments associated with a specific purchase order.Object Relationships:
GOS can also show relationships between the purchase order and other objects, like IDocs, workflows, or other related documents.Toolbar/Button:
The GOS functionality is typically accessed through a toolbar button or a menu option within the purchase order transaction (e.g., ME21N, ME22N, ME23N).Customization:
In some cases, the GOS button or functionality might need to be activated for specific transactions or user roles using customizing settings.- Other:
- GOS also allows for other functions like adding private notes, sending the object to another user, or viewing related workflows.
The Business Object Repository (BOR) in SAP is a central access point for SAP business object types and their corresponding Business Application Programming Interfaces (BAPIs). It provides an object-oriented view of data and processes within an SAP system and is crucial for integrating SAP with external applications. The BOR also plays a role in SAP Business Workflow, ArchiveLink, and output control.
Key aspects of the BOR and Purchase Orders:
Centralized Access:
The BOR acts as a single point of access for all business objects and their associated BAPIs.Object-Oriented View:
It provides an object-oriented perspective of business processes, allowing for modular and reusable components.Purchase Order Object:
The purchase order business object (type BUS2012) is a key object within the BOR, representing purchase order data and operations.BAPIs and Methods:
BAPIs, which are remote-enabled ABAP function modules, are used to implement the methods of business objects. For example, a BAPI might be used to change a purchase order item or retrieve purchase order details.Attributes and Parameters:
Business objects have attributes that store object properties (e.g., purchase order number, vendor) and methods use import/export parameters to pass data between different parts of the system.BOR Browser:
The Business Object Repository Browser (transaction code SWO1) allows users to browse, display, and maintain business objects and their components.Integration:
The BOR facilitates the integration of SAP with other systems, such as through middleware.Workflow and Other Services:
The BOR is used in SAP Business Workflow, ArchiveLink, output control, and other generic object services.
The DMS approach is elaborated in KDD "Document Management in the SyWay Solution".
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.
Therefore, there will be one SAP instance specifically for CUI related entities. The migration for CUI related entities will be covered by US based data consultant using separate tools.
Special Requirements
Different SAP Instance Migration Approach
Due to compliance requirement, there will be one SAP instance for Rest of the World, one for China and one for CUI.
- For entities in China, the data will be loaded into SAP China instance while the entire migration process will remain the same as rest of the world.
- For entities which will reside in CUI, the migration will be handled by US based data consultant.
Please refer to the link for the entity mapping for each instance. In case the data object is applicable for multiples instances, what business rule to follow?
Target Design
The technical design of the target for this conversion approach.
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| SRGBTBREL | CLIENT | Client | C | 3 | Internal | |
| SRGBTBREL | BRELGUID | GUID | X | 16 | Internal | |
| SRGBTBREL | RELTYPE | Relationship type | C | 10 | Mandatory | |
| SRGBTBREL | INSTID_A | Instance ID | C | 70 | Mandatory | |
| SRGBTBREL | TYPEID_A | Object Type | C | 32 | Mandatory | |
| SRGBTBREL | CATID_A | Object Category | C | 2 | Mandatory | |
| SRGBTBREL | INSTID_B | Instance ID | C | 70 | Internal | |
| SRGBTBREL | TYPEID_B | Object Type | C | 32 | Internal | |
| SRGBTBREL | CATID_B | Object Category | C | 2 | Internal | |
| SRGBTBREL | LOGSYS_A | Logical System | C | 10 | Not in use | |
| SRGBTBREL | ARCH_A | Object Archived | C | 1 | Not in use | |
| SRGBTBREL | LOGSYS_B | Logical System | C | 10 | Not in use | |
| SRGBTBREL | ARCH_B | Object Archived | C | 1 | Not in use | |
| SRGBTBREL | UTCTIME | Short Time Stamp | P | 8 | Internal | |
| SRGBTBREL | HOMESYS | Logical System | C | 10 | Not in use |
Data Cleansing
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
| Review and remove the obsolete attachments from the load. | |||||
Conversion Process
SAP's document migration process involve three parts:
- Moving the documents to a storage area.
- Creating the entries in the S4 HANA system, such as purchase orders, etc
- Linking the attachments to the purchase documents.
Various tools are used in the migration process.
The high-level process is represented by the diagram below:
The Rest of the World and China follows the process below, using Syniti ADMM.
For CUI instance, the ETL process will be similar, but it will not use Syniti tool.
Data Privacy and Sensitivity
For SAP CUI instances, the data will be processed by US Based consultants.Extraction
Extract data from a source into . There are 2 possibilities:
- The data exists. connects to the source and loads the data into . There are 3 methods:
- Perform full data extraction from relevant tables in the source system(s).
- Perform extraction through the application layer.
- Only if ; cannot connect to the source, data is loaded to the repository from the provided source system extract/report.
- The data does not exist (or cannot be converted from its current state). The data is manually collected by the business directly in . This is to be conducted using DCT (Data Collection Template) in
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 / US Based Consultant for SAP CUI instance 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 / US Based Consultant for SAP CUI instance |
| Extraction Execution Plan | - Establish execution timelines and batch processing schedules. - Assign responsibilities for extraction monitoring. - Document dependencies on other migration tasks. | Syniti / US Based Consultant for SAP CUI instance |
| Data Quality and Validation | - Define error handling mechanisms for extraction failures. | Syniti / US Based Consultant for SAP CUI instance |
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 / US Based Consultant for SAP CUI instance |
| 3 | Referential Integrity
| Syniti / US Based Consultant for SAP CUI instance |
| 4 | Extraction Methodology
| Syniti / US Based Consultant for SAP CUI instance |
| 5 | Performance and Scalability Considerations
| Syniti / US Based Consultant for SAP CUI instance |
| 6 | Security and Compliance
| Syniti / US Based Consultant for SAP CUI instance |
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 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
- 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 | Transformation Scope Definition - Identify the source and target data structures. - Define business rules for data standardization. - Establish data cleansing requirements to remove inconsistencies. | Data Team |
| 2 | Data Mapping and Standardization - Align source fields with target fields. - Ensure unit consistency (e.g., currency, measurement units) | Data Team |
| 3 | Business Rule Application - Implement data enrichment/collection if applicable - Apply conditional transformations based on predefined logic/business rules | Data Team |
| 4 | Transformation Execution Plan - Define batch processing schedules. - Assign responsibilities for monitoring execution. - Establish error-handling mechanisms | Syniti / US Based Consultant for SAP CUI instance |
Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
| 1 | WP2/PF2 | SRGBTBREL | CLIENT | Client | S4 Hana | SRGBTBREL | CLIENT | Client | Internal - |
| 2 | WP2/PF3 | SRGBTBREL | BRELGUID | GUID | S4 Hana | SRGBTBREL | BRELGUID | GUID | Internal - |
| 3 | WP2/PF4 | SRGBTBREL | RELTYPE | Relationship type | S4 Hana | SRGBTBREL | RELTYPE | Relationship type | Default - ATTA |
| 4 | WP2/PF5 | SRGBTBREL | INSTID_A | Instance ID | S4 Hana | SRGBTBREL | INSTID_A | Instance ID | Xref - Map ECC sales document number to S4 sales document number |
| 5 | WP2/PF6 | SRGBTBREL | TYPEID_A | Object Type | S4 Hana | SRGBTBREL | TYPEID_A | Object Type | Copy - It will include below object types. BUS2009 - Purchase Requisition Item BUS2010 - Vendor Quotation Request BUS2011 - Vendor Quotation BUS2012 - Purchase Order BUS2013 - Purchase Scheduling Agreement BUS2014 - Purchase Contract BUS2015 - Inbound Delivery BUS2020 - Vendor Document BUS2025 - Purchasing Contract BUS2052 - Purchase Outline Agreement BUS2105 - Purchase Requisition BUS2126 - Vendor Billing Document |
| 6 | WP2/PF7 | SRGBTBREL | CATID_A | Object Category | S4 Hana | SRGBTBREL | CATID_A | Object Category | Copy - BO |
| 7 | WP2/PF8 | SRGBTBREL | INSTID_B | Instance ID | S4 Hana | SRGBTBREL | INSTID_B | Instance ID | Internal - |
| 8 | WP2/PF9 | SRGBTBREL | TYPEID_B | Object Type | S4 Hana | SRGBTBREL | TYPEID_B | Object Type | Copy - MESSAGE |
| 9 | WP2/PF10 | SRGBTBREL | CATID_B | Object Category | S4 Hana | SRGBTBREL | CATID_B | Object Category | Copy - BO |
| 10 | WP2/PF11 | SRGBTBREL | LOGSYS_A | Logical System | S4 Hana | SRGBTBREL | LOGSYS_A | Logical System | Not in Use - |
| 11 | WP2/PF12 | SRGBTBREL | ARCH_A | Object Archived | S4 Hana | SRGBTBREL | ARCH_A | Object Archived | Not in Use - |
| 12 | WP2/PF13 | SRGBTBREL | LOGSYS_B | Logical System | S4 Hana | SRGBTBREL | LOGSYS_B | Logical System | Not in Use - |
| 13 | WP2/PF14 | SRGBTBREL | ARCH_B | Object Archived | S4 Hana | SRGBTBREL | ARCH_B | Object Archived | Not in Use - |
| 14 | WP2/PF15 | SRGBTBREL | UTCTIME | Short Time Stamp | S4 Hana | SRGBTBREL | UTCTIME | Short Time Stamp | Internal - |
| 15 | WP2/PF15 | SRGBTBREL | HOMESYS | Logical System | S4 Hana | SRGBTBREL | HOMESYS | Logical System | Not in Use - |
Transformation Mapping
| Mapping Table Name | Mapping Table Description |
|---|---|
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 / US Based Consultant for SAP CUI instance |
| 2 | Referential Integrity - Ensure dependent records are transformed together or in advance, such as CNV-3007 Business Partner General and DMS server migration | Syniti / US Based Consultant for SAP CUI instance |
| 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 / US Based Consultant for SAP CUI instance |
| 5 | Logging and Error Handling - Maintain detailed logs of transformation activities. - Define error-handling procedures for failed transformations | Syniti / US Based Consultant for SAP CUI instance |
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 |
|
| Test Referential Integrity | Confirm dependent records exist in related tables |
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 |
|---|---|
Accuracy
| Task | Action |
|---|---|
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 | Load Scope Definition - Identify the target system and database structure. - Define data objects (tables, fields, records) to be loaded. - Establish business rules for data validation. | Data team |
| 2 | Load Methodology - Specify the loading tools and technologies (Migration Cockpit, LSMW, custom loading program). | Syniti / US Based Consultant for SAP CUI instance |
| 3 | Data Quality and Validation - Ensure data integrity checks (null values, duplicates, format validation). - Perform pre-load validations to verify completeness. - Define error handling mechanisms for load failures | Syniti / US Based Consultant for SAP CUI instance |
| 4 | Load Execution Plan - Establish execution timelines and batch processing schedules. - Assign responsibilities for monitoring execution. - Document dependencies on other migration tasks | Syniti / US Based Consultant for SAP CUI instance |
| 5 | Logging and Reporting - Maintain detailed logs of loading activities. - Generate summary reports on loaded data volume and quality. - Define escalation procedures for errors | Syniti / US Based Consultant for SAP CUI instance |
Load Phase and Dependencies
The Attachment for customer master data will be loaded in the pre-cutover period.
Before loading, it will have dependency on the DMS server migration completion.
Configuration
| Item # | Configuration Item |
|---|---|
| ??? | |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
| 9045 | Open Purchase Orders |
| 1092 | Service Price Condition |
| 2016 | Service Master Record |
| 3026 | Business Partner (FLVN01) |
list the exact title of the conversion object of only the immediate predecessor – this will then confirm the DDD (Data Dependency Diagram)
Error Handling
| Error Type | Error Description | Action Taken |
|---|---|---|
| Technical | There is error message when using the upload program | Raise ticket to the technical team |
Post-Load Validation
Project Team
Completeness
| Task | Action |
|---|---|
Accuracy
| Task | Action |
|---|---|
Business
Post-load validation is a critical step in data migration, ensuring that transferred data is accurate, complete, and functional within the target system.
1. Ensuring Data Integrity
After migration, data must be consistent with its original structure. Post-load validation checks for missing records, incorrect mappings, and formatting errors to prevent discrepancies.
2. Business Continuity
Faulty data can disrupt operations, leading to financial losses and inefficiencies. Validating post-load data ensures that applications function as expected, preventing downtime.
3. Error Detection and Resolution
By validating data post-migration, businesses can detect anomalies early, reducing the cost and effort required for corrections
Completeness
| Task | Action |
|---|---|
Accuracy
| Task | Action |
|---|---|
Key Assumptions
- Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
- is in scope based on data design and any exception requested by business.
See also
Change log
Workflow history
| Title | Last Updated By | Updated | Status | |
|---|---|---|---|---|
| There are no pages at the moment. | ||||

