In this post, we will explore SAP Cloud Platform Integration (CPI) Part 12 – Palette Functions 6 and delve into the standard range capabilities on data store persistence and the security features available in CPI.
Outline of this blog series: SAP Cloud Platform Integration (CPI) Part 12 – Palette functions 6
1. SAP CPI Introduction
2. SAP BTP tools and features overview (BTP, Global Account, Sub-Account, Entitlements, Connectivity, Security)
3. SAP CPI Web IDE overview
4. Registering a trial account and enrolling to SAP CPI service
5. Deep dive into Cloud Integration features with real world scenario example
6. Use cases of palette functions
7. Adapter configurations
8. Using Cloud connector for connecting to backend SAP systems
9. Overview on API Management & Open Connectors
10. Integration using Open Connectors with real world example
In short, below is the content we will elaborate in this tutorial:
1. Persisting Message
2. Data Store operations – Get / Write / Select / Delete
3. Write variables
4. Security Elements – PGP encryptor/decryptor/Simple Signer
Today we will see about standard SAP offered range capabilities in CPI. In the past several posts, we covered all the range capabilities with the exception of information store and security highlights given by SAP.
1. Persisting Message
Store a message with the goal that you can get to the put away message and examine it at later point.
In a mix Stream anytime, you can add the continue range capability to store the message. The message stockpiling highlight is valuable for inspecting. This part stores information on your occupant. Note that there is a general circle space breaking point of 32 GB.
In any case, the constraint is, not normal for information store tasks, you will not have the option to see the persevered messages through any GUI. All things considered, you need to utilize the Cloud Joining OData Programming interface to get to the continued messages. Furthermore, there is no element like, getting to the items in the endured in the middle of between the execution of the joining stream. It ought to be after the execution of the joining stream.
You want to do odata programming interface call to get to the continued information in the beneath URL design.
https:///programming interface/v1/MessageProcessingLogs(”)/MessageStoreEntries
Properties:
Give an exceptional Step ID. This step ID will be coming as MessageStoreId in the odata programming interface reaction. You have a choice to encode the put away message.
2. Data Store Operations
You could run over a circumstance where a message payload of one connection point after fruitful handling is expected to be reused in a similar connection point or some other point of interaction. To deal with such necessities, SAP CPI has presented new component ‘DataStoreOperations’ under which different controls can be utilized in the iflows for putting away/perusing/erasing the message payload of a connection point.
DataStore – Compose:
We should start with compose activity:
I have constructed a straightforward iflow where we have a HTTPS source with XML body and passed to a substance modifier which simply catches the payload body and disregards it to subsequent stage. Then we have the Compose range capability.
Datastore name – Name of the datastore. You can likewise powerfully characterize the information store name by getting the header or property estimation, ${header.headername} or ${property.propertyname}. Max length is 40chars.
Section ID – Determine a passage ID that is put away along with the message content. Max length 255 characters.
Perceivability – to get to it from another IFlow, then keep it as Worldwide or, more than likely Incorporation Stream.
Maintenance edge for cautioning – 2 days, following 2 days, framework will toss an alarm.
Termination Period – 30 days, after which framework eliminates the section from the information store.
Scramble Put away message – encode the put away happy.
Overwrite existing message – In the event that you are sending same information store name, at each season of the stream execution, the message content will be overwritten.
Incorporate message headers – If you have any desire to save the message headers as well.
—-
Presently setting off a message from Mailman to check whether its effectively getting added to datastore.
Once triggered with some random payload, go to home screen -> Manage Datastore.
You can see the 2 days due in section Due At and lapse in segment Hold Until. Regardless of whether you retrigger on different occasions with a similar payload, framework won’t toss any blunder, since we have empowered “Overwrite existing messages”.
DataStore – Get:
Datastore name – Name of the datastore which you need to get.
Passage ID – Name of the section ID which relates to the information store name.
Perceivability – Whether you need to look through inside the joining stream or quest for the information store messages worldwide.
Erase on Fulfillment – On the off chance that it must be erased, empower “erase on culmination”.
Toss Exemption on missing passage – In the event that no records found, special case ought to be tossed assuming this choice is empowered.
DataStore – Select:
The distinction among Read and Select :
In the event that there are numerous information store messages and you need to get every one of the messages which is having a specific information store name, then SELECT can be utilized. If you have any desire to bring a specific record with mix of information store name and passage ID.
In select activity, we will not be giving Passage ID.
Prior to utilizing select, how about we make various information store messages by having one normal information store name and 3 unique passage IDs.
Presently how about we bring all the section IDs which is having one normal information store name.
After testing, you can see every one of the three messages are recovered.
DataStore – Delete:
It is for erasing information store passages. Yet, on the off chance that there are numerous passage IDs as in our model, we really want to make reference to the Section ID alongside the datastore name.
3. Write Variables
Factors are ordinarily having a similar importance, where we can store information inside it and can change it whenever. You characterize factors to share information across various mix streams. When you compose the variable to the variable store and set apart as Worldwide, then it very well may be gotten to from other IFlows.
You utilize the Compose Factors step type to make a variable at one point inside the message handling succession. To consume the variable (either in one more step of a similar joining stream or in another combination stream), you can utilize a Substance Modifier. With this step, you can set a header, or a Trade property in light of a variable. In my model, I will utilize the substance modifier close to the compose variable step.
Ready to remove the variable by making a property with source type as Worldwide Variable and Source Worth as factor name.
Pass this variable name to message body of the substance modifier to show it in the result.
4. Security Elements
With respect to components I will not have the option to make sense of a lot however I can show you one such security highlight which I carried out in my undertaking.
The point of interaction working is like, we really want to scramble the information that we are shipping off recipient SFTP through PGP key given by the outsider. The PGP key which we get from outsider (*.asc) should be transferred in CI occupant – > Oversee PGP keys – > Add Public keys.
This client ID ought to be referenced in PGP encryptor capability. Rest all properties are default settings, don’t bother transforming it except if required.
Simple Signer:
Straightforward Underwriter used to sign messages to guarantee realness and information honesty while making an impression on members on the cloud. You work with the Straightforward Endorser to spread the word about the personality of the source for the beneficiary or collectors and hence guarantee the validness of the messages. This marking will occur with a confidential key utilizing a mark calculation. This private key is transferred in Oversee keystore segment and the nom de plume is referenced here.
Like this, SAP has provided many security features:
Decryptor – PGP decryptor / PKCS7 Decryptor
Encryptor – PGP encryptor / PKCS7 encryptor
Signer – PKCS7 Signer / Simple Signer / XML Digital Signer
Verifier – PKCS7 Signature Verifier / XML Signature Verifier
Go ahead and go through the SAP documentation. Blissful learning !!
YOU MAY BE INTERESTED IN
Fiori App – An Introduction from an ABAPer
Tips for Building Custom SAP Applications: A Comprehensive Guide
Steampunk Chronicles: Navigating the Cloud with SAP BTP ABAP Environment