SAP NetWeaver ABAP-based systems supports IDocs framework that powers master and transactional data distributions across SAP and non-SAP systems.
The following architecture diagram shows the workflow for integrating IDocs with Amazon S3, which incorporates basic authentication.
➡️ Master data integration: If a customers SAP application is the source of truth for all your master data like material master and customer master, and you’re integrating this master data with non-SAP applications and other software as a solution (SaaS) offerings.
You can set up Application Link Enabling in SAP, and extract the master data from SAP as IDocs for storing in Amazon S3.
Once the data lands in Amazon S3, you can integrate the master data with other applications, or use the data in your data lake solutions. For a list of all master data objects supported by ALE, see Distributable Master Data Objects
For simplicity we recommend to use AWS Cloud9. You can also use your preferred IDE or local terminal as well (Mac, Windows or Linux).
$ git clone https://github.com/aws-samples/aws-cloudformation-apigw-sap-idocs.git
$ cd aws-cloudformation-apigw-sap-idocs
$ chmod +x build.sh $ ./build.sh
$ cd build
• (Mandatory) S3BucketForArtifacts – Where all the artifacts required by the CloudFormation template will be stored
-> Make sure to choose a unique id e.g. append account number
• (Optional) S3BucketForIdoc – Where all the post data from SAP will be stored
• (Optional) USERNAME – The Amazon Cognito user name
• (Optional) EMAILID – The email ID attached to the Amazon Cognito user name
Make sure to save the file!
$ chmod +x deploystack.sh $ ./deploystack.sh
When prompted for a password, choose Initpass1.
The script performs the following actions:
Creates an S3 bucket in your AWS account (per the name specified for variable S3BucketForArtifacts in the deploystack.sh file)
Uploads all the required files to the S3 bucket
Deploys the CloudFormation template in your account
Once all the resources are created, creates an Amazon Cognito user (per the value provided for variable USERNAME in the deploystack.sh file)
Sets its password (per the value that you provide when you run the script)
➡️ For more information about the created resources, see the “CloudFormation resources” section in this blog.
In case of deployment errors, please verify if you have chosen a unqiue name for S3BucketForArtifacts and have saved the deploystack.sh file. You might also need to reset the deployment in case of a previous failure by executing
aws cloudformation delete-stack --stack-name apigwsapidocadapter