SAP CPI Palette Operations Prepared by Vengal
SAP CPI Palette Operations Prepared by Vengal
1) Participants
2) Process
3) Events
4) Mapping
5) Transformation
6) Call
7) Routing
8) Security
9) Persistence
10) Validator
a) Sender: This is a participant element that models a remote system that sends messages
to your integration flow. You can use sender in scenarios where you need to receive
messages from different systems or services using different protocols or formats. You can
choose an adapter type for the sender based on the communication.
b) Receiver: This is a participant element that models a remote system that receives
messages from your integration flow. You can use receiver in scenarios where you need to
send messages to different systems or services using different protocols or formats. You
can choose an adapter type for the receiver based on the communication.
b) Integration Process:
This is the component that allows you to define the main process of your
integration flow, which contains the sender, receiver, and other flow elements. You
can use this component to orchestrate the message processing logic and call other
integration flows or local integration.
Using an Integration Process to define the main flow of your integration scenario
and call a local integration process or another integration flow using the Process
Direct adapter.
b) End Message:
This is the component that allows you to send a message to a receiver when an
integration process ends. You can use this component to communicate the
outcome of a process to another system.
Using an End Message event to wrap the exception in a fault message and send it
back to the sender in the payload.
f) Start Event:
This is the component that allows you to start an integration process or a local
integration process and may not have any incoming sequence flows. You can use
this component to indicate the initiation of a process.
Using a Start Event to start a local integration process that performs some error
handling logic and returns the control to the exception subprocess.
g) Start Message:
This is the component that allows you to receive a message from a sender when
an integration process starts. You can use this component to trigger a process
based on an incoming message.
Using a Start Message event to receive a message from an HTTP sender and trigger
the main integration flow.
h) Terminate Message:
This is the component that allows you to stop further processing of a message
within an integration flow. You can use this component to indicate that the
message has reached its final destination or does not match any processing
conditions.
Using a Terminate Message event to stop further processing of a message that
does not match any routing conditions in a content router.
i) Terminate Message:
This is the component that allows you to start an integration process or a local
integration process based on a time condition or interval. You can use this
component to schedule a process or poll data from systems at specified times.
Using a Timer event to start an integration flow that polls data from
SuccessFactors at regular intervals.
b) Message Mapping:
This is a type of mapping that transforms the structure and content of a
message from one format to another. For example, you can map an XML
message to a JSON message or vice versa. You can use message mapping in
scenarios where you need to convert the message format between different
systems or protocols. You can create message mappings using graphical, XSLT
or Groovy tools.
c) Operation Mapping:
This is a type of mapping that defines the relationship between the operations
of different interfaces. For example, you can map a request operation of one
interface to a response operation of another interface. You can use operation
mapping in scenarios where you need to orchestrate multiple interfaces or
services in a sequence or parallel manner. You can create operation mappings
using graphical, XSLT or Groovy tools.
d) XSLT Mapping:
This is a type of mapping that uses XSLT (Extensible Stylesheet Language
Transformations) to transform the structure and content of an XML message
from one format to another. For example, you can use XSLT to filter, sort,
aggregate or modify the elements and attributes of an XML message. You can
use XSLT mapping in scenarios where you need to apply complex
transformations or logic to an XML message. You can create XSLT mappings
using graphical or text-based tools.
4) Transformation: In Transformation Palette there are 8 Types.
a) Content Modifier
b) Converter
c) Decoder
d) EDI Extractor
e) Encoder
f) Filter
g) Message Digest
h) Script
a) Content Modifier:
The Content Modifier is used to modify the content of a message by adding,
updating, or deleting message headers, properties, or payload fields.
It allows for flexible manipulation of message data during runtime.
b) Converter:
The Converter element is used to convert data formats between different
representations, such as XML to JSON or JSON to XML.
It enables the transformation of message payloads to match the required
format for integration with different systems.
c) Decoder:
The Decoder component is used to decode or decrypt data that has been
encoded or encrypted using various algorithms or encoding schemes.
It is often used to retrieve and process encoded or encrypted message
payloads.
d) EDI Extractor:
The EDI Extractor is used specifically for extracting structured data from EDI
(Electronic Data Interchange) messages.
It enables the extraction and parsing of data from EDI messages, allowing for
further processing or mapping.
e) Encoder:
The Encoder element is used to encode or encrypt data using various
algorithms or encoding schemes.
It is commonly used to secure sensitive data or to transform data into a format
suitable for transmission or storage.
f) Filter:
The Filter component is used to evaluate conditions and selectively route or
process messages based on specified criteria.
It enables conditional routing or filtering of messages within an integration
flow.
g) Message Digest:
The Message Digest element calculates a cryptographic hash value or message
digest of a message payload.
It is commonly used for message integrity checks and to ensure data integrity
during message exchange.
h) Script:
The Script component allows the execution of custom scripts or code snippets
written in languages like JavaScript or Groovy.
It provides flexibility to perform complex data transformations or execute
custom business logic within integration flows.
a) External Call
b) Local Call
a) External Call:
These are calls that initiate an external communication with a receiver system or
service using an adapter. An external call can be either synchronous (request-
reply) or asynchronous (send). You can use external calls in scenarios where you
need to exchange data or messages with different systems or services using
different protocols or formats.
There are 4 types in External Call.
o Content Enricher
o Poll Enrich
o Request Reply
o Send
o Content Enricher:
This is a message transformation step that adds the content of a payload with the
original message in the course of an integration process. This converts the two
separate messages into a single enhanced payload. This feature enables you to
make external calls during an integration process to obtain additional data, if any.
You can choose between two aggregation strategies to enrich these two payloads
as a single message: Combine or Enrich.
o Poll Enrich:
This is a feature that allows you to poll files from a receiver system using the SFTP
adapter and aggregate them with the original message. This is useful when you
need to enrich the message with files that are not available at the time of sending
the message. You can use Poll Enrich in scenarios where you need to wait for files
to be generated or updated in the receiver system.
o Request Reply:
This is a process step that allows you to send a request message to a receiver
system and receive a reply message from it. This is useful when you need to
synchronize the communication between different systems or services. You can
use Request Reply in scenarios where you need to get a confirmation,
acknowledgment or response from the receiver system.
o Send:
This is a process step that allows you to send a message to one or more receiver
systems without expecting a reply. This is useful when you need to perform
asynchronous communication between different systems or services. You can use
Send in scenarios where you need to broadcast, distribute or publish a message
to the receiver systems.
o Process Call:
The Process Call element is used to invoke a separate process or sub-process
within an integration flow.
It enables modularization and reusability by dividing complex integration flows
into smaller, manageable processes.
It helps to improve maintainability, scalability, and reusability by encapsulating
specific functionality or logic in separate processes.
a) Aggregator
b) Gather
c) Join
d) Multicast
e) Router
f) Splitter
a) Aggregator:
a) This is a message routing step that combines multiple messages into a single
message based on a correlation condition. You can use aggregator in scenarios
where you need to collect and merge messages that belong to the same logical
group or sequence.
b) Gather:
This is a message routing step that merges messages from different routes into a
single message with the option to define certain strategies on how to combine the
initial messages. You can use gather in scenarios where you need to consolidate
messages that are split or multicast in the integration flow.
c) Join:
This is a message routing step that brings together messages from different routes
without affecting the content of the messages. You use join in combination with
gather to synchronize the messages from on Process different routes before
combining them into a single message. You can use join in scenarios where you
need to wait for all the messages from different routes to arrive before merging
them.
d) Multitask:
This is a message routing step that sends a copy of the same message to multiple
routes. You can use multicast in scenarios where you need to distribute or
broadcast the same message to different systems or services.
There are two types are Multitask.
o Parallel Multicast
o Sequential Multicast
o Parallel Multicast:
This is a message routing step that sends a copy of the same message
to multiple routes at the same time. You can use parallel multicast in
scenarios where you need to perform multiple operations on the
same message in parallel or where the order of execution is not
important.
o Sequential Multicast:
This is a message routing step that sends a copy of the same message
to multiple routes in a specified order. You can use sequential
multicast in scenarios where you need to perform multiple operations
on the same message in sequence or where the order of execution is
important.
e) Router:
This is a message routing step that sends a message to one of the possible routes
based on a condition. You can use router in scenarios where you need to route the
message to different systems or services based on some criteria or logic.
f) Splitter:
This is a message routing step that splits a message into multiple messages based on
a condition. You can use splitter in scenarios where you need to process each part of
the message separately or in parallel.
There are 7 types of Splitters.
o EDI Splitter
o General Splitter
o IDoc Splitter
o Iterating Splitter
o PKCS#7/CMS Splitter
o Tar Splitter
o Zip Splitter
o EDI Splitter:
The EDI Splitter is specifically designed to split EDI (Electronic Data
Interchange) messages into individual segments or transactions.
It allows for the extraction and processing of individual segments or
transactions within EDI messages.
o General Splitter:
The General Splitter is a versatile component used to split messages
based on a specified delimiter or criteria.
It enables the splitting of messages into multiple parts or segments
based on the defined rules or conditions.
o IDoc Splitter:
The IDoc Splitter is used to split SAP IDoc (Intermediate Document)
messages into individual segments or sub-documents.
It allows for the separation and processing of individual segments or
sub-documents within IDoc messages.
o Iterating Splitter:
The Iterating Splitter is used to split a message into multiple parts
based on an iterative process or loop.
It enables the repeated execution of a specific process or sub-flow for
each item or record in the input message.
o PKCS#7/CMS Splitter:
The PKCS#7/CMS Splitter is used specifically for splitting PKCS#7 or
CMS (Cryptographic Message Syntax) formatted messages.
It allows for the extraction and processing of individual components
or parts within PKCS#7 or CMS messages.
o Tar Splitter:
The Tar Splitter is used to split TAR archive files into individual files or
segments.
It enables the extraction and processing of individual files or segments
within TAR archive files.
o Zip Splitter:
The Zip Splitter is used to split ZIP archive files into individual files or
segments.
It allows for the extraction and processing of individual files or
segments within ZIP archive files.
8) Security: In Routing there are 4 types.
a) Decryptor
b) Encryptor
c) Signer
d) Verifier
a) Decryptor:
This is a message transformation step that decrypts a message using a
private key that is deployed on the tenant. You can use decryptor in
scenarios where you need to secure the communication with a participant
on the cloud using encryption standards such as PGP or PKCS#7/CMS.
There are 2 Types.
PGP Decryptor
PKCS7 Decryptor
PGP Decryptor:
The PGP (Pretty Good Privacy) Decryptor is used to decrypt or
decode data that has been encrypted using the PGP encryption
standard.
It enables the decryption of PGP-encrypted messages or files,
allowing for the retrieval of the original plaintext data.
PKCS7 Decryptor:
The PKCS7 (Public-Key Cryptography Standards #7) Decryptor is
used to decrypt or decode data that has been encrypted using the
PKCS7 encryption standard.
It allows for the decryption of PKCS7-encrypted messages or files,
enabling the extraction of the original plaintext data.
b) Encryptor:
This is a message transformation step that encrypts a message using a
public key that is deployed on the tenant. You can use decryptor in
scenarios where you need to secure the communication with a participant
on the cloud using encryption standards such as PGP or PKCS#7/CMS.
There are 2 Types.
PGP Encryptor
PKCS7 Encryptor
PGP Encryptor:
This is a message transformation step that encrypts a message
using a public key that is deployed on the tenant. The public key
is based on the PGP (Pretty Good Privacy) standard, which is a
widely used method for encrypting and signing data. You can use
PGP encryptor in scenarios where you need to secure the
communication with a participant on the cloud using PGP
encryption. It enables the decryption of PGP-encrypted messages
or files, allowing for the retrieval of the original plaintext data.
PKCS7 Encryptor:
This is a message transformation step that encrypts a message
using a public key that is deployed on the tenant. The public key
is based on the PKCS#7/CMS (Cryptographic Message Syntax)
standard, which is a newer version of the PKCS#7 standard for
encrypting and signing data. You can use PKCS7 encryptor in
scenarios where you need to secure the communication with a
participant on the cloud using PKCS#7/CMS encryption.
c) Signer:
This is a message transformation step that signs a message using a private
key that is deployed on the tenant. You can use signer in scenarios where
you need to ensure the authenticity and integrity of the message using
digital signature standards such as PGP or PKCS#7/CMS.
There are 3 Types.
PKCS Signer
Simple Signer
XML Digital Signer
PKCS Signer:
This is a message transformation step that signs a Process
message using a private key that is deployed on the tenant. The
private key is based on the PKCS#7/CMS (Cryptographic Message
Syntax) standard, which is a newer version of the PKCS#7 standard
for encrypting and signing data. You can use PKCS7 signer in
scenarios where you need to ensure the authenticity and integrity
of the message using PKCS#7/CMS digital signature.
Simple Signer:
This is a message transformation step that signs a message using
a private key that is deployed on the tenant. The private key is
based on the XML Signature standard, which is a method for
signing XML documents or parts of XML documents. You can use
simple signer in scenarios where you need to ensure the
authenticity and integrity of the message using XML digital
signature.
XML Digital Signer:
This is a message transformation step that signs an XML element
or attribute using a private key that is deployed on the tenant. The
private key is based on the XML Signature standard, which is a
method for signing XML documents or parts of XML documents.
You can use XML digital signer in scenarios where you need to sign
a specific element or attribute with in a XML document.
d) Verify:
This is a message transformation step that verifies the signature of a
message using a public key that is deployed on the tenant. You can use
verifier in scenarios where you need to check the authenticity and
integrity of the message using digital signature standards such as PGP or
PKCS#7/CMS.
There are 2 Types.
PKCS7 Signature Verifier
XML Signature Verifier
PKCS7 Signature Verifier:
The PKCS7 Signature Verifier is used to verify the digital signature
of data that has been signed using the PKCS7 standard.
It checks the integrity and authenticity of the signed data by
validating the digital signature against the corresponding public
key and certificate.
XML Signature Verifier:
The XML Signature Verifier is used to verify the digital signature
of XML messages that have been signed using XML Signature
standards.
It validates the integrity and authenticity of the signed XML
messages by verifying the digital signature against the
corresponding public key and certificate.
9) Persistence:
In SAP CPI (Cloud Platform Integration), if you need to store integration flow data within
the SAP tenant and reuse it in other integration flows.
For Ex: When moving data from on-premise to cloud and you need to perform ATL
operations, the Persistence feature in SAP CPI can play a crucial role.
Note: When you are using this Persistence functions. You can use these functions in same
tenant.
In persistence there are three types.
b) Persist:
The Persist feature in SAP CPI's Data Store is particularly useful
when you need to:
Store integration flow-related payloads.
Retrieve those payloads in a different integration flow for further
processing.
c) Write Variables:
By using Write variables, in data store, we can store integration
flow related variables.
a) EDI Validator
b) XML Validator
a) EDI Validator:
The EDI Validator component is used to validate the structure, syntax, and
compliance of EDI messages.
It ensures that the EDI messages adhere to the specific EDI standards (such as
EDIFACT or ANSI X12) and that they conform to the expected format and rules.
b) XML Validator:
The XML Validator component is used to validate the structure and integrity
of XML messages.
It checks whether the XML messages conform to the defined XML schema or
DTD (Document Type Definition) and that they meet the required XML syntax.