ABAP RESTful Application Programming Model: The Comprehensive Guide
- Length: 560 pages
- Edition: F
- Language: English
- Publisher: Michael Lensch
- Publication Date: 2022-10-25
- ISBN-10: 1493223798
- ISBN-13: 9781493223794
- Sales Rank: #3157785 (See Top 100 Books)
You’ve worked with ABAP, SAP Fiori, and core data services―now see how these technologies and more come together in the ABAP RESTful application programming model. Learn to develop applications optimized for SAP S/4HANA, whether your system is on-premise or in the cloud. Follow step-by-step instructions to build new ABAP applications, update legacy applications, and reuse existing source code. Make the new model work for you!
- Develop ABAP applications for SAP S/4HANA and SAP BTP
- Use key tools and technologies, including core data services and SAP Fiori
- Get step-by-step guidance for modeling data, implementing behaviors, developing user interfaces, and more
Programming Model Basics
What is REST architecture? What are the components of the ABAP RESTful application programming model? What tools and technologies can you use to build end-to-end applications? Get the answers to these questions and more!
Hands-On Application Development
Follow step-by-step instructions to use core data services for data modeling, define and implement behaviors, access business objects with the entity manipulation language, and build a UI with SAP Fiori. See how to adjust your skills to work with the SAP BTP, ABAP environment in the cloud.
Use Cases and Scenarios
Develop new applications with SAP Fiori elements floorplans. Learn to integrate existing applications into the ABAP RESTful application programming model and reuse source code from current applications.
- REST architecture
- Core data services (CDS)
- Behavior definition and implementation
- Business service definition and binding
- Field definitions, associations, and actions
- Entity manipulation language (EML)
- SAP Fiori elements
- SAP Business Application Studio
- Visual Studio Code
- SAP BTP, ABAP environment
Dear Reader Notes on Usage Table of Contents Foreword Preface Acknowledgements Part I Basic Concepts and Technical Components 1 Introduction 1.1 What is the ABAP RESTful Application Programming Model? 1.1.1 The Purpose of the Programming Model 1.1.2 The REST Architectural Style 1.1.3 OData 1.1.4 Technological Innovations with SAP S/4HANA 1.1.5 Evolution of ABAP-Based Programming Models 1.2 Architecture and Concepts 1.2.1 Transaction Model 1.2.2 Implementation Types 1.2.3 Entity Manipulation Language 1.2.4 Technical Context of Applications and Runtime Environment 1.3 Development Objects 1.3.1 Data Modeling with Core Data Services 1.3.2 Behavior Definition 1.3.3 Behavior Implementation 1.3.4 Projection Layer 1.3.5 Business Services 1.3.6 Interaction of the Artifacts 1.4 ABAP Development Tools 1.5 Quality Attributes of the ABAP RESTful Application Programming Model 1.5.1 Evolution Capability 1.5.2 Development Efficiency 1.5.3 Testability 1.5.4 Separation between Business and Technology 1.6 Availability of the ABAP RESTful Application Programming Model 1.6.1 SAP BTP, ABAP Environment 1.6.2 ABAP Platform for SAP S/4HANA On-Premise 2 Core Data Services: Data Modeling 2.1 What are Core Data Services? 2.2 Structure and Syntax of Core Data Services 2.2.1 Creating a Basic Interface View 2.2.2 Analyzing the Data Model 2.2.3 Using CDS Views 2.2.4 Extending the Data Model 2.3 Associations 2.4 Annotations 2.5 Access Controls 2.6 Extensibility of CDS Entities 2.6.1 CDS View Extensions 2.6.2 CDS Metadata Extension 2.7 Additional CDS Functionality 2.7.1 Virtual Elements 2.7.2 CDS Custom Entities 2.8 Virtual Data Model 2.9 CDS Language Elements for Modeling Business Objects 3 Behavior Definition 3.1 What is a Behavior Definition? 3.1.1 Context and Structure of a Behavior Definition 3.1.2 Syntax of a Behavior Definition 3.1.3 Possible Behavior 3.2 Editing a Behavior Definition in ABAP Development Tools 3.2.1 Creating a Behavior Definition 3.2.2 Changing and Activating a Behavior Definition 3.2.3 Finding and Opening a Behavior Definition 3.2.4 Documenting Behavior Definitions and Relationships 3.3 Implementation Types 3.3.1 Managed Scenario 3.3.2 Unmanaged Scenario 3.4 Strict Mode 3.5 Entity Behavior Definition 3.6 Defining a Behavior Pool 3.6.1 Behavior Pool for Behavior Definition 3.6.2 Behavior Pool for the CDS Entity 3.6.3 Behavior Pool for the Implementation Group 3.7 Numbering 3.7.1 Early, External Numbering 3.7.2 Early, Internal Numbering 3.7.3 Late Numbering 3.8 Field Properties 3.8.1 Mandatory Fields 3.8.2 Protection Against Write Access 3.8.3 Combination: Mandatory Field in Case of Creation, Write Protection in Case of Updates 3.9 Field Mappings 3.10 Standard Operations for a CDS Entity 3.10.1 Create, Read, Update, and Delete 3.10.2 Create and Read Operation by Association 3.11 Specific Operations for a CDS Entity 3.11.1 Actions 3.11.2 Functions 3.12 Concurrency and Locking Behavior 3.12.1 Pessimistic Locking 3.12.2 Optimistic Locking 3.13 Internal Business Logic 3.13.1 Determinations 3.13.2 Validations 3.13.3 Calling Determinations via an Action 3.14 Authorization Checks 3.14.1 Authorization Master 3.14.2 Authorization-Dependent 3.14.3 Delegating Authorization Checks 3.15 Draft Handling 3.15.1 Enabling Draft Handling 3.15.2 Draft Handling in the Business Object Composition Tree 3.15.3 Draft Lifecycle and Draft Actions 3.16 Overarching Concepts 3.16.1 Dynamic Feature Control 3.16.2 Preliminary Checks of Operations 3.16.3 Internal Visibility of Operations 4 Entity Manipulation Language: Accessing Business Logic 4.1 Data Types 4.1.1 Derived Data Types 4.1.2 Implicit Return Parameters 4.2 EML Operations 4.2.1 READ ENTITIES 4.2.2 MODIFY ENTITIES 4.2.3 GET PERMISSIONS 4.2.4 SET LOCKS 4.2.5 COMMIT ENTITES 4.2.6 ROLLBACK ENTITIES 4.3 Using EML Outside of Behavioral Implementations 4.3.1 Use in the Context of an ABAP Report 4.3.2 Implementation in the Context of a Test Class 5 Behavior Implementation 5.1 Business Object Provider API 5.2 Runtime Behavior of the ABAP RESTful Application Programming Model 5.2.1 Interaction Phase and Transaction Buffer 5.2.2 Save Sequence 5.3 Interfaces for the Interaction Handler and the Save Handler 5.4 Interaction Handler 5.4.1 FOR MODIFY 5.4.2 FOR INSTANCE AUTHORIZATION 5.4.3 FOR GLOBAL AUTHORIZATION 5.4.4 FOR FEATURES 5.4.5 FOR GLOBAL FEATURES 5.4.6 FOR LOCK 5.4.7 FOR READ 5.4.8 FOR READ BY ASSOCIATION 5.4.9 FOR DETERMINE 5.4.10 FOR VALIDATE 5.4.11 FOR NUMBERING 5.4.12 FOR PRECHECK 5.5 Save Handler 5.5.1 FINALIZE 5.5.2 CHECK_BEFORE_SAVE 5.5.3 ADJUST_NUMBERS 5.5.4 SAVE 5.5.5 CLEANUP 5.5.6 CLEANUP_FINALIZE 6 Business Services 6.1 Projection Layer 6.1.1 CDS Projection View 6.1.2 Projection Behavior Definition 6.2 Service Definition 6.3 Service Binding 6.4 Testing Business Services in the SAP Gateway Client 6.5 Testing UI Services with SAP Fiori Elements Preview 7 User Interfaces and SAP Fiori Elements 7.1 Development Tools 7.1.1 SAP Business Application Studio 7.1.2 Visual Studio Code 7.2 SAP Fiori Elements 7.2.1 Floorplans in SAP Fiori Elements 7.2.2 Selected UI Annotations 7.2.3 Defining UI Annotations in a CDS View 7.2.4 Generating Annotations via the Service Modeler Part II Practical Application Development 8 Use Cases 8.1 Applications Types 8.2 Implementation Types 8.3 Selecting the Appropriate Implementation Type 9 Managed Scenario: Developing an Application with SAP Fiori Elements 9.1 Description of the Use Case 9.2 Building the Data Model 9.2.1 Database Tables 9.2.2 CDS Modeling 9.3 Creating Behavior Definitions 9.3.1 Creating Behavior Definitions for Certificate Management 9.3.2 Enabling Draft Handling 9.4 Defining a Business Service 9.4.1 Creating a Service Definition 9.4.2 Creating the Service Binding 9.5 Creating an SAP Fiori Elements User Interface 9.6 Enrichment with a Determination 9.7 Enrichment with a Validation 9.8 Enrichment with an Action 9.9 Generation and Deployment of the Application 10 Managed Scenario with Unmanaged Save: Integrating an Existing Application 10.1 Description of the Use Case 10.2 Building the Data Model 10.2.1 Overview of the Logical Data Model 10.2.2 Database Tables 10.2.3 CDS Modeling 10.3 Creating a Behavior Definition 10.4 Implementing the Create Purchase Order Function 10.4.1 Declaring Late Numbering 10.4.2 Setting Field Properties 10.4.3 Creating the Behavior Pool 10.4.4 Implementing Determinations 10.4.5 Save Sequence: Implementing the Creation via BAPI 10.4.6 Implementing Validations 10.5 Implementing the Delete Purchase Order Function 10.5.1 Save Sequence: Implementing the Deletion via BAPI 10.5.2 Implementing a Validation 10.6 Defining Business Services 10.6.1 Setting up the Projection Layer for the My Purchase Orders Application 10.6.2 Creating a Service Definition 10.6.3 Creating a Service Binding 10.7 Implementing Authorization Checks 10.7.1 Access Controls for Read Access 10.7.2 Access Controls for Write Access 10.8 Creating an SAP Fiori Elements User Interface 10.8.1 Creating a Metadata Extension 10.8.2 Generating and Deploying the Application 11 Unmanaged Scenario: Reusing Existing Source Code 11.1 Description of the Use Case 11.2 Description of the Existing Application 11.2.1 Database Tables 11.2.2 Source Code of the Existing Application 11.3 Extending the Data Model 11.4 Creating a Behavior Definition 11.5 Creating a Behavior Implementation 11.5.1 Implementing the Interaction Phase 11.5.2 Implementing the Save Sequence 11.6 Defining a Business Service 12 Specific Features for the SAP BTP, ABAP Environment 12.1 Technical Fundamentals 12.1.1 ABAP for Cloud Development 12.1.2 Technical Infrastructure Components 12.1.3 Migrating Legacy Code 12.2 Identity and Access Management 12.3 Deploying SAP Fiori Apps and Assigning Authorizations 12.3.1 Creating an IAM App and Business Catalog 12.3.2 Creating an IAM Business Role 12.3.3 Integration in SAP Fiori Launchpad 12.4 Consuming Business Services 13 Outlook 13.1 Build 13.2 Extensibility 13.3 Integration and Reusability A Bibliography A.1 Books A.2 Online Resources B Authors Index Service Pages Legal Notes
Donate to keep this site alive
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.