
Explore ABAP RESTful application programming model (RAP) for S/4HANA and wrap architecture. Create apps with wrap objects using tables, CDS, views, and OData services; compare managed and unmanaged implementations.
Explore the ABAP programming model toward RAP, covering CDS views, OData, behavior definitions, service definitions, and the rise of rest-based SAP Fiori apps.
Explore the rap architecture overview, leveraging cds views and entities to build a scalable, cloud-ready restful abap app with odata services, service definitions, and bindings.
Explore the RAP architecture by detailing CDS entities, behavior definitions, and implementations that form a business object, including projections, service definitions, and OData and Fiori UI exposure.
Delve into business object projections, define service definitions and bindings, and expose OData web APIs, events, and Fiori user interfaces through the Rap architecture projection layer.
Install Eclipse and the ADT plugin to enable ABAP artifact development, including CDs views, by following prerequisites such as Java version and supported OS, and connect to the SAP backend.
Explore the managed implementation type in ABAP RAP, where create, update, and delete are defined in the behavior definition for a ready-to-run business object, while the transactional engine manages lifecycle.
Create two tables, sales order header and sales order item, define view and projection views, then publish a read-only rap app as a list report via OData v4 binding.
Create a local package and build the sales order header table in sap gui or adt, defining fields like sales order uuid, number, type, currency, and administrative fields.
Create the sales order item table in eclipse with uuid-based keys and a header reference, add fields and annotations for quantity unit and currency, and seed data with ABAP report.
Create the data model by building CDS views for sales header and sales item, define their composition and association, and apply annotations for currency and admin fields.
Create and activate projection views for the sales header and sales item cds views in the 3DS data model projection, enabling denormalization and enrichment with ui and object model annotations.
Learn what annotations are in S/4HANA RAP, including ABAP and framework-specific annotations, such as buffering type, authorization checks, UI and semantic annotations for CDS views.
Add object model annotations to header and item projection views to enable free text search and metadata extensions, including sales order number, sold-to party, and sales organization.
Create metadata extensions for the header and item projection views, adding UI annotations to hide fields and define line item positions for the list report.
Create a service definition to expose sales header and item entities, then create an OData v4 UI binding, publish the service, and test it with the gateway client.
Add ui annotations to display sales order details in a preview app by configuring header info and an identification facet with order number, type, sold-to party, and sales organization.
Add a second facet to the object page to display sales order items as a line-item reference. Set position to 20 and activate changes.
Recap creating a wrap object with the managed implementation, building tables, CDs view entities and projection views, adding annotations, and exposing them via service definition and binding with Fiori Elements.
Add transactional behavior to a new SAP S/4HANA RAP app by enabling create, update, and delete in the behavior definition to deliver a ready-to-run business object.
Explain how a behavior definition specifies actions on cds data model, including create, update, and delete, and how it uses persistent table, E-tag, and lock master.
Create a base behavior definition for the route entity view, set aliases sales header and sales item, enable the RAP managed runtime, and map fields with numbering and E-tag master.
Activate the behavior projection for the root entity view in RAP, define aliases, enable ETag, and note that create and update require an OData v2 binding for now.
Explore using a v2 OData binding in RAP to enable create and update operations, without drafts for OData v4, with create, read, update, and delete handled by the wrap runtime.
Learn how a draft enabled application stores changes in backend shadow and draft tables, then moves them to active tables on save, enabling stateless patterns with a stateful user experience.
Enable draft support for a transactional application by configuring draft tables, associations, and behavior definitions, then move data from draft to active tables through the wrap managed runtime.
Learn to use the entity manipulation language (eml) in ABAP to access and manipulate wrapped business objects, enabling read and modify (crud) operations via behavior definition.
Understand determinations and validations in rap by implementing determine and validate methods in a local handler class, triggered on unmodified and unsafe events to recalculate totals and verify supplier IDs.
Demonstrates creating a determination in ABAP RAP to auto-assign the next sales order ID on save, reading existing data, updating the header, and making the field read-only.
Demonstrates adding a plant validation to the sales item in RAP, validating plant on save by comparing to table T001W and raising the plant does not exist error.
Understand how actions in Wrap are non standard modifying operations that update fields via a predefined update implementation, and see status field and set complete action updating a sales order.
demonstrates adding a status field to the sales order header across DB, CDS views, and OData service, via domain creation, data element, table updates, and behavior mapping.
Create and expose a set complete action for sales orders in RAP, updating status to complete via AML, with UI buttons on list and object pages, and verify via debugging.
Review behavior definition and projection, and define operations for business object. Draft and enable the application with custom validations, determinations, and actions, and wrap objects using the managed implementation type.
Explore unmanaged wrap implementation to reuse existing legacy objects through the wrap framework, defining behavior, transactional handling, and OData exposure for SAP Fiori UI.
Learn how to build an unmanaged transactional RAP app that consumes legacy APIs, defines data models with CDS views, creates projections, binds services, and tests in the Fiori preview UI.
Create two legacy ABAP tables for customers and addresses, populate them with sample data via a dedicated program, and build the unmanaged wrap object with initial views in separate packages.
Create and activate interface and projection views for the wrap unmanaged customer scenario in RAP, configure route view entities, add admin field annotations, and define customer-address associations.
Create and implement behavior definition and behavior implementation for customer and customer address interfaces, wire behavior projection, enable unmanaged wrap, define read-only fields, map CDS views, and set aliases.
Create a service definition and two service bindings (OData v2 and v4) to expose projection views for a non-draft RAP app, publish and test in SAP Fiori Preview UI.
Extend the RAP CDS views with UI annotations by creating metadata extension files, copying admin annotations from interface views, enabling search and facets, and activating the updated consumption views.
Demonstrates the customer app in S/4HANA rap, showing reading customers and addresses via behavior implementation, updating field labels with user text annotations, and outlining create, update, delete via legacy APIs.
Create a legacy API in SAP GUI by building a class for a customer object, implementing CRUD operations with a buffer and saving to the database.
Implement the create method in the RAP behavior to call the legacy API, map input to a work area, save data to the DB, and return the new customer number.
Implement a customer address create api using a table type buffer to calculate a new address id, populate admin fields, and persist the address data to the database.
Demonstrates implementing the customer address create method in the abap restful application programming model by looping over customers and addresses, calling the create api, and persisting results.
Master the restfull ABAP programming model (RAP) in S/4HANA, building a sales order read-only app and a customer application with validations, determinations, actions, and draft enablement in wrap architecture.
The SAP RESTful Application Programming (RAP) course is designed to provide learners with comprehensive knowledge and hands-on experience in building sophisticated, enterprise-ready applications using SAP’s new RESTful ABAP programming model.
RAP is a modern approach to developing both transactional and analytical applications on the ABAP platform.
This course will equip participants with the skills to design, develop RESTful applications, ensuring they are well-versed in building scalable and maintainable solutions in an SAP environment.
Participants will learn the fundamental concepts of RAP, understand its architecture, and explore how to build end-to-end applications using this framework. By the end of the course, learners will be able to implement RAP applications in SAP S/4HANA making them capable of handling complex enterprise use cases.
Prerequisites:
1. Basic knowledge of ABAP Programming: Familiarity with the ABAP syntax and development environment.
2. Basic knowledge of CDS views and OData services
Course Structure:
1. Introduction to RAP and Overview of the ABAP Environment:
o Overview of the ABAP RESTful programming model and its components.
o Setting up the development environment using Eclipse with ABAP Development Tools (ADT).
2. Core Concepts and Building Blocks of RAP:
o Exploring the RAP layers: Projection, Business Object (BO), and Consumption views.
o Understanding Business Object (BO) modeling and Behavior Definitions.
3. Data Modelling and Query Processing in RAP:
o Creating and managing CDS (Core Data Services) views for RAP applications.
o Using CDS annotations to define metadata and relationships.
4. Implementing Business Logic in RAP:
o Defining and implementing Business Logic using ABAP classes.
o Implementing actions, determinations, and validations.
5. OData Service Exposure and Integration:
o Generating OData services from RAP BOs.
o Implementing CRUD (Create, Read, Update, Delete) operations.
6. Advanced RAP Features
o Using draft-enabled applications for managing long-running transactions.
By completing this course, participants will gain a deep understanding of SAP RAP, making them capable of building cutting-edge applications on SAP S/4HANA, setting them apart in the evolving landscape of SAP development.