Data Store1
Data Store1
HTTP adaptor vs odata adaptor (by default it will write query) but in HTTP we need to write the
query manually
Exception handling
Externalize parameters
Multi cast sequential and parallel
Splitter and Gather
Please differentiate Poll enricher and Content Enricher...
Process Direct
Value Mapping vs Fixed Values
Using OData adaptor we are calling OData service
XSD Vs XML :XSD will be holding the element values at runtime. Schema Definiton –
Mandatory.. optional elements.. occurance of an element(Min Max ) ..data type of an element
Value Mapping in sap cpi is a method used to maintain a relationship between different values
representing the same data objects across various systems ..technically it acts as a birectional lookup
table allowing for consistent data transformation during integration process
Value Mapping is used when there is a need for data consistency and integrity across different systems it
is particulary useful in scenarios where data needs to be adapted to specific business rules or when
dealing with large data sets
Graphical Mapping
Import from CSV file
Using API
Examples of value Mapping Sceanrios:
Fixed Value Mapping: Fixed Value is very useful when you have lots of conditions coming in one source
fields during mapping, then to avoid the IfThenElse or UDF we go for Fixed Value mapping.
Example: if your source field contains 01 or 02 or 03 or.....12 and you want the result as JAN or FEB or
MAR or ......... DEC.
Advantage: Using fixed value table you can see the result immediately in the mapping.
Disadvantage: If you have used the same fixed value mapping at several places in you mapping then in
case of any change in fixed values you have to make the changes at several places. So in short fixed
value mapping is not good from the maintenance point of view.
Value Mapping: Value Mapping also works in the same way as fixed value mapping, only the thing is you
will get the result at run time only. And you have to define the value mapping in Integration directory.
Advantage: If you have used the same value mapping at several places in you mapping then in case of
any changes in values you don't have to make the changes in you mapping, just make the changes in in
value mapping in Integration Directory, that's it.
Scenarios:
JDBC TO SFTP
SFTP TO JDBC
ODATA TO SFTP
IDOC TO REST API
Manual and Scheduler Runs in Single iFlow
Poll enrich to pull the file from SFTP server using SFTP adapter Content Enricher to enrich the XML
data from Odata service using Odata/SF adapter
In real time also we cant Poll more than one file using Poll Enricher in Single run...... Poll enrich will pull
only one file real time too
how can we get messages from discarded status to completed status... Based on Worker Node
instances, Discarded messages will be generated
to pick files from 10 different directories of single sftp server using sftp adapter-u have to use multiple
"poll enrich" functions to pull data from multiple folders
Manual and Schedule run in one iflow :
We are pulling the data from OData service via OData adaptor and pushing it to SFTP server
Creation of a variable
In our IFlow, we have to include a ‘Write Variables’ shape to do this. Using simple camel expression as
shown below, we can store values in variables. Please note that we did not need to create a Variable by
going into Operations view first.
As we had discussed earlier, we may wish to store this value only for a particular path of execution
among many. In that case, we can place this shape in only that path.
To read the values stored in variables, all we need to do is reference the variables as shown below. This
can be done in Message Exchange Properties as well.
Number Ranges
Now we are going to hop on to the next topic: Number Ranges. We already know it’s a mode of data
persistence, but what exactly does it do and what makes it different?
Number ranges act as sequences which can be used for marking messages, among other applications.
Suppose that in a particular integration scenario, all messages to the destination system must have a
unique sequence number. This is where a number range can be of use.
Yes, but remember that whenever they are referenced during an execution, the value is incremented by
1. If you are using the same number range for multiple integration flows, it can lead to confusion over
apparently skipped values. Moreover, if the destination systems are expecting a continuous sequence, it
will be problematic to use the same number range in multiple integration Flows.
Can the same number range be referenced at multiple places in the same IFlow?
Yes, this can be done as well. But we can expect skipped values as a result. For example, if a number
range is referenced twice during an execution, the value of that number range will be incremented by 2.
Keeping this in consideration, the same number range be referenced multiple times and even used to
create increments/steps of n instead of just 1.
We can manually set the next value of a number range to some specific value. Although this is not
usually encouraged, under some rare circumstances this may be warranted. This can be achieved by
Editing the Number range under Operations view->Number Ranges.