SAP Cloud Platform provides a unique methodology to create a seamless, completely automated system with regards to supply chain management. In fact, one of the most important selling points for clients looking at SAP products as a solution for their businesses is the level of integration SAP products allow between the individual suites. In this example, we will be looking at a theoretical method of creating a seamless system that integrates a number of different SAP component pieces together to create a system that relies on user input only from the customer.
The Test Case Problem
In this test case, our theoretical company, International Compressors Incorporated produces compressors for use across the world. Recent reports coming into the company has stated that a few of the compressors manufactured by the company are showing up as faulty when they were installed into the client machinery. What our theoretical compressor company wants to do is to employ a coolant system that stops these compressors from overheating. The company also wants to simplify its process so that no human interaction is required to process purchase orders for clients.
Automation as a Solution
In order to solve this problem, the easiest method would be to integrate a smart sensor into the compressors themselves. This sensor, outfitted with an IoT framework device, can then read the temperature data and analyze it, determine if any inconsistencies are present, contact the SAP database to verify the warranty information, see if a warranty exists for the device and then take actions based on whether that warranty exists or not. In the event of a warranty being present, no further action is needed by the client and a new compressor is shipped out to replace the faulty one without the client company being affected in any way. If a warranty is not present, the client needs to confirm that they want the compressor shipped to them since an additional cost would be incurred. In either case a purchase order would be generated, but when a warranty is present and payment is required, it would be shipped with the new compressor.
Integrating SAP into the Solution Architecture
Looking at the basic overall flow of the solution it is immediately clear where SAP can be integrated into this system and how it can be applied to do the required tasks. The sensor data can be read and processed with the aid of the SAP Cloud Platform Internet of Things module. The entire processing of the temperature setting of the sensor and if it exceeds operating parameters, along with the verification of the warranty data can be done using SAP Cloud Platform Integration. By establishing a workflow using SAP Cloud Platform Workflow, we can automate the production of purchase orders by utilizing SAP Cloud Platform Business Rules, which will also determine the necessity of a confirmation from the client with the help of a decision table. This can be useful for eCommerce and online retailers who use ProductExpert to promote their products.
Automation Step 1: Data Acquisition through SAP Cloud Platform IoT Service
The SAP Cloud Platform Internet of Things allows a program to read and process data from any IoT device. Using the API in collaboration with an appropriate system development kit (SDK), we will be reading information continuously from the IoT device as JSON data which we can process.
Automation Step 2: Configuring Data Fetching from the Back-End System
This is the meat of our system as it will be doing the majority of our processing for us. Initially, it will fetch the temperature data from our IoT device. This can be requested via an API call to this address:
From there, we will analyze the temperature data to see that no anomalies are detected through the execution of an Apache Groovy script. If any problems are flagged, we move onto the next step, which is warranty details. To do this is a simple matter of using a web services call to connect the SAP Cloud Platform integration to the product details table and retrieve the requisite information. Using a SAP Cloud Connector, we make a call to the back-end which then creates a virtual host with the requested endpoints present. The warranty data is retrieved and converted to JSON format (since the workflow portion of our program requires a JSON payload to use) and then we trigger the workflow for the Purchase Order process.
Automation Step 3: Cloud Platform Workflow Trigger
The first thing the SAP Cloud Platform Workflow will deal with is determining if an approval requirement is necessary. in the last section we retrieved a JSON payload from the back-end machine that we will now use as the basis for our Workflow’s decision-making process. For us to use this incoming data, we must first set up a Business Rule. This rule can be set up under Destinations, as an HTTP RULES_SERVICE. The configuration of the fields should be as follows:
Name: This can be anything and will be used in future to connect to the Rule
Type: HTTP, LDAP, MAIL and RFC are the available types. We will be using HTTP.
URL: The URL that will be connected through this destination.
Proxy Type: Internet/On Premise. Our case will be using Internet.
Authentication: Basic Authentication (username & password).
Path: The API path needed to execute the Rule. The syntax is:
/rules-service/rest/v1/rule-services/java/<business_Rule project>/<business_Rule service name>
Path to XSRF Token: We need an XSRF token before we trigger the Workflow system. This will hold the API path for our XSRF token along the general syntax of: /rules-service/v1/rules/xsrf-token
Request variable is like a passing variable that is used to hold the data going into the rule and the result coming out of it.
From here we will execute the process for approving the purchase order if no warranty is present. For the Get Approval User Task:
Recipients: The user or users that will have to take action once the task if approved.
User Interface: When My inbox is used, the information here can be used to configure its instance.
HTML5 App Name: The Cloud Platform Application that is deployed.
Component URL: The module (HTML5) in the SAPUI5 project
SAPUI5 Component: The component (SAPUI5) in SAPUI5 project.
The Service Task Configuration for a purchase order generation comes next:
Destination: The SAP Cloud Platform cockpit will be used to deploy the destination. It includes the URL for accessing the system and user details to access the vendor system.
Path: The system location where the vendor information should be generated to.
HTTP Method: POST (since we are intending to put data into the system similar to sending a form).
Path to XSRF Token: The XSRF token location if one is needed for POSTing to the vendor system.
Automation Step 4: Cloud Platform Business Rules and Mail Integration
In the Cloud Platform Rules section our main concern will be the decision tables. These tables will provide handling for the outcomes of our decisions made in our rule processing and can be found under the Rule Services tab in the SAP Cloud Platform Business Rules. In this case our rules will handle whether a warranty is present or not and follow up by asking the client to confirm the purchase order before we create it. We can take the JSON data payload sent to the system from our query to the back end (Step 2 above) and extract the information required to automatically compose and fire off an email to the client as required. This doesn’t involve anything more complex than a JSON to XML converter which can then be imported into any standard email program (Outlook or Thunderbird) and sent off to the client.
Speeding up Response Times
Automation helps a company deal with situations in a timely manner and sets the company up to be able to react to negative situations with a unique speed that manual interface doesn’t allow. In addition to this, the SAP Cloud Platform system allows a whole new level of automatic integration with the inclusion of the Internet of Things service. From the above it can be seen that the IoT service is instrumental in providing up-to-the-minute data on a particular component which can then be used to automatically drive decisions that can increase operating efficiency of a company without the need for more overhead.