Desarrollo Full Stack con SAP
¡Aquí tienes tu guía para el desarrollo integral de SAP! Desde la base de datos hasta la interfaz de usuario, aprenderás lo que se necesita para crear aplicaciones como desarrollador full stack. Descubre cómo utilizar SAPUI5, OData, CDS, TypeScript y los elementos SAP Fiori en tus aplicaciones. Obtenga instrucciones detalladas paso a paso para trabajar con OData V4 y V2, incluido el desarrollo de aplicaciones utilizando el modelo de programación de aplicaciones ABAP RESTful y la creación de proyectos en la transacción SEGW. Amplíe e implemente sus aplicaciones, ¡y estará listo para empezar!
- Recorra el proceso de desarrollo integral para aplicaciones full stack con CDS, SAPUI5, OData, elementos SAP Fiori y mucho más.
- Implementar aplicaciones basadas en OData V4 y OData V2.
- Amplíe e implemente aplicaciones y configure la carga de archivos, la validación de formularios y las ETags.
Aprenderás sobre:
- Primeros pasos:
¡Reúna sus bloques de construcción! Aprenda sobre SAPUI5 y los elementos clave del desarrollo de SAP Fiori. Descubra los servicios OData, las vistas y autorizaciones CDS, y TypeScript.
- OData V4 y V2:
¡Empiece con buen pie! En OData V4, utilice el modelo de programación de aplicaciones ABAP RESTful, el modelo de programación de aplicaciones SAP Cloud y SAP Fiori para crear una aplicación de principio a fin. Utilice la transacción SEGW y SAPUI5 para el mismo proceso en OData V2.
- Temas avanzados:
¡Mejora tu desarrollo! Implementa los planos de SAP Fiori Elements; configura la carga de archivos, la validación de formularios, el manejo de errores y las ETags; y domina el nuevo modelo de programación flexible. ¡A continuación, descubre cómo ampliar e implementar tus aplicaciones!
Aspectos Destacados:
- SAPUI5
- Elementos SAP Fiori
- OData V4 y OData V2
- Servicios de datos básicos (CDS)
- TypeScript
- Modelo de programación de aplicaciones en la nube de SAP
- Modelo de programación de aplicaciones ABAP RESTful
- Generador de servicios SAP Gateway
- Desarrollo de la interfaz de usuario
- Modelo de programación flexible
- Extensibilidad
- Implementación
Ver Tabla de Contenidos Completa
Full Stack Development with SAP
Your guide to end-to-end SAP development is here! From the database to the user interface, you’ll learn what it takes to create applications as a full stack developer. See how to use SAPUI5, OData, CDS, TypeScript, and SAP Fiori elements in your applications. Get detailed, step-by-step instructions for working with OData V4 and V2, including developing applications using the ABAP RESTful application programming model and creating projects in Transaction SEGW. Extend and deploy your applications—then you’re ready to go!
- Walk through the end-to-end development process for full stack applications with CDS, SAPUI5, OData, SAP Fiori elements, and more
- Implement applications based on OData V4 and OData V2
- Extend and deploy applications and configure file upload, form validation, and ETags
You'll learn about:
- Getting Started:
Gather your building blocks! Learn about SAPUI5 and the key elements of SAP Fiori development. Discover OData services, CDS views and authorizations, and TypeScript.
- OData V4 and V2:
Hit the ground running! In OData V4, use the ABAP RESTful application programming model, SAP Cloud Application Programming Model, and SAP Fiori to create an application from end to end. Use Transaction SEGW and SAPUI5 for the same process in OData V2.
- Advanced Topics:
Level up your development! Implement SAP Fiori elements floorplans; configure file upload, form validation, error handling, and ETags; and master the new flexible programing model. Then see how to extend and deploy your applications!
Key Highlights:
- SAPUI5
- SAP Fiori elements
- OData V4 and OData V2
- Core data services (CDS)
- TypeScript
- SAP Cloud Application Programming Model
- ABAP RESTful application programming model
- SAP Gateway Service Builder
- User interface development
- Flexible programming model
- Extensibility
- Deployment
View Full Table of Contents
- Preface
- Part I: Getting Started
- Part II: OData V4
- Part III: OData V2
- Part IV: Advanced Topics
- PART 1 Getting Started
- 1 Introduction to Full Stack Development
- 1.1 What Is a Full Stack Developer
- 1.2 SAP Programming Models
- 1.2.1 ABAP Programming Model for SAP Fiori
- 1.2.2 ABAP RESTful Application Programming Model
- 1.2.3 SAP Cloud Application Programming Model
- 1.3 HTTP Basics
- 1.4 Summary
- 2 SAPUI5 and SAP Fiori 101
- 2.1 SAPUI5 versus SAP Fiori
- 2.2 SAP Fiori Launchpad
- 2.3 SAP Fiori Design Guidelines
- 2.4 Development Tools
- 2.4.1 SAP Business Application Studio
- 2.4.2 Visual Studio Code
- 2.5 Summary
- 3 OData 101
- 3.1 Introduction to OData
- 3.1.1 OData Fundamentals
- 3.1.2 CRUDQ Methods
- 3.1.3 OData Query Options
- 3.2 Development of OData Services
- 3.2.1 SAP Gateway Service Builder Projects
- 3.2.2 ABAP RESTful Application Programming Model
- 3.3 Testing OData
- 3.3.1 Testing Strategy
- 3.3.2 Testing OData Services from SAP Gateway Client
- 3.3.3 Testing OData Services from the Postman REST Client
- 3.4 Summary
- 4 CDS 101
- 4.1 Developing Core Data Services
- 4.1.1 Simple Core Data Services Views
- 4.1.2 Joins and Projections
- 4.1.3 Calculated Fields
- 4.1.4 Aggregate Functions
- 4.1.5 Cascaded Views
- 4.2 Associations and Navigation Properties
- 4.3 Core Data Services View Extensions
- 4.4 Authorizations
- 4.5 Summary
- 5 TypeScript 101
- 5.1 TypeScript Basics
- 5.1.1 JavaScript
- 5.1.2 TypeScript
- 5.1.3 Purpose of TypeScript
- 5.1.4 How to Use TypeScript
- 5.1.5 Data Types
- 5.2 Next Generation TypeScript
- 5.2.1 Anonymous Functions
- 5.2.2 Arrow Functions
- 5.2.3 Rest Parameters
- 5.2.4 Function Overloading
- 5.2.5 Static Members
- 5.2.6 Intersection and Union Types
- 5.2.7 Variable Declarations
- 5.2.8 Inheritance
- 5.2.9 Abstract Classes
- 5.3 Classes and Interfaces
- 5.3.1 Classes
- 5.3.2 Interfaces
- 5.4 Generics
- 5.4.1 Generics Example
- 5.4.2 Methods of Generic Types
- 5.4.3 Generic Contraints
- 5.4.4 Generic Interfaces
- 5.4.5 Generic Classes
- 5.5 Module Development
- 5.5.1 What Are Modules?
- 5.5.2 Why Use Modules?
- 5.5.3 Export Module
- 5.5.4 Import Module
- 5.6 Summary
- PART II OData V4
- 6 Developing OData V4 Services with the ABAP RESTful Application Programming Model (Managed Scenario)
- 6.1 Business Objects Development (CRUDQ)
- 6.1.1 Data Model
- 6.1.2 Core Data Services: Behavior Definition
- 6.1.3 Projection Views
- 6.1.4 Service Definition and Service Binding
- 6.1.5 Draft Handling
- 6.2 Actions
- 6.3 Advanced Features
- 6.3.1 Value Help
- 6.3.2 Validations
- 6.3.3 Determinations
- 6.3.4 Feature Control
- 6.4 Authorization Checks
- 6.4.1 Core Data Services: Access Controls
- 6.4.2 Authorization Implementation Method
- 6.5 Composite Business Objects
- 6.6 Summary
- 7 Developing OData V4 Services with SAP Cloud Application Programming Model
- 7.1 Domain Modeling
- 7.1.1 Naming Conventions
- 7.1.2 Entities, Types, and Keys
- 7.1.3 Compositions and Associations
- 7.1.4 Localized Data
- 7.2 Service Provisioning
- 7.2.1 Input Validation
- 7.2.2 OData Annotations
- 7.2.3 Custom Logic
- 7.3 Setup of an SAP Cloud Application Programming Model Application
- 7.3.1 Installing the Necessary Software
- 7.3.2 Creating an SAP Cloud Application Programming Model Project
- 7.3.3 Creating the Data Model
- 7.3.4 Creating the Service Definition
- 7.3.5 Providing Data
- 7.3.6 Viewing Data
- 7.4 Authorization Checks
- 7.4.1 @requires
- 7.4.2 @restrict
- 7.5 Summary
- 8 User Interface Development with OData V4
- 8.1 Data Binding
- 8.1.1 Creating an OData Model
- 8.1.2 Data Binding Modes
- 8.1.3 Syntax for Data Binding
- 8.1.4 Data Binding Types
- 8.1.5 Changes Compared to the OData V2 Model
- 8.2 Display Data in a Table Control
- 8.2.1 Creating a Project
- 8.2.2 Implementing a Table Manually
- 8.3 Navigation between Views
- 8.3.1 Theory
- 8.3.2 Hardcoded Routing
- 8.3.3 Routing with Optional and Mandatory Parameters
- 8.3.4 Routing with Query Parameters
- 8.4 Display Data in Detail (Simple Form)
- 8.4.1 Implementing the Navigation with a Real-World Example
- 8.4.2 Implementing a Detail View Manually
- 8.5 Fragments (Create/Update)
- 8.5.1 Prepare the View
- 8.5.2 Instantiate Fragments Directly in Views
- 8.5.3 Instantiate Fragments Programmatically
- 8.5.4 Manually Implement Create, Read, and Update
- 8.6 Clone the SAPUI5 Application from a Git Repository
- 8.7 Summary
- PART III OData V2
- 9 Development Projects with Transaction SEGW and OData V2
- 9.1 Service Modeling in Transaction SEGW
- 9.1.1 Create an SAP Gateway Service Builder Project
- 9.1.2 Define the Data Model
- 9.1.3 OData Registration and Testing
- 9.2 Create, Read, Update, Delete, and Query
- 9.2.1 Read/Query Implementation
- 9.2.2 Create Implementation
- 9.2.3 Update Implementation
- 9.2.4 Delete Implementation
- 9.2.5 Association Implementation
- 9.3 SADL-Based OData Provisioning
- 9.3.1 Mapping the Service Implementation to a Data Source via SADL
- 9.3.2 Expose a CDS View (Entity) via SADL
- 9.4 Summary
- 10 User Interface Development with OData V2
- 10.1 Data Binding
- 10.1.1 Creating an OData Model
- 10.1.2 Data Binding Modes
- 10.1.3 Syntax for Data Binding
- 10.1.4 Data Binding Types
- 10.2 Display Data in a Table Control
- 10.2.1 Creating a Project
- 10.2.2 Implementing a Table Manually
- 10.2.3 Implementing a Smart Table
- 10.3 Navigation between Views
- 10.3.1 Theory
- 10.3.2 Hardcoded Routing
- 10.3.3 Routing with Mandatory Parameters
- 10.3.4 Routing with Query Parameters
- 10.4 Display Data in Detail (Simple Form)
- 10.4.1 Implementing the Navigation with a Real-World Example
- 10.4.2 Implementing a Detail View Manually
- 10.4.3 Implementing a Detail View with a Smart Form
- 10.5 Fragments (Create/Update)
- 10.5.1 Prepare the View
- 10.5.2 Instantiate Fragments Directly in Views
- 10.5.3 Instantiate Fragments Programmatically
- 10.5.4 Manually Implement Create, Read, and Update
- 10.6 Deployment to the SAPUI5 ABAP Repository
- 10.7 Clone the SAPUI5 Application from a Git Repository
- 10.8 Summary
- PART IV Advanced Topics
- 11 User Interface Development with SAP Fiori Elements
- 11.1 List Report
- 11.1.1 Use Cases
- 11.1.2 Annotations for the List Report
- 11.1.3 Implementing a List Report
- 11.2 Object Page
- 11.2.1 Use Cases
- 11.2.2 Annotations for the Object Page
- 11.2.3 Implementing an Object Page
- 11.3 Overview Page
- 11.3.1 Cards
- 11.3.2 Use Cases
- 11.3.3 Best Practices for Page Design
- 11.3.4 Annotations for the Overview Page
- 11.3.5 Implementing an Overview Page
- 11.4 Generic Annotations
- 11.4.1 UI.HeaderInfo
- 11.4.2 UI.selectionField
- 11.4.3 UI.lineItem
- 11.4.4 UI.hidden
- 11.5 Summary
- 12 File Upload
- 12.1 Media Entities
- 12.2 OData V2
- 12.2.1 On-Premise Groundwork
- 12.2.2 OData Service
- 12.2.3 File Upload
- 12.2.4 File Download
- 12.3 OData V4
- 12.3.1 Enhance the Database Tables
- 12.3.2 Make the Fields Available to the ABAP RESTful Application Programming Model
- 12.3.3 Project the Fields
- 12.3.4 Preview the Application
- 12.4 Summary
- 13 Form Validation and Error Handling
- 13.1 Form Validation
- 13.1.1 Validation Types
- 13.1.2 Recommendations in SAP Fiori Design Guidelines
- 13.1.3 Implementation
- 13.2 Error Handling
- 13.2.1 Recommendations in SAP Fiori Design Guidelines
- 13.2.2 Server-Side OData Implementation
- 13.2.3 SAP Fiori Implementation
- 13.3 Summary
- 14 Entity Tags and Soft State
- 14.1 Customizing for Soft State Activation
- 14.1.1 Redefine the DEFINE Method
- 14.1.2 Create an Instance Attribute
- 14.1.3 Redefine OPERATION_START
- 14.1.4 Redefine OPERATION_END
- 14.1.5 Set a Session Timeout
- 14.2 Implementation
- 14.2.1 ETags in the ABAP RESTful Application Programming Model
- 14.2.2 ETags in Transaction SEGW
- 14.3 Summary
- 15 Flexible Programming Model
- 15.1 Introduction
- 15.2 Programming Model Explorer
- 15.2.1 Extension Points
- 15.2.2 Building Blocks
- 15.2.3 Controller Extensions
- 15.2.4 SAP Fiori Elements: Advanced Features
- 15.3 Building Blocks
- 15.3.1 Field
- 15.3.2 Form
- 15.3.3 FormElement
- 15.3.4 Table
- 15.3.5 FilterBar
- 15.3.6 FilterField
- 15.3.7 MicroChart
- 15.3.8 Chart
- 15.3.9 FlexibleColumnLayoutActions
- 15.3.10 Share
- 15.3.11 Paginator
- 15.4 Implementation of the Flexible Programming Model
- 15.4.1 Flexible Programming Model in Freestyle Applications
- 15.4.2 New Flexible Programming Model Applications
- 15.4.3 Page Map
- 15.4.4 Controller Extensions
- 15.5 Summary
- 16 Extensibility
- 16.1 Adaptation Projects
- 16.1.1 Creating an Adaptation Project
- 16.1.2 Building Extensions in the Graphical Editor
- 16.1.3 Deploying an Adaptation Project
- 16.2 Key User Extensibility
- 16.3 Summary
- 17 Deployment
- 17.1 Continuous Integration, Continuous Delivery, and Continuous Deployment
- 17.1.1 CTS and CTS+
- 17.1.2 SAP Continuous Integration and Delivery Service
- 17.2 Deployment to SAP S/4HANA
- 17.3 Deployment to SAP Business Technology Platform
- 17.4 Summary
- 17.5 Conclusion
- The Authors
- Index