Preparing for an SAP integration interview? Here are 50 questions and answers on SAP Cloud Integration (formerly SAP CPI / Cloud Platform Integration), grouped from basic to advanced. Bookmark it and revise before your next interview.
Basic SAP Cloud Integration Questions
1. What is SAP CPI?
SAP CPI is the common name for SAP Cloud Integration, the core integration capability of SAP Integration Suite. It connects cloud and on-premise applications, SAP and non-SAP, with data transformation, routing and security built in.
2. Which integration patterns does it support?
Content-Based Routing, Splitter/Aggregator, Content Enricher, Publish-Subscribe, request-reply, orchestration and more. Message mapping is a transformation technique rather than a pattern. For example, Content-Based Routing sends a message to different receivers depending on its content.
3. What are adapters?
Adapters connect an iFlow to external systems over a specific protocol or technology, such as HTTP, SOAP, SFTP, IDoc, OData (V2/V4), Mail, JDBC, AS2/AS4, AMQP, Kafka and SuccessFactors. They handle protocol and format differences so the iFlow focuses on business logic.
4. What are the basic components of an iFlow?
A sender (channel and adapter), a receiver (channel and adapter), and processing steps in between: mappings, Content Modifier, routers, scripts and so on.
5. Which protocols are supported?
HTTP/HTTPS, SOAP, REST/OData, SFTP/FTP, AMQP, JMS, Kafka, Mail (SMTP/IMAP/POP3), AS2/AS4, RFC and more, depending on the adapter. Note that WebSocket is available through the dedicated adapter, not as a generic transport.
6. What is an iFlow?
An integration flow is the main design-time artifact. It defines how a message travels from sender to receiver and how it is processed on the way, modelled visually in BPMN-style notation in the web designer.
7. What is Message Mapping?
A graphical mapping tool that converts a source structure to a target structure using functions such as field mapping, value mapping and custom functions. Use it for most structure-to-structure transformations.
8. What does the Content Modifier do?
It sets or changes message headers, exchange properties and the message body. Typical uses are setting a routing header, storing a value for later use or building a request payload.
9. What is the Data Store?
A tenant-level persistence area where messages can be written, read, selected or deleted using Data Store Operations. It is used for retries, async decoupling and de-duplication. Entries have a retention period, so it is not permanent storage.
10. Which message exchange patterns are supported?
Synchronous (request-reply, the caller waits for the response) and asynchronous (fire-and-forget, with delivery often guaranteed via JMS or the Data Store).
11. What is an Exception Subprocess?
A subprocess inside an iFlow or local integration process that runs when an error occurs. You can use it to log, send an alert email, store the failed payload or return a custom error response.
12. What is a Timer (Start) event?
A start event that triggers the iFlow once or on a schedule (every n seconds, daily, weekly, cron-style). It is used for batch jobs and scheduled data sync.
13. What are Security Artifacts?
Deployable artifacts that hold credentials and keys: User Credentials, OAuth2 Credentials, Secure Parameters, Keystore entries (certificates and keys), PGP keyrings and known hosts for SFTP.
14. Which transformation techniques are available?
Graphical Message Mapping, XSLT mapping, Groovy and JavaScript scripting, and converters such as JSON-to-XML, CSV-to-XML and EDI converters. Choose the simplest tool that meets the need.
15. What is a Splitter?
A step that breaks one message into several, for example per order line. Variants include General, Iterating and EDI splitters. It lets large bulk payloads be processed in manageable pieces.
16. What is an Aggregator?
A step that combines several related messages into one based on a correlation expression and a completion condition. It is stateful and works across messages.
Intermediate SAP Cloud Integration Questions
17. Why is Groovy scripting used?
For logic that standard steps cannot do: complex parsing, dynamic routing values, custom logging and calls to the Script API (message body, headers, properties). Keep scripts small and testable.
18. How is exception handling implemented?
Through Exception Subprocesses, Groovy try/catch blocks, custom error responses and alerting. Combine these with retry settings on the sender side and the Message Monitor.
19. What is the JMS adapter used for?
For reliable asynchronous messaging using queues in the tenant's built-in messaging service. It decouples sender and receiver, supports retries and dead-letter handling. It requires the appropriate license and messaging provisioning, and queue limits apply.
20. How is message persistence handled?
Mainly with JMS queues (preferred for reliable async delivery) and the Data Store or Write Variables for state. Enable retry and persistence so messages survive runtime errors and restarts.
21. What is the ProcessDirect adapter?
An adapter for direct, in-memory calls between iFlows on the same tenant. It enables reusable, modular iFlows without going through an external HTTP call.
22. What is Principal Propagation?
Passing the identity of the original user through to the backend system, so authorizations are checked for that user. In SAP scenarios it is commonly used with SAP Cloud Connector for on-premise targets.
23. How is OAuth2 implemented?
Configure OAuth2 credentials (client credentials, authorization code, SAML bearer and others) as a security artifact. The adapter obtains and caches access tokens automatically.
24. How is data encrypted?
In transit using HTTPS/TLS with certificates in the Keystore. For payloads, use the PKCS#7/CMS or PGP Encryptor steps (and the matching Decryptor steps), plus digital signatures where required.
25. How do you test connectivity?
Use Monitor > Manage Security > Connectivity Tests to check TLS, SSH, SMTP, IMAP, AS2, Kafka and other connections before deploying.
26. What monitoring tools exist?
Monitor Message Processing, Manage Integration Content, Manage Security Material, Manage Stores (Data Stores, Variables, Message Queues), Access Logs and Connectivity Tests, plus alert integration with SAP Cloud ALM.
27. What is the Content Enricher?
A step that calls another source (via Request-Reply, for example) and merges that response into the original message, either by Combine or Enrich strategy using path and key elements.
28. How is Content-Based Routing implemented?
With the Router step, which evaluates XPath or non-XML expressions on the payload, headers or properties. Use a default route for unmatched messages.
29. What is XSLT mapping used for?
For complex XML transformations that the graphical mapper cannot express easily, using an uploaded XSLT stylesheet.
30. What is Poll Enrich?
A step that fetches a message from a source such as SFTP or Mail during flow execution and merges it with the current message. It reads on demand rather than on a schedule, so it differs from the Timer start event.
Advanced SAP Cloud Integration Questions
31. How is the OData adapter used?
As a receiver adapter to call OData V2 or V4 services (S/4HANA, SuccessFactors) with query, create, update and delete operations, and with the Operations Modeler helping to build queries. As a sender it exposes an iFlow as an OData service.
32. How is iFlow versioning managed?
Every save creates a new version, and you can view or restore earlier versions. The semantic version number is for your own tracking. Combine this with transport management for controlled releases.
33. How do you use dynamic expressions in the Content Modifier?
With Camel Simple Expression syntax, for example
${header.OrderID}, ${property.Region} and
${date:now:yyyy-MM-dd}, plus externalised parameters written as
{{ParamName}}.
34. What is Value Mapping?
A lookup that converts values between systems or agencies, such as country codes or unit codes. It is maintained as a Value Mapping artifact and used in mappings through the valueMap function.
35. How does it integrate with API Management?
Expose iFlows through API Management (also part of Integration Suite) as managed APIs, adding policies such as spike arrest, quotas, OAuth verification and caching, with analytics and developer portal publication.
36. How do you handle a sync-to-async bridge?
Receive the call synchronously, write the message to a JMS queue (or Data Store), return an immediate acknowledgment and process asynchronously in a second flow. Where a response is needed later, use polling or callbacks.
37. What is Parallel Multicast?
A step that sends the same message down several branches concurrently, which reduces total run time when branches are independent. Use Sequential Multicast when order or shared state matters.
38. How is correlation handled?
By using identifying values such as business keys or headers. Aggregators correlate on an expression, and Splitters carry correlation info for downstream processing. Sender-side message IDs help trace messages in monitoring.
39. How do you debug an iFlow?
Set the log level to Trace (time limited) to inspect payloads and headers after each step in message monitoring. Use Info or Debug levels in production, MPL custom headers for searchable values, and the Groovy script editor for quick tests.
40. How do you convert JSON to XML?
Use the JSON to XML Converter step (and XML to JSON for the reverse), optionally adding a root element and namespace mapping.
41. How do you design modular integrations?
Use Local Integration Processes within one iFlow and ProcessDirect between iFlows, plus shared script collections and externalised parameters. Keep one concern per iFlow.
42. How is sensitive data handled securely?
Store secrets in User Credentials, OAuth2 Credentials or Secure Parameter artifacts, never in iFlow properties or scripts, and keep certificates and keys in the Keystore. Avoid logging sensitive payloads.
43. How do you use Groovy for error handling?
Wrap logic in try/catch, read the exception via
exchange.getProperty("CamelExceptionCaught"), write details to
the message processing log and set a meaningful HTTP status and response
body.
44. How can advanced content-based routing be achieved?
Set a routing value with a script or XPath and let the Router decide on it, or use a Content Modifier with a lookup (Value Mapping or a Data Store) so routing rules live in configuration rather than code.
45. How are custom libraries used in Groovy?
Create a Script Collection artifact containing shared scripts, then reference it from the iFlows that need it. External JARs can be added as resources where supported.
46. How do you migrate iFlows between environments?
Export and import the integration package manually, or automate it with Cloud Transport Management Service (or CTS+ / Solution Manager in older landscapes). Use externalised parameters so only configuration changes per tenant.
47. How do you encrypt a payload?
Use the PGP Encryptor or PKCS#7/CMS Encryptor step with the receiver's public key, and add a signer step if integrity and non-repudiation are required.
48. How do you handle large messages?
Prefer streaming and Splitters (with streaming enabled) to process in chunks, avoid unnecessary body reads in scripts, use the chunking options of OData and SFTP adapters and watch the runtime's memory limits.
49. How do you create reusable iFlows?
Extract common logic into a dedicated iFlow, call it through ProcessDirect, share scripts and mappings via script collections or package-level artifacts and use externalised parameters for settings.
50. How can you expose an iFlow as an API?
Use an HTTPS (or SOAP) sender adapter, which gives the iFlow an endpoint on the tenant runtime. Then publish it via API Management to add policies, rate limiting, monitoring and a developer portal.
No comments:
Post a Comment