A set of middle ware programs and tools that provide the underlying base that enable applications to be inter-operable across operating systems. SAP Basis includes a RDBMS, GUI, and client server architecture. It's a piece of middle ware which links the application with the database and the operating system. Basis is most commonly associated with the GUI interface to the SAP.
91 unique questions, answered for SAP Integration Suite (Cloud Integration) on Cloud Foundry. Questions marked "your experience" need your own project examples.
Experience and approach
1. Name 5 iFlows you have developed (your experience)
SuccessFactors Employee Central to Active Directory (OData V2 to LDAP/SCIM)
SuccessFactors to SFTP payroll file (CSV)
S/4HANA Business Partner to Salesforce (OData to REST/JSON)
SFTP file to S/4HANA IDoc
S/4HANA to third-party web service with error notification
2. Which systems have you integrated? (your experience)
Typical list: SuccessFactors, S/4HANA, ECC, Ariba, Concur, Salesforce, SFTP servers, Active Directory/Entra ID, and third-party REST/SOAP apps.
3. How do you analyse requirements and develop an iFlow?
Collect the specification: source and target, protocol, volume, frequency, sync or async, authentication, mapping sheet, error expectations.
Design the flow: sender, processing steps, receiver, exception handling.
Build in an integration package: channels, WSDL/EDMX/XSD, mapping, externalized parameters.
Test with sample payloads and trace; add unit tests for scripts.
Transport (CTS+ or Content Transport), configure credentials and certificates, deploy, monitor.
5. How do you configure OData V2 for SuccessFactors?
Connection: address https://<apiserver>/odata/v2, proxy type Internet.
Authentication: OAuth 2.0 (SAML bearer) is preferred; Basic auth (user@companyId) is being phased out by SAP.
Processing: operation (Query, Read, Create, Update), resource path, query options such as $select, $filter, $expand, $top.
Set page size for server-side pagination; use the Select wizard to pick entities from metadata.
6. Why OData for SuccessFactors and not other adapters?
SF exposes native OData APIs. The OData adapter reads the metadata, builds the query, and handles pagination, batching and CSRF. SFAPI (SOAP) is legacy and being retired. With the HTTP adapter you would build URLs and paging yourself.
Enrichment, processing and volume
7. Content Enricher vs Poll Enrich, and their purpose
Content Enricher calls a service with the current message and merges the response (Combine or Enrich) to add missing data, such as manager details.
Poll Enrich fetches one resource (SFTP, mail) once mid-flow and merges it with the current message, for example a lookup file.
8. What is Process Call?
A step that invokes a Local Integration Process (a subroutine inside the same iFlow). It modularizes and reuses logic such as error handling or shared mappings.
9. How do you handle 1,000+ records?
Splitter with grouping, streaming and parallel processing; Gather to recombine.
OData pagination or $batch; reduce payload with $select and filters.
Decouple with JMS queues for throughput and retry.
Tune timeouts and monitor memory.
10. Error handling techniques in detail
Exception Subprocess with an Error Start Event; read ${exception.message} or CamelExceptionCaught.
End events: Error End (Failed), Escalation End (Escalated), Message End.
11. Employee ID arrives with 5, 6 or 8 digits; target needs 7
Use FormatNum with pattern 0000000 to left-pad shorter IDs. Combine length, IfElse and substring (or a UDF) to trim 8-digit IDs. Agree with the business how 8-digit IDs should be shortened.
12. Business and personal email received; send only business
Use ifWithoutElse (or createIf) with equals(emailType,"B") so only the business node is created. Alternatively filter in XPath.
13. Name 5 node functions
Create If, Exists, Remove Contexts, Collapse Contexts, Split by Value, Use One as Many, Replace Value, Copy by Value, Sort, Sort by Key. Node functions work on the context and queue structure rather than on single values.
Production, security and connectivity
14. What issues occur in production?
Expired certificates or passwords, 401/403 errors, timeouts, unexpected data breaking mappings, large payloads, SFTP host key changes, stuck JMS queues, duplicates, API rate limits, failed deployments, and Cloud Connector outages.
15. How do you configure client certificates and how do they work?
Outbound: create a key pair in the Keystore monitor (or CSR signed by a CA), import the server's CA chain, set Authentication = Client Certificate with the key alias.
Inbound: set authorization to Client Certificate and map the certificate DN to a user or role with ESBMessaging.send.
Mechanism (mutual TLS): in the handshake the server requests the client certificate, validates the chain against trusted CAs, and the client proves it holds the private key.
16. What is the known hosts file and how does it work?
SFTP uses it to store each server's public host key so CPI connects only to trusted hosts (protection against man-in-the-middle).
Monitor, then Connectivity Tests, then SSH: enter host and port.
Fetch the host key and save as known_hosts.
Upload it in Manage Security Material (Known Hosts) and redeploy.
17. How do you configure HTTP, IDoc and SOAP adapters?
IDoc receiver: address /sap/bc/srt/idoc, authentication, proxy; ABAP side needs SICF, WE20/WE21, BD54. IDoc sender: ABAP calls the CPI endpoint through an RFC destination (SM59) and a partner profile.
SOAP: import WSDL, pick service and operation, set one-way or request-reply, set authentication.
18. Which optimization techniques do you use?
Limit payload ($select, filters), stream and split in parallel, drop unused headers and properties, avoid unnecessary scripts, minimize external calls, reuse via ProcessDirect, prefer XSLT for large XML, clean Data Stores, keep log level low in production.
19. Do you know PGP keys?
PGP uses a key pair: encrypt with the receiver's public key, decrypt with their private key. In CPI use PGP Encryptor/Decryptor with public and secret keyrings from Security Material. Keys are generated with GnuPG or Kleopatra.
20. What is cloud vs on-premise?
Cloud systems are vendor-hosted subscriptions (SuccessFactors, Ariba, Integration Suite). On-premise systems run in your data center (ECC, PO, on-premise S/4HANA). Connect the two with the Cloud Connector. For private landscapes, the Edge Integration Cell runs CPI runtime on your own infrastructure.
21. What is the HTTP adapter and its authentication methods?
It sends or receives any HTTP/HTTPS call. Authentication: None, Basic, Client Certificate, OAuth2 (client credentials, authorization code, SAML bearer), and Principal Propagation.
22. Authentication methods available in SAP CPI
Basic, client certificate, OAuth2 (client credentials, SAML bearer, JWT bearer, authorization code), principal propagation, SFTP public key, user token / WS-Security, API key via header, and none.
23. What is OAuth 2.0 and how do you configure it?
A framework where a client gets a short-lived access token from an authorization server instead of sending credentials on each call.
Receiver: create an OAuth2 Client Credentials artifact (token URL, client ID, secret, scope) in Security Material and select it in the adapter.
Sender: create a service key in BTP, fetch a token, call the endpoint with Authorization: Bearer <token>.
24. Content Enricher vs Aggregator
The Enricher merges one message with lookup data and is stateless. The Aggregator stores several correlated messages and emits one combined message when the completion condition is met.
25. How do you configure the SFTP adapter?
Connection: host:port, authentication (password, public key, or both), credential alias, known hosts deployed.
Sender: directory, file name pattern, scheduler, post-processing (keep, delete, archive), sorting, max messages per poll, idempotent file check.
SFTP runs over SSH (port 22), fully encrypted, with key-based login. FTP is plain text (port 21); FTPS adds TLS. SFTP in CPI needs the known hosts file.
Splitting, routing and persistence
27. General splitter vs iterative splitter
The General Splitter keeps the envelope around each split message. The Iterative Splitter returns only the repeating element. Both offer grouping, streaming, parallel processing and stop on exception. Other splitters: EDI, IDoc, PKCS7, Zip, Tar.
28. Explain Join and Gather
After Multicast or Router creates parallel branches, Join merges the branches back into one flow and Gather combines their messages into a single message (XML or concatenated text).
29. Can Join or Gather be used alone?
Yes. Join alone merges router branches without combining content. Gather alone merges the output of a Splitter. The usual parallel pattern is Multicast, Join, Gather.
30. What is a Data Store and Write Variables?
A Data Store keeps whole messages by Entry ID in the tenant database (retention up to 90 days). Write Variables keep a single value (header or property) with no expiry.
Error End ends the flow with an error and returns it to the sender (Failed). Escalation End ends it as an escalation (Escalated), typically from a local process or exception subprocess.
33. What is JMS?
Queue-based asynchronous messaging inside the tenant. It decouples sender and receiver, guarantees delivery, supports retry and dead-letter handling. For cross-system events use SAP Event Mesh or Advanced Event Mesh.
34. What is Send, and which adapters do you use with it?
The Send step (External Call) delivers a message one-way without waiting for a reply, with asynchronous adapters such as SFTP, JMS, Mail, AS2, and one-way SOAP.
35. What is a local idempotent process?
An idempotent check keyed on a message or entry ID. If the key was already processed, the duplicate is skipped, preventing double processing.
36. What is the ProcessDirect adapter?
It links two iFlows in the same tenant using a matching address string, used for reuse and modular design.
37. Can properties be sent through ProcessDirect?
No. Body and headers pass through; exchange properties do not. Copy properties to headers before the call.
Variables, functions and SuccessFactors scenarios
38. What is the SOAP Action parameter?
An HTTP header in SOAP 1.1 that signals the intended operation. In the CPI SOAP adapters it can be set in the channel or through the SOAPAction header.
39. What is SuccessFactors?
SAP's cloud HCM suite (Employee Central, Recruiting, Onboarding, Performance, Compensation). CPI connects through the SuccessFactors adapter (OData V2/V4) or HTTP.
40. Local variable vs global variable
Created with Write Variables. A local variable is visible only in the same iFlow; a global variable is visible to all iFlows in the tenant.
41. SF sends 1,000 records and all files go to the same SFTP location
Split with the Iterative Splitter, set a unique CamelFileName per record (message ID or timestamp), and write to one directory. Or Gather into one file, or use the SFTP Append option.
42. Remove Contexts
Removes all context boundaries so values form one flat list, useful when values from many sub-structures must be treated together.
43. Use One as Many
Repeats one value for each value in another queue, for example copying a header-level field onto every line item.
44. Multicast
Sends the same message to several branches, either sequentially (ordered) or in parallel. Use Join and Gather afterwards to combine the results.
45. Polling vs scheduler
Polling: a sender adapter (SFTP, Mail, JDBC) checks the source on its own schedule. Scheduler: a Timer Start Event triggers the iFlow by time with no sender system.
46. Technical system vs business system
A PI/PO concept: technical systems are registered in the SLD, business systems are logical configuration objects. CPI has neither; it uses participants and channels.
47. Which monitoring is easier, PI or CPI?
CPI. One web UI covers message monitor, trace, stores and queues, while PI spreads this across RWB, SXMB_MONI and the adapter engine.
48. ABAP sends to PI but the receiver gets nothing: why?
No receiver determination or agreement, inactive channel, receiver down or blocked by firewall, certificate or authorization errors, mapping errors, stuck queues (SMQ2, SXMB_MONI), missing IDoc port or partner profile, wrong RFC destination.
49. Why is the OData adapter different?
It is resource-oriented and driven by EDMX metadata. It builds requests, handles pagination and CSRF, and supports Query, Read, Create, Update, Merge and Delete, unlike message-based SOAP or HTTP.
50. Transactions and programs in CPI
CPI has no SAP GUI transactions; it has the Design, Monitor, Discover and Settings web apps. Related ABAP transactions: SM59, WE20, WE21, WE19, BD54, SOAMANAGER, SICF, SPROXY, STRUST.
51. Adapters for incoming data from SAP ABAP
IDoc, SOAP (SOAMANAGER or proxy), HTTPS, XI (ABAP proxy), and RFC, using the Cloud Connector for on-premise systems.
52. Value mapping
Translates values between systems (country code IN to India). Define a Value Mapping artifact with agency and identifier for source and target, use it in message mapping or the Value Mapping function, and set a default or fail behavior for missing values.
53. Boomi
Dell Boomi AtomSphere is a vendor-neutral, low-code iPaaS and a CPI competitor. CPI is stronger for SAP-centric landscapes thanks to prebuilt SAP content.
54. What is MPL?
The Message Processing Log records each message's steps, status and errors. In Groovy, use messageLogFactory.getMessageLog(message) to add custom headers or attachments.
55. How can you enable trace in CPI?
Monitor, Manage Integration Content, select the iFlow, set Log Level to Trace (active for a limited time). Then open the message and use the Trace tab to see payload, headers and properties per step.
IDoc: SM59 (RFC destination), WE20/WE21 (partner profile, port), BD54 (logical system), WE19 (test). Web services: SOAMANAGER, SICF. Certificates: STRUST. Plus Cloud Connector setup for on-premise access.
Architecture and scenarios
58. Synchronous vs asynchronous communication
Synchronous: the sender waits for the response on one connection, so timeouts matter. Asynchronous: the sender gets an acknowledgement and processing continues later, usually through queues.
59. Which communication style is better?
Depends on the need. Synchronous for immediate answers; asynchronous for high volume, resilience and decoupling.
60. What is a B2B scenario?
Exchange of business documents (orders, invoices, ASNs) between companies using standards (X12, EDIFACT) and protocols (AS2, SFTP). In Integration Suite, the Integration Advisor and Trading Partner Management support this.
61. Have you worked on B2B? (your experience)
Example: EDI 850 purchase order received over AS2, converted to an IDoc. If not, explain partner profiles, EDI converters and AS2 signing and encryption.
62. Why choose HTTPS over SOAP in some scenarios?
Lighter, supports JSON and any payload, no WSDL, custom headers, and matches most modern APIs.
63. Difference between Sort and SortByKey
Sort orders one queue of values. SortByKey sorts a value queue according to a separate key queue.
64. What does SplitByValue do?
Splits a context holding several values into separate contexts (options: Value Change, Each Value, Context Change).
65. Steps involved in migration
Assess the PO landscape with the Migration Assessment tool.
Prepare the target tenant (Cloud Foundry).
Migrate content with the Integration Content Migration tool.
Rebuild unsupported items; set up keystore, credentials and Cloud Connector.
Test, run in parallel, cut over. Neo to Cloud Foundry tenant moves follow the same export, re-import and re-credential approach.
66. What is the Cloud Connector and its connection steps?
An on-premise agent that opens a secure outbound tunnel to SAP BTP, so no inbound firewall ports are needed.
Install on an on-premise server.
Connect it to the BTP subaccount.
Map internal host:port to a virtual host:port.
Expose URL paths or RFC resources.
In CPI use Proxy Type On-Premise with the virtual host (and Location ID if used).
67. Collapse Contexts vs Remove Contexts
Remove Contexts flattens everything into one context. Collapse Contexts merges only into the next higher context, keeping the parent grouping.
68. What is bearer authentication?
The client sends Authorization: Bearer <token>; whoever holds the token gets access. Examples: OAuth2 access tokens and JWTs. Always use HTTPS.
69. Which adapters do you use with S/4HANA?
IDoc, SOAP, OData V2/V4 (for example API_BUSINESS_PARTNER), HTTP, XI/ABAP proxy, RFC, and event-based integration through Event Mesh. On-premise systems go through the Cloud Connector.
70. S/4HANA sender, web service receiver: how do you notify the sender on failure?
Synchronous: catch the error in an exception subprocess and return a SOAP fault or error response. Asynchronous: JMS retry, then mail or alert, or send a status IDoc so the error appears in WE02.
71. SAP CPI vs PO
CPI: cloud, multi-tenant, web designer, SAP-managed updates, iFlows. PO: on-premise ABAP/Java, ESR, Integration Directory, SLD, adapter engines, self-maintained. PO supports more legacy protocols; CPI is SAP's strategic platform.
72. How do you make iFlows reusable and modular?
ProcessDirect, Local Integration Processes via Process Call, externalized parameters, script collections, shared value mappings and mapping resources, package templates, JMS decoupling.
73. How do you read headers and properties in mapping?
Message mapping: declare them under Parameters and use the function in the mapping. XSLT: xsl:param with the same name. Groovy: message.getHeader() and message.getProperty().
74. What is ID Mapping?
A PI/PO feature that cross-references a source ID to a target ID. In CPI use Value Mapping, a Data Store, or a Number Range.
75. Explain encryption and decryption
Encryption turns plain text into ciphertext with a key; decryption reverses it. Symmetric uses one shared key (AES); asymmetric uses a key pair (RSA, PGP). CPI offers PKCS#7/CMS and PGP Encryptor/Decryptor steps plus Signer and Verifier.
76. Which tool creates keys?
CPI Keystore monitor, Java keytool and OpenSSL for X.509 keys; GnuPG or Kleopatra for PGP.
77. What is JWT authentication?
A signed token (header.payload.signature) carrying claims, sent as a Bearer token. The server verifies the signature. In CPI it appears in OAuth2 JWT bearer flows or tokens built in Groovy.
78. Which expression gets the payload?
Simple Expression: ${in.body} or ${body}. Groovy: message.getBody(String). XPath: the node path.
79. Explain OData operations
Query (GET collection), Read (GET entity), Create (POST), Update (PUT), Merge (PATCH), Delete, Function Import, and $batch for multiple operations in one call.
80. Is the SOAP sender synchronous or asynchronous?
Both: request-reply (synchronous) or one-way (asynchronous), depending on the configuration and WSDL.
81. Is the SOAP receiver asynchronous?
Not always. It can be one-way or request-reply depending on the WSDL operation and message exchange pattern.
82. Why do we use a routing condition?
The Content-Based Router evaluates XPath or non-XML expressions to pick the branch per message, with a default route as fallback.
83. How do you enable capabilities?
In the BTP subaccount subscribe to Integration Suite, open it, go to Settings, then Capabilities, activate Cloud Integration (and others such as API Management), and assign role collections to users.
WRITE stores the full payload and headers under an Entry ID with a retention period. Write Variables store single header or property values (local or global) with no expiry.
86. What is the purpose of the Persist palette?
It groups Data Store Operations, Write Variables and Persist Message (message store, about 90 days) for reprocessing, audit and later retrieval.
87. Which data formats does CPI accept?
Any. XML is native for mapping; JSON, CSV, flat text, EDI and binary are handled, with Converters to switch formats.
88. Explain the Content Modifier
Creates or changes the message Header, Exchange Property or Body. Each row has Name, Source Type (Constant, XPath, Expression, Header, Property, Number Range, Variable), Value and Data Type.
89. Explain the Filter step
Applies an XPath expression to the XML payload and keeps only matching nodes (value type Nodelist or String).
90. Explain the Converter step
Converts between formats: CSV to XML, XML to CSV, JSON to XML, XML to JSON, EDI to XML. Options include separator, header line and namespace handling.
91. Where do we perform connectivity tests?
Monitor, then Connectivity Tests. Tests include TLS, SSH, SMTP, IMAP, POP3, AS2, FTP, LDAP and Cloud Connector.
No comments:
Post a Comment