Beginners: Learn SAP CPI with Hands On & Practical Examples
What you'll learn
- Develop end-to-end real-world CPI interfaces
- CPI connectivity, routing, design, mapping technique/example
- Various CPI steps and their usage together with hands-on examples
- For more detail please see course description
- Willingness and determination to learn SAP CPI
- Good to have basic programming knowledge (for groovy mapping)
How this SAP CPI course is designed and structured?
This course is designed with practicality in mind, mean the course sections and lectures examples can be used as reusable pattern to apply in real-world CPI projects development needs.
I designed this course content based on my past 15+ CPI projects experiences, with aim that once mastered course lesson, believed able to cover majority of the CPI project development fundamental need.
This course is structured from simple topic to more intermediate/advance topic. You can jump straight to the topic you interested.
What is covered in this SAP CPI course?
CPI Trial Account Setup - Learn how to setup your own CPI trial account/tenant with basic authentication(mean able to call from client tool, e.g.: Postman), and tips on CPI trial tenant renewal, integration flow backup and restore.
Software Tool Setup - Learn how to download and install java SDK, Groovy library, CPI library. Configure IntelliJ IDEA for local Groovy script development and unit test.
Content Modifier - Learn the basics of Content Modifier on Header, Property and Body, with XPath and expression.
Request Reply - Learn Request Reply to make some calls, and show examples of 3 commonly used adapters: OData, HTTP and SOAP for cloud-based integration. Simulate real-world scenarios by Get and Post to Northwind OData. Bonus: Tips on comparing usage of HTTP vs. OData adapter.
Converter - Learn standard converter JSON To XML, XML to JSON, CSV to XML, XML to CSV. Additionally showing the different converter setting, limitation and pitfalls of these standard converters.
Routing - Router - Learn how to go to different route based on condition and then back to single route.
Routing - Multicast - Learn how to send same message to multiple routes, join gather back. Explored sequential and parallel multicast, alternative way of multiple routes without multicast, and end with a simulated real-world multicast example.
Routing - Splitter - Learn this Splitter pattern to tackle challenge of splitting large payload to smaller one then only process. Understand different between General and Iterating Splitter, Gather back individual processed smaller payload. Split by XPath, Line Break and Token. Handle namespace during splitting. Bonus: additionally explored usage of Nested Splitter.
Groovy Mapping - First learn how to get and set header, property & body using CPI Web IDE. Next introduce example.groovy which is reusable template groovy mapping to be used in IntelliJ IDEA, supported local unit testing. Using example.groovy as template, explored below common groovy mapping format:
Map IDOC to Flat XML and Tree XML
Map IDOC to Flat JSON and Tree JSON
Map JSON Tree to IDOC
Map IDOC and JSON Tree to CSV using SuperCSV Library (external Jar library)
Convert CSV to Flat XML for Both Known and Dynamic CSV Fields
Map to Northwind Raw OData Batch Payload (Using HTTP adapter as an alternative of OData adapter)
After master above groovy mapping technique, basically should able to apply the same concept to handle any kind of mapping need from one format to another and work in SAP CPI, as long as it able to code in groovy programming.
Message Mapping (Graphical Mapping) [New Update March 2022] - Learn by build simple message mapping step-by-step, further explained message mapping queue and context concept, showcase example usage of standard Text, Numeric, Statistic and Node functions e.g. useOneAsMany, formatByExample, collapseContext, removeContext, splitByValue, etc. Learn build message mapping simulate real-world IDOC/XML mapping scenario from Idoc to xml, xml to Idoc, tree structure to flat structure and vice-versa. Also explored value mapping and how to download, upload, copy, rename, reference message mapping in iflow.
Base64 Encode & Zip Handling [New Update March 2022] - Learn common way to do Base64 encode and decode. Learn zip, unzip, set filename in zip and split multiple files inside zip, create zip with multiple files.
Looping/Paging in CPI - Learn how to loop get all OData V2 entity, and usage of Looping Process Call. Comparison of OData V2 and V4 adapter. Bonus: Show example of OData Looping/Pagination using HTTP adapter instead of OData adapter.
Enrich/Lookup in CPI - Learn how to enrich source XML with lookup XML using content enricher and OData adapter. Followed by using content enricher from ProcessDirect to lookup non-xml data (e.g. Json). Finally show how to do advanced lookup and data enrichment using groovy mapping.
Exception Handling in CPI [New Update March 2022] - Learn how to handle exception occurred, define exception subprocess, get exception detail, including HTTP, OData and SoapFault response payload. Explained different behaviors of End Message & Error End Event, case to handle when multiple local integration process, and finally show list of different ideas to handle exception and their pro & con.
OpenPGP Encryption and Signing (New Update March 2022) - Learn to understand usage of public and private PGP keys in PGP encryption and signing, how to create and import PGP keys, steps to encrypt and sign from CPI then decrypt and verify at partner's end, and the other direction too(Partner to CPI). Lastly, show different of GPG and OpenPGP, some GPG command lines, tips to troubleshoot and workaround for GnuPG to compatible with OpenPGP.
Persistence/Variable/Data Store - Learn how to read & write Local Variable and Global Variable, and tips on when to use which. Show usage of variable in CPI using Northwind OData example, and how to on-demand read & write multiple global variables from Postman tool.
Learn below common Data Store operations using step-by-step example:
How to write all/list of records to Data Store.
How to get single entry from Data Store A and Write to Data Store B.
How to read multiple entries from Data Store using Get operation and Splitter.
How to read multiple entries from Data Store using Select operation.
Also explored usage and impact of Data Store setting like 'Overwrite Existing Message', 'Delete on Completion', 'Throw Exception on Missing Entry', 'Number of Polled Messages' and 'SapDataStoreMaxResults'.
SFTP Adapter Series [New Update Feb 2022] - Learn common tasks to work on SFTP interface, including setup your own free SFTP server, SAP cloud connector, SFTP authentication using credential and OpenSSH public key, move & delete/archive SFTP files, SFTP file name pattern, SFTP poll enrich.
JDBC (Database) Adapter Series [New Update Feb 2022] - Setup your own SQL Server and connect from CPI. Learn how to Select, Insert, Update, Delete, Upsert from Database table, single or multiple records, explored direct SQL, XML SQL, SQL_DML, SQL_QUERY features, Batch mode, write and execute stored procedure, including Splitter loop Upsert compared with XML Bulk Upsert stored procedure.
AMQP (Message Queue) Adapter Series [New Update Dec 2022] - Setup your own Solace PubSub+ event broker and connect from CPI. Quick Intro on event broker, queue, topic and topic subscription. CPI Send Message to Event Broker using Queue and Topic. CPI Consume Message from Event Broker by Queue. Learn message retry mechanism using DMQ (Dead Message Queue) and also retry after some interval with delayed delivery.
Can I hands-on try by myself to develop examples in this SAP CPI course?
Yes! All examples in this course is newly designed and build in my personal CPI trial tenant and using free/community software e.g. Postman, SoapUI and IntelliJ community version. You can follow section 'CPI Trial Account Setup' and 'Software Tool Setup' to setup your own training environment and tools needed.
What can I download from this SAP CPI course?
You will have access to all text notes, groovy script files and sample request payloads used in this course and able to download them.
These downloadable content ease your hands-on, can copy paste while developing in stead of write them manually.
What can I gain after completing this SAP CPI course?
After complete this course, go through all hands-on example and understand the usage of various fundamental SAP CPI building block steps and concept, believed able to apply in real-world CPI project development fundamental need, from Beginner to Self-Confidence in SAP CPI!
Should I buy this course?
Ask yourself: Do you want to start learning, make a difference, upgrade skillset and career growth? If yes, go ahead and buy it.
Who this course is for:
- Beginner SAP CPI Developer/Consultant (who want learn from basics)
- Intermediate SAP CPI Specialist (who interested on specific CPI sections)
- Everyone who wants to learn SAP CPI
Yee Loon has more than 15 years experience in SAP Integration Platforms, engaged contract work with various Companies like SAP HQ(Walldorf), HCL, Rizing, Weir Minerals, Transport for London, Accenture, Deloitte, IBM, Guinness Anchor, TetraPak, Fonterra, OSRAM since 2007.
Had done 16+ SAP PI/PO, and 15+ SAP CPI projects ranging from design, development, implementation, maintenance & support of integration projects.
Over the years, I had come across different challenges and solutions in SAP CPI integration projects experiences, will summarize my years of SAP real-world integration project experiences into beginner-friendly, thoughtfully designed and prepared SAP CPI concepts and course content, so that you can learn SAP CPI effectively.
Will show you with practical examples that easily understand and can apply in actual projects, bring values to your skillset and career growth!