| Status | Approved |
|---|---|
| Owner | ABOLAJI-ext, Luqman |
| Stakeholders | |
| Jira Request ID | ERP-1424 - Getting issue details... STATUS |
| Jira Development ID | ERP-2324 - Getting issue details... STATUS |
High- Level Specification
| Implementing System | SAP S/4HANA |
|---|---|
| Invoked by/Invokes | ERP-2325 OrderChange Message from Elemica - Integration Process |
| Business Process Reference | 02.04.02.01. Manage Standard Sales Order |
Functional Overview
The functional design of the system interface defines the API to be provided or consumed.
EDI customers sends their Sales Order change message through Elemica to Syensqo. Elemica sends the OrderChange XML to SAP CPI which a custom API which compares the OrderChange fields (or a subset of) with the existing Sales Order fields (or a subset of) and identifies the fields that the OrderChange message is requesting to change. The Sales Order and the fields where new values are sent in the OrderChange message are then sent to the Order Modification Fiori App for CSR review and approval / rejection. A notification is also sent to the CSR on the sales order with the changes requested by the customer.
The purpose of this functional specification is to create the custom API for the identification of the changes to a sales order requested by the customer and sending notification of the changes to the CSR. This will be done by using
- data directly available in the Elemica XML
- data derived from S/4HANA based on data in the Elemica XML (e.g. using the Purchase Order Number in Elemica XML to find the Sales Order Number in S/4HANA)
- data directly pulled from S/4HANA (e.g. Sales Order Number and specific sales order fields)
Scope and Objectives
This System Interface, a custom implementation in SAP S/4HANA,
- consumes the OrderChange data from SAP CPI
- maps this data into a structure to compare with existing sales order in SAP S/4HANA
- transform some data OrderChange message from SAP CPI into the Sales Order structure in S/4HANA
- performs lookup of specified data (as applicable) in S/4HANA
- stage certain data from OrderChange message from SAP CPI into a S/4HANA custom table
The standard SAP Sales Order Change API is unable to support the above functions, hence the need for a custom API.
Process Flow Diagram
Step | Description | Comment |
|---|---|---|
1 | Elemica sends OrderChange message to SAP CPI via API Management |
|
2 | SAP CPI receives the OrderChange XML message from Elemica and maps to SAP Sales Order in S/4HANA. To identify the fields on the sales order the OrderChange message wants to make, SAP CPI calls the custom API | This is covered in Integration Process functional specification ERP-2325 OrderChange Message from Elemica - Integration Process |
3 | The Sales Order to be changed in SAP S/4HANA is identified based on the custom API calling SAP S/4HANA. The API also collates the fields in the sales order than needs to be changed and sends this to both the Order Modification Fiori App and as a Fiori Launchpad notification to the CSR | Order Modification Fiori App to be built in ERP 2326 - New Order Modification Fiori App |
Assumptions
- The custom Sales Order Change API will be called from SAP CPI and be able to lookup data from SAP S/4HANA to feed the target structure of the sales order
- The source object and S/4HANA System target field mappings, including custom fields, will be updated based on mapping requirements in S/4HANA System.
- The Custom API should be able to map all source and target mappings to successfully create a sales order
- The custom API should be able to send Fiori launchpad notifications to CSR identified on the sales order
Dependencies
- All configurations in S/4HANA from where the custom API should look up values should already be implemented before the interface is deployed.
- Connection between SAP CPI and S/4HANA already set up
- Required master data in S/4HANA already loaded
Security, Integrity and Controls
- Required authorisations to execute the custom API need to be defined.
- Existing secure connectivity for communication between SAP S/4HANA and SAP CPI will be applied.
Configuration Requirements
N/A
Special Requirements
N/A
Design Rationale
API Use
Custom API based on API_SALES_ORDER_SRV_0001 (tbc)
Data Structure
The following fields will be used to provide the required data structure of the interface:
The following fields will be used to provide the required data structure of the interface:
| A_SalesOrderHeader | 1 | ||||
| DocumentIdentifier | N | String | |||
| DocumentIdentifierDateTime | N | DateTime | |||
| RequestingDocumentIdentifier | N | String | |||
| RequestingDocumentDateTime | N | DateTime | |||
| SenderPartnerName | Y | String | |||
| SenderDUNS | Y | String | |||
| SenderContactName | N | String | |||
| SenderContactDescription | N | String | |||
| SenderTelephoneNumberTelecomCountryCode | N | String | |||
| SenderTelephoneNumberTelecomAreaCode | N | String | |||
| SenderTelephoneNumberPhoneNumber | N | String | |||
| SenderFaxNumberTelecomCountryCode | N | String | |||
| SenderFaxNumberTelecomAreaCode | N | String | |||
| SenderFaxNumberPhoneNumber | N | String | |||
| SenderEmailAddress | N | String | |||
| SenderAlternativeCommunicationMethod | N | String | |||
| SenderAddressLine | N | String | |||
| SenderCityName | N | String | |||
| SenderStateProvince | N | String | |||
| SenderPostalCode | N | String | |||
| SenderPostalCountry | N | String | |||
| SenderLocationCode | N | String | |||
| SenderTaxIdentifierNumber | N | String | |||
| SenderJurisdiction | N | String | |||
| SenderTaxCertificateType | N | String | |||
| SenderTaxCertificateNumber | N | string | |||
| SenderTaxBasis | N | string | |||
| SenderTaxRate | N | string | |||
| SenderSenderURL | N | string | |||
| ReceiverPartnerName | Y | string | |||
| ReceiverDUNS | Y | String | |||
| ReceiverContactName | N | String | |||
| ReceiverContactDescription | N | String | |||
| ReceiverTelephoneNumberTelecomCountryCode | N | String | |||
| ReceiverTelephoneNumberTelecomAreaCode | N | String | |||
| ReceiverTelephoneNumberPhoneNumber | N | String | |||
| ReceiverFaxNumberTelecomCountryCode | N | String | |||
| ReceiverFaxNumberTelecomAreaCode | N | String | |||
| ReceiverFaxNumberPhoneNumber | N | String | |||
| ReceiverEmailAddress | N | String | |||
| ReceiverAlternativeCommunicationMethod | N | String | |||
| ReceiverAddressLine | N | String | |||
| ReceiverCityName | N | String | |||
| ReceiverStateProvince | N | String | |||
| ReceiverPostalCode | N | String | |||
| ReceiverPostalCountry | N | String | |||
| ReceiverLocationCode | N | String | |||
| ReceiverTaxIdentifierNumber | N | String | |||
| ReceiverJurisdiction | N | String | |||
| ReceiverTaxCertificateType | N | String | |||
| ReceiverTaxCertificateNumber | N | String | |||
| ReceiverTaxBasis | N | String | |||
| ReceiverTaxRate | N | String | |||
| ReceiverSenderURL | N | String | |||
| PurchaseOrderTypeCode | Y | String | |||
| CustomerPurchaseOrder | Customer reference number that the customer uses to uniquely identify a purchasing document (for example, a sales inquiry or a purchase order) | Y | String | ||
| CustomerPurchaseOrderDate | Y | DateTime | |||
| TransactionCurrency | The currency that applies to the sales order | N | String | ||
| ContractNumber | Customer reference number that the customer uses to uniquely identify a purchasing document (for example, a sales inquiry or a purchase order) | N | String | ||
| LanguageCode | N | String | |||
| RevisionNumber | N | String | |||
| ReleaseNumber | N | String | |||
| IncotermsClassification | Commonly used trading terms that comply with the standards established by the International Chamber of Commerce (ICC) | N | String | ||
| IncotermsLocation1 | Provides additional information for the primary Incoterm | N | String | ||
| CustomerPaymentTerms | N | String | |||
| DiscountPercentage | N | String | |||
| DiscountAmount | N | String | |||
| DiscountDaysDue | N | String | |||
| DiscountsDueDate | N | DateTime | |||
| DeferredAmount | N | String | |||
| DeferedDueDate | N | DateTime | |||
| PercentDeferredPayable | N | String | |||
| Penalty | N | String | |||
| ShipWithPurchaseOrder | N | String | |||
| CountryOfFinalDestination | N | String | |||
| MarketPlaceIdentifier | N | String | |||
| MarketPlaceDocumentIdentifier | N | String | |||
| MarketPlaceReferenceItem | N | String | |||
| MarketPlaceSellerIdentifier | N | String | |||
| InvoiceCommunicationMode | N | String | |||
| BillingScheduleCode | N | String | |||
| BuyerPartnerName | The customer who orders the goods or services. The sold-to party is contractually responsible for sales orders. | Y | String | ||
| BuyerPartnerCode | Y | String | |||
| BuyerContactName | N | String | |||
| BuyerContactDescription | N | String | |||
| SellerPartnerName | N | String | |||
| SellerPartnerCode | Y | String | |||
| SellerContactName | N | String | |||
| SellerContactDescription | N | String | |||
| ShiptoPartnerName | N | String | |||
| ShipToPartnerCode | Y | String | |||
| PayerPartnerName | N | String | |||
| PayerPartnerCode | N | String | |||
| BilltoPartnerName | N | String | |||
| BillToPartnerCode | N | String | |||
| ShipperPartnerName | N | String | |||
| ShipperPartnerCode | N | String | |||
| ShipFromPartnerName | N | String | |||
| ShipFromPartnerCode | N | String | |||
| CarrierPartnerName | N | String | |||
| CarrierPartnerCode | N | String | |||
| BuyerTelephoneNumberTelecomCountryCode | N | String | |||
| BuyerTelephoneNumberTelecomAreaCode | N | String | |||
| BuyerTelephoneNumberPhoneNumber | N | String | |||
| BuyerFaxNumberTelecomCountryCode | N | String | |||
| BuyerFaxNumberTelecomAreaCode | N | String | |||
| BuyerFaxNumberPhoneNumber | N | String | |||
| BuyerEmailAddress | N | String | |||
| BuyerAlternativeCommunicationMethod | N | String | |||
| BuyerAddressLine | N | String | |||
| BuyerCityName | N | String | |||
| BuyerStateProvince | N | String | |||
| BuyerPostalCode | N | String | |||
| BuyerPostalCountry | N | String | |||
| BuyerLocationCode | N | String | |||
| BuyerExternalReference | N | String | |||
| BuyerTaxIdentifierNumber | N | String | |||
| BuyerJurisdiction | N | String | |||
| BuyerTaxCertificateType | N | String | |||
| BuyerTaxCertificateNumber | N | String | |||
| BuyerTaxBasis | N | String | |||
| BuyerTaxRate | N | String | |||
| BuyerSenderURL | N | String | |||
| ShipToTelephoneNumberTelecomCountryCode | N | String | |||
| ShipToTelephoneNumberTelecomAreaCode | N | String | |||
| ShipToTelephoneNumberPhoneNumber | N | String | |||
| ShipToFaxNumberTelecomCountryCode | N | String | |||
| ShipToFaxNumberTelecomAreaCode | N | String | |||
| ShipToFaxNumberPhoneNumber | N | String | |||
| ShipToEmailAddress | N | String | |||
| ShipToAlternativeCommunicationMethod | N | String | |||
| ShipToAddressLine | N | String | |||
| ShipToCityName | N | String | |||
| ShipToStateProvince | N | String | |||
| ShipToPostalCode | N | String | |||
| ShipToPostalCountry | N | String | |||
| ShipToLocationCode | N | String | |||
| ShipToExternalReference | N | String | |||
| ShipToTaxIdentifierNumber | N | String | |||
| ShipToJurisdiction | N | String | |||
| ShipToTaxCertificateType | N | String | |||
| ShipToTaxCertificateNumber | N | String | |||
| ShipToTaxBasis | N | String | |||
| ShipToTaxRate | N | String | |||
| ShipToSenderURL | N | String | |||
| PayerTelephoneNumberTelecomCountryCode | N | String | |||
| PayerTelephoneNumberTelecomAreaCode | N | String | |||
| PayerTelephoneNumberPhoneNumber | N | String | |||
| PayerFaxNumberTelecomCountryCode | N | String | |||
| PayerFaxNumberTelecomAreaCode | N | String | |||
| PayerFaxNumberPhoneNumber | N | String | |||
| PayerEmailAddress | N | String | |||
| PayerAlternativeCommunicationMethod | N | String | |||
| PayerAddressLine | N | String | |||
| PayerCityName | N | String | |||
| PayerStateProvince | N | String | |||
| PayerPostalCode | N | String | |||
| PayerPostalCountry | N | String | |||
| PayerLocationCode | N | String | |||
| PayerExternalReference | N | String | |||
| PayerTaxIdentifierNumber | N | String | |||
| PayerJurisdiction | N | String | |||
| PayerToTaxCertificateType | N | String | |||
| PayerTaxCertificateNumber | N | String | |||
| PayerTaxBasis | N | String | |||
| PayerTaxRate | N | String | |||
| PayerSenderURL | N | String | |||
| AccountHolderName | N | String | |||
| AccountNumber | N | String | |||
| FinancialInstitution | N | String | |||
| FinancialInstitutionDFINumber | N | String | |||
| CreditCardNumber | N | String | |||
| CreditCardType | N | String | |||
| CreditCardExpirationDate | N | DateTime | |||
| BillToTelephoneNumberTelecomCountryCode | N | String | |||
| BillToTelephoneNumberTelecomAreaCode | N | String | |||
| BillToTelephoneNumberPhoneNumber | N | String | |||
| BillToFaxNumberTelecomCountryCode | N | String | |||
| BillToFaxNumberTelecomAreaCode | N | String | |||
| BillToFaxNumberPhoneNumber | N | String | |||
| BillToEmailAddress | N | String | |||
| BillToAlternativeCommunicationMethod | N | String | |||
| BillToAddressLine | N | String | |||
| BillToCityName | N | String | |||
| BillToStateProvince | N | String | |||
| BillToPostalCode | N | String | |||
| BillToPostalCountry | N | String | |||
| BillToLocationCode | N | String | |||
| BillToExternalReference | N | String | |||
| BillToTaxIdentifierNumber | N | String | |||
| BillToJurisdiction | N | String | |||
| BillToTaxCertificateType | N | String | |||
| BillToTaxCertificateNumber | N | String | |||
| BillToTaxBasis | N | String | |||
| BillToTaxRate | N | String | |||
| BillToSenderURL | N | String | |||
| ShipFromTelephoneNumberTelecomCountryCode | N | String | |||
| ShipFromTelephoneNumberTelecomAreaCode | N | String | |||
| ShipFromTelephoneNumberPhoneNumber | N | String | |||
| ShipFromFaxNumberTelecomCountryCode | N | String | |||
| ShipFromFaxNumberTelecomAreaCode | N | String | |||
| ShipFromFaxNumberPhoneNumber | N | String | |||
| ShipFromEmailAddress | N | String | |||
| ShipFromAlternativeCommunicationMethod | N | String | |||
| ShipFromAddressLine | N | String | |||
| ShipFromCityName | N | String | |||
| ShipFromStateProvince | N | String | |||
| ShipFromPostalCode | N | String | |||
| ShipFromPostalCountry | N | String | |||
| ShipFromLocationCode | N | String | |||
| ShipFromExternalReference | N | String | |||
| ShipFromTaxIdentifierNumber | N | String | |||
| ShipFromJurisdiction | N | String | |||
| ShipFromTaxCertificateType | N | String | |||
| ShipFromTaxCertificateNumber | N | String | |||
| ShipFromTaxBasis | N | String | |||
| ShipFromTaxRate | N | String | |||
| ShipFromSenderURL | N | String | |||
| CarrierTelephoneNumberTelecomCountryCode | N | String | |||
| CarrierTelephoneNumberTelecomAreaCode | N | String | |||
| CarrierTelephoneNumberPhoneNumber | N | String | |||
| CarrierFaxNumberTelecomCountryCode | N | String | |||
| CarrierFaxNumberTelecomAreaCode | N | String | |||
| CarrierFaxNumberPhoneNumber | N | String | |||
| CarrierEmailAddress | N | String | |||
| CarrierAlternativeCommunicationMethod | N | String | |||
| CarrierAddressLine | N | String | |||
| CarrierCityName | N | String | |||
| CarrierStateProvince | N | String | |||
| CarrierPostalCode | N | String | |||
| CarrierPostalCountry | N | String | |||
| CarrierLocationCode | N | String | |||
| CarrierExternalReference | N | String | |||
| CarrierTaxIdentifierNumber | N | String | |||
| CarrierJurisdiction | N | String | |||
| CarrierTaxCertificateType | N | String | |||
| CarrierTaxCertificateNumber | N | String | |||
| CarrierTaxBasis | N | String | |||
| CarrierTaxRate | N | String | |||
| CarrierSenderURL | N | String | |||
| ShipperTelephoneNumberTelecomCountryCode | N | String | |||
| ShipperTelephoneNumberTelecomAreaCode | N | String | |||
| ShipperTelephoneNumberPhoneNumber | N | String | |||
| ShipperFaxNumberTelecomCountryCode | N | String | |||
| ShipperFaxNumberTelecomAreaCode | N | String | |||
| ShipperFaxNumberPhoneNumber | N | String | |||
| ShipperEmailAddress | N | String | |||
| ShipperAlternativeCommunicationMethod | N | String | |||
| ShipperAddressLine | N | String | |||
| ShipperCityName | N | String | |||
| ShipperStateProvince | N | String | |||
| ShipperPostalCode | N | String | |||
| ShipperPostalCountry | N | String | |||
| ShipperLocationCode | N | String | |||
| ShipperExternalReference | N | String | |||
| ShipperTaxIdentifierNumber | N | String | |||
| ShipperJurisdiction | N | String | |||
| ShipperTaxCertificateType | N | String | |||
| ShipperTaxCertificateNumber | N | String | |||
| ShipperTaxBasis | N | String | |||
| ShipperTaxRate | N | String | |||
| ShipperSenderURL | N | String | |||
| A_SalesOrderText | 1 to many | ||||
| CustomerRequiredInstructions | N | String | |||
| ShipperInstructions | N | String | |||
| ConsigneeInstructions | N | String | |||
| CarrierInstructions | N | String | |||
| ImportInstruction | N | String | |||
| CustomerServiceInstructions | N | String | |||
| RoutingInstruction | N | String | |||
| A_SalesOrderItem | 1 | ||||
| LineItemNumber | N | String | |||
| PurchaseOrderLineItemNumber | N | String | |||
| LineItemHandlingInstruction | N | String | |||
| MaterialByCustomer | Y | String | |||
| MaterialByCustomerDescription | N | String | |||
| ProductDescription | N | String | |||
| ProductGradeDescription | N | String | |||
| Material | M | String | |||
| MaterialDescription | N | String | |||
| ProductDescription | N | String | |||
| ProductGradeDescription | N | String | |||
| CustomerPurchaseOrderNumber | N | String | |||
| ReferenceItem | N | String | |||
| RequestedQuantity | The number or volume of materials specified for an item | N | String | ||
| RequestedQuantityISOUnit | N | String | |||
| PackagingQuantity | N | String | |||
| PackagingQuantityISOUnit | N | String | |||
| EngineeringChangeOrderIdentifier | N | String | |||
| BatchNumber | N | String | |||
| CountryOfOriginCode | N | String | |||
| IncotermsClassification | N | String | |||
| IncotermsLocation1 | N | String | |||
| TransportMethodCode | N | String | |||
| LineItemPurposeCode | N | String | |||
| BalanceItemFlag | N | String | |||
| DeliveryTolerancesLowerLimit | N | String | |||
| DeliveryTolerancesUpperLimit | N | String | |||
| DeliveryTolerancesUnitofMeasure | N | String | |||
| ItemShiptoPartnerName | N | String | |||
| ItemShipToPartnerCode | Y | String | |||
| ItemBilltoPartnerName | N | String | |||
| ItemBillToPartnerCode | N | String | |||
| ItemShipperPartnerName | N | String | |||
| ItemShipperPartnerCode | N | String | |||
| ItemShipFromPartnerName | N | String | |||
| ItemShipFromPartnerCode | N | String | |||
| ItemCarrierPartnerName | N | String | |||
| ItemCarrierPartnerCode | N | String | |||
| ItemShipToTelephoneNumberTelecomCountryCode | N | String | |||
| ItemShipToTelephoneNumberTelecomAreaCode | N | String | |||
| ItemShipToTelephoneNumberPhoneNumber | N | String | |||
| ItemShipToFaxNumberTelecomCountryCode | N | String | |||
| ItemShipToFaxNumberTelecomAreaCode | N | String | |||
| ItemShipToFaxNumberPhoneNumber | N | String | |||
| ItemShipToEmailAddress | N | String | |||
| ItemShipToAlternativeCommunicationMethod | N | String | |||
| ItemShipToAddressLine | N | String | |||
| ItemShipToCityName | N | String | |||
| ItemShipToStateProvince | N | String | |||
| ItemShipToPostalCode | N | String | |||
| ItemShipToPostalCountry | N | String | |||
| ItemShipToLocationCode | N | String | |||
| ItemShipToExternalReference | N | String | |||
| ItemShipToTaxIdentifierNumber | N | String | |||
| ItemShipToJurisdiction | N | String | |||
| ItemShipToTaxCertificateType | N | String | |||
| ItemShipToTaxCertificateNumber | N | String | |||
| ItemShipToTaxBasis | N | String | |||
| ItemShipToTaxRate | N | String | |||
| ItemShipToSenderURL | N | String | |||
| ItemBillToTelephoneNumberTelecomCountryCode | N | String | |||
| ItemBillToTelephoneNumberTelecomAreaCode | N | String | |||
| ItemBillToTelephoneNumberPhoneNumber | N | String | |||
| ItemBillToFaxNumberTelecomCountryCode | N | String | |||
| ItemBillToFaxNumberTelecomAreaCode | N | String | |||
| ItemBillToFaxNumberPhoneNumber | N | String | |||
| ItemBillToEmailAddress | N | String | |||
| ItemBillToAlternativeCommunicationMethod | N | String | |||
| ItemBillToAddressLine | N | String | |||
| ItemBillToCityName | N | String | |||
| ItemBillToStateProvince | N | String | |||
| ItemBillToPostalCode | N | String | |||
| ItemBillToPostalCountry | N | String | |||
| ItemBillToLocationCode | N | String | |||
| ItemBillToExternalReference | N | String | |||
| ItemBillToTaxIdentifierNumber | N | String | |||
| ItemBillToJurisdiction | N | String | |||
| ItemBillToTaxCertificateType | N | String | |||
| ItemBillToTaxCertificateNumber | N | String | |||
| ItemBillToTaxBasis | N | String | |||
| ItemBillToTaxRate | N | String | |||
| ItemBillToSenderURL | N | String | |||
| ItemShipFromTelephoneNumberTelecomCountryCode | N | String | |||
| ItemShipFromTelephoneNumberTelecomAreaCode | N | String | |||
| ItemShipFromTelephoneNumberPhoneNumber | N | String | |||
| ItemShipFromFaxNumberTelecomCountryCode | N | String | |||
| ItemShipFromFaxNumberTelecomAreaCode | N | String | |||
| ItemShipFromFaxNumberPhoneNumber | N | String | |||
| ItemShipFromEmailAddress | N | String | |||
| ItemShipFromAlternativeCommunicationMethod | N | String | |||
| ItemShipFromAddressLine | N | String | |||
| ItemShipFromCityName | N | String | |||
| ItemShipFromStateProvince | N | String | |||
| ItemShipFromPostalCode | N | String | |||
| ItemShipFromPostalCountry | N | String | |||
| ItemShipFromLocationCode | N | String | |||
| ItemShipFromExternalReference | N | String | |||
| ItemShipFromTaxIdentifierNumber | N | String | |||
| ItemShipFromJurisdiction | N | String | |||
| ItemShipFromTaxCertificateType | N | String | |||
| ItemShipFromTaxCertificateNumber | N | String | |||
| ItemShipFromTaxBasis | N | String | |||
| ItemShipFromTaxRate | N | String | |||
| ItemShipFromSenderURL | N | String | |||
| ItemCarrierTelephoneNumberTelecomCountryCode | N | String | |||
| ItemCarrierTelephoneNumberTelecomAreaCode | N | String | |||
| ItemCarrierTelephoneNumberPhoneNumber | N | String | |||
| ItemCarrierFaxNumberTelecomCountryCode | N | String | |||
| ItemCarrierFaxNumberTelecomAreaCode | N | String | |||
| ItemCarrierFaxNumberPhoneNumber | N | String | |||
| ItemCarrierEmailAddress | N | String | |||
| ItemCarrierAlternativeCommunicationMethod | N | String | |||
| ItemCarrierAddressLine | N | String | |||
| ItemCarrierCityName | N | String | |||
| ItemCarrierStateProvince | N | String | |||
| ItemCarrierPostalCode | N | String | |||
| ItemCarrierPostalCountry | N | String | |||
| ItemCarrierLocationCode | N | String | |||
| ItemCarrierExternalReference | N | String | |||
| ItemCarrierTaxIdentifierNumber | N | String | |||
| ItemCarrierJurisdiction | N | String | |||
| ItemCarrierTaxCertificateType | N | String | |||
| ItemCarrierTaxCertificateNumber | N | String | |||
| ItemCarrierTaxBasis | N | String | |||
| ItemCarrierTaxRate | N | String | |||
| ItemCarrierSenderURL | N | String | |||
| ItemShipperTelephoneNumberTelecomCountryCode | N | String | |||
| ItemShipperTelephoneNumberTelecomAreaCode | N | String | |||
| ItemShipperTelephoneNumberPhoneNumber | N | String | |||
| ItemShipperFaxNumberTelecomCountryCode | N | String | |||
| ItemShipperFaxNumberTelecomAreaCode | N | String | |||
| ItemShipperFaxNumberPhoneNumber | N | String | |||
| ItemShipperEmailAddress | N | String | |||
| ItemShipperAlternativeCommunicationMethod | N | String | |||
| ItemShipperAddressLine | N | String | |||
| ItemShipperCityName | N | String | |||
| ItemShipperStateProvince | N | String | |||
| ItemShipperPostalCode | N | String | |||
| ItemShipperPostalCountry | N | String | |||
| ItemShipperLocationCode | N | String | |||
| ItemShipperExternalReference | N | String | |||
| ItemShipperTaxIdentifierNumber | N | String | |||
| ItemShipperJurisdiction | N | String | |||
| ItemShipperTaxCertificateType | N | String | |||
| ItemShipperTaxCertificateNumber | N | String | |||
| ItemShipperTaxBasis | N | String | |||
| ItemShipperTaxRate | N | String | |||
| ItemShipperSenderURL | N | String | |||
| A_SalesOrderItemText | 1 to many | ||||
| CustomerRequiredInstructions | N | String | |||
| ShipperInstructions | N | String | |||
| ConsigneeInstructions | N | String | |||
| CarrierInstructions | N | String | |||
| ImportInstruction | N | String | |||
| CustomerServiceInstructions | N | String | |||
| RoutingInstruction | N | String | |||
| A_SalesOrderItemPrElement | 1 | ||||
| PricePerUnit | N | String | |||
| PriceCurrencyCode | N | String | ||
| PriceBasis | N | String | ||
| PriceBasisUnitofMeasure | N | String | ||
| A_SalesOrderScheduleLine | 1 |
| |||
ScheduleDateRequestedDeliveryOn | N | DateTime | |||
ScheduleDateConfirmedPickUpOn | N | DateTime |
Calculation and Validation
| Parent | Field | Rule Type | Rule Instruction |
|---|---|---|---|
OrderChange API vs Sales Order Comparison Fields
| Parent | Field | Sales Order Table | Sales Order Field | Activation Flag |
|---|---|---|---|---|
| A_SalesOrderHeader | ||||
| IncotermsClassification | VBKD-INCO1 | |||
| IncotermsLocation1 | VBKD-INCO2_L | |||
| CustomerPaymentTerms | VBKD-ZTERM | |||
| ShiptoPartnerName | VBPA-KUNNR where: VBPA-VBELN = Sales Order (see Sales Order Look Up using Purchase Order Number) | |||
| PayerPartnerCode | VBPA-KUNNR where: VBPA-VBELN = Sales Order (see Sales Order Look Up using Purchase Order Number) | |||
| BillToPartnerCode | VBPA-KUNNR where: VBPA-VBELN = Sales Order (see Sales Order Look Up using Purchase Order Number) | |||
| A_SalesOrderText | ||||
| CustomerRequiredInstructions | VBBK_Z004 | |||
| ShipperInstructions | VBBK_Z004 | |||
| ConsigneeInstructions | VBBK_Z004 | |||
| CarrierInstructions | VBBK_Z004 | |||
| ImportInstruction | VBBK_Z004 | |||
| CustomerServiceInstructions | VBBK_Z004 | |||
| RoutingInstruction | VBBK_Z002 | |||
| A_SalesOrderItem | ||||
| MaterialByCustomer | VBAP-KDMAT | |||
| Material | VBAP-MATNR | |||
| RequestedQuantity | VBAP-KWMENG | |||
| RequestedQuantityISOUnit | VBAP-VRKME | |||
| A_SalesOrderItemText | ||||
| CustomerRequiredInstructions | VBBP_Z004 | |||
| ShipperInstructions | VBBP_Z004 | |||
| ConsigneeInstructions | VBBP_Z004 | |||
| CarrierInstructions | VBBP_Z004 | |||
| ImportInstruction | VBBP_Z004 | |||
| CustomerServiceInstructions | VBBP_Z004 | |||
| RoutingInstruction | VBBP_Z002 | |||
| A_SalesOrderItemPrElement | ||||
| PricePerUnit | ||||
| PriceCurrencyCode | ||||
| PriceBasis | ||||
| PriceBasisUnitofMeasure | ||||
| A_SalesOrderScheduleLine | ||||
| ScheduleDateRequestedDeliveryOn | VBEP-EDATU where: VBEP-VBELN = VBAK-VBELN VBEP-POSNR = VBAP-POSNR |
eDocument mapping
| General | Syensqo XML (Intermediate Target) | SAP eDoc Standard Mapping (Source) | Custom Mapping (Source) | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| S-NR | Flow (SD/FI/MM/ALL) | Target Field | Target Field Details | Condition | Syensqo XML Node | Syensqo XML Field | SAP eDoc Standard Node | SAP eDoc Standard Field | Fixed Value | Custom Logic |
Processing Logic
Sales Order Look Up using Purchase Order Number
| Purchase Order Field in API structure | Logic to Fetch Sales Order |
|---|---|
| A_SalesOrderHeader_CustomerPurchaseOrder | Sales Order = VBAK-VBELN where VBAK-BSTNK = A_SalesOrderHeader_CustomerPurchaseOrder |
Logic to find CSR for a sales order
Read VBPA-PERNR where::
VBPA-VBELN = Sales order number
VBPA-PARVW = 'ER' for Employee Responsible (tbc exact code after configuration)
Anything else needed to be able to send notification to this user?
Delta or Full Load Requirements
Interface Alert & Monitoring
Language Requirements
User Interface Requirements
N/A
Sequencing
N/A
Volumetrics
Performance Consideration
Error Handling
Integration errors: Between Elemica and SAP CPI
S/4HANA Error during trigger of notification to CSR's fiori launchpad
- technical issue
- data issue eg CSR not found in Sales Order
S/4HANA Error during 'staging' and/or update of sales order data to customer Fiori Launchpad
Testing
How to Test
Test Conditions and Expected Results
| ID | Condition | Expected Results |
|---|---|---|
Test Considerations/Dependencies
Other Information
Development Details
Package
| Package Name | Parent Package |
|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|