SAP Integration Suite Setup (Write Anything to Pricefx Table)
Prepare Environment
Prepare SAP BTP and Integration Suite development environment. See SAP BTP and Integration Suite.
Prepare your own integration flows to get the data from incoming data source.
Install Pricefx integration adapter for SAP Integration Suite. See Required Integration Adapters.
Configure and deploy integration flows for Pricefx authentication. See Pricefx Authentication.
Test connection to Pricefx. See Test connection to Pricefx.
Install the “Sample Artifacts for SAP S/4HANA Integration with Pricefx” package.
Build Customized Integration Flows
Duplicate https://pricefx.atlassian.net/wiki/spaces/ACCDEV/pages/4322918401/Sample+Integration+Flows#Write-Records-to-Pricefx to any of your packages.
Edit this new integration flow. Set target=Price Parameter in the Pricefx integration adapter configuration.
Add the target date configurable parameter.
Configure this new integration flow. The message mappings are the mappings that are going to be created in the next section. You can define the message mapping IDs first. Make sure these message mapping IDs are the same as the mappings created in the next section.
Deploy this flow.
In the integration flow that you would like to write data to Pricefx, set the process direct path to this integration flow. Make sure the incoming data format is XML. In this example, the incoming message is a JSON, it is then converted to XML before calling the integration flow to write to Pricefx.
Deploy the flow.
Build Customized Message Mappings
Go to Discover (Integrations). Search for “SAP S/4HANA Product Master Mapping with Pricefx”.
Open the mapping and download flatten records XSD schema.
Go to the “Sample Artifacts for SAP S/4HANA Integration with Pricefx” package. Download “Pricefx to SAP S/4HANA Schemas” package.
Expand the package and get simplePP.json.
Add a message mapping for flattening the upsert message.
Upload the XSD schema downloaded in Step 2. Set it to target message. Set simplePP.json to source message. This is to map the structured put request to an array of strings for Pricefx data load API.
In this example, the Price Parameter table has only a name and value in the schema. Duplicate once the “value” subtree in the target message and map a value to the new subtree. MapWithDefault is required here as Pricefx load data API needs to match the header number to the number of data fields. If any data is missing in a line, it will return error.
Deploy the mapping.
Add a message mapping for creating a message to upsert records to the Price Parameter from your XML message. Set simplePP.json from Step 3 to target message and the XSD of your message to source message. Map the necessary fields.
Deploy the mapping.