Curso SAP Fiori Flexible Programming Model – Fundamentos Básicos
Instructor: Jorge Briceño
Descripción del curso
Este curso de fundamentos está diseñado para despejar la confusión común entre SAP Fiori, SAPUI5, Fiori Elements y el Flexible Programming Model (FPM). Establecerás una base técnica sólida en el stack moderno compuesto por Node.js, Git, JavaScript y TypeScript, herramientas esenciales para personalizar con éxito cualquier aplicación Fiori. Dado que el FPM opera exclusivamente sobre OData V4, profundizarás en el manejo profesional de clases como ODataModel y ODataListBinding para ejecutar operaciones CRUD avanzadas que superan las capacidades del estándar.
El núcleo del aprendizaje reside en entender que, si bien las anotaciones CDS son eficientes, suelen ser rígidas; por ello, el Flexible Programming Model surge como la solución definitiva para inyectar componentes personalizados de SAPUI5 donde el estándar no llega. Para consolidar este conocimiento, construirás una misma aplicación bajo cuatro enfoques distintos: RAP, CAP, anotaciones XML y FPM, logrando una visión arquitectónica total sobre cómo SAP interpreta y renderiza los servicios de datos.
Qué aprenderás
- Diferenciación Arquitectónica: Capacidad para distinguir y combinar las mejores arquitecturas de UI con el fin de reducir tiempos de desarrollo manteniendo la flexibilidad.
- Protocolo OData V4: Dominio de la última versión del protocolo para optimizar la comunicación entre el backend y la interfaz.
- Stack Tecnológico Moderno: Sustitución del JavaScript convencional por TypeScript y dominio del ecosistema de Node.js y Git.
- Desarrollo Consistente: Creación de aplicaciones utilizando tanto el modelo Cloud (CAP) como el modelo ABAP (RAP) mediante vocabularios y anotaciones.
- Personalización Avanzada: Técnicas para superar las limitaciones de las anotaciones rígidas mediante la inyección de controles personalizados de SAPUI5.
Requisitos
- Conocimientos de Desarrollo: Orientado a profesionales que ya realizan desarrollos en SAP Fiori Elements utilizando los modelos CAP y/o RAP.
- Interés en Modernización: Desarrolladores web que busquen especializarse en el ecosistema técnico de SAP.
- Visión Arquitectónica: Arquitectos de software que necesiten comprender la estructura de las soluciones modernas en SAP BTP.
Contenido del curso
1. Interfaz de Usuario (UI5)
- 1.1. SAP Fiori
- 1.2. OpenUI5 vs SAPUI5
- 1.3. SAP Fiori Elements
- 1.4. Flexible Programming Model
- 1.5. Documentación
- 1.6. Test
2. OData
- 2.1. Protocolo OData
- 2.2. OData V2 vs OData V4
- 2.3. OData V2 Model
- 2.4. OData V4 Model
- 2.5. OData V2 Model vs OData V4 Model
- 2.6. Metadata
- 2.7. Opciones de consulta
- 2.8. Documentación
- 2.9. Test
3. Anotaciones
- 3.1. Vocabularios y anotaciones
- 3.2. Anotaciones estándar de SAP
- 3.3. Anotaciones estándar de OASIS OData TC
- 3.4. Documentación
- 3.5. Test
4. SAP Business Technology Platform
- 4.1. SAP Discovery Center
- 4.2. Creación de la cuenta de prueba
- 4.3. Cuenta Global y Subcuentas
- 4.4. Documentación
- 4.5. Test
5. Entornos de desarrollo
- 5.1. SAP Business Application Studio
- 5.2. SAP Build Code
- 5.3. Visual Studio Code
- 5.4. Eclipse
- 5.5. Documentación
- 5.6. Test
6. Introducción a Git
- 6.1. ¿Qué es un repositorio?
- 6.2. Sistema de Control de Versiones
- 6.3. ¿Qué es Git y GitHub?
- 6.4. ¿Cuál es la diferencia entre Git y GitHub?
- 6.5. Ventajas y Desventajas de Git y GitHub
- 6.6. Documentación
- 6.7. Test
7. Git y GitHub
- 7.1. Crear, agregar y guardar cambios en un repositorio
- 7.2. Crear, listar y cambiar entre ramas
- 7.3. Fusionar ramas
- 7.4. ¿Cómo fusionar ramas?
- 7.5. Repositorios públicos y privados en GitHub
- 7.6. Agregar, empujar y clonar un repositorio remoto
- 7.7. Resolución de conflictos
- 7.8. Documentación
- 7.9. Laboratorio
- 7.10. Test
8. Aspectos básicos de Node
- 8.1. Crear, agregar y guardar cambios en un repositorio
- 8.2. Crear, listar y cambiar entre ramas
- 8.3. Fusionar ramas
- 8.4. ¿Cómo fusionar ramas?
- 8.5. Repositorios públicos y privados en GitHub
- 8.6. Agregar, empujar y clonar un repositorio remoto
- 8.7. Resolución de conflictos
- 8.8. Laboratorio
- 8.9. Test
9. Aspectos básicos de JavaScript
- 9.1. ¿Qué es JavaScript y ECMAScript 6?
- 9.2. Tipos y variables
- 9.3. Conversión de tipos de datos
- 9.4. Operadores
- 9.5. Control de flujo y manejo de errores
- 9.6. Bucles e interacción
- 9.7. Funciones
- 9.8. Documentación
- 9.9. Laboratorio
- 9.10. Test
10. Aspectos avanzados de JavaScript
- 10.1. Expresiones regulares
- 10.2. Arreglos
- 10.3. Promesas
- 10.4. Clases
- 10.5. Documentación
- 10.6. Laboratorio
- 10.7. Test
11. Aspectos básicos de TypeScript
- 11.1. ¿Qué es TypeScript y por qué usar TypeScript?
- 11.2. Empezando con TypeScript
- 11.3. Tipos primitivos - boolean, number, string
- 11.4. Any, Arrays, Tuplas, Enum
- 11.5. Object Types
- 11.6. Functions
- 11.7. Asynchronous Functions and Promises
- 11.8. Null and Undefined
- 11.9. Union Type
- 11.10. Type Aliases and Interfaces
- 11.11. Type Assertions
- 11.12. Documentación
- 11.13. Laboratorio
- 11.14. Test
12. Aspectos avanzados de TypeScript
- 12.1. Class members
- 12.2. Methods
- 12.3. Member Visibility
- 12.4. Getters / Setters
- 12.5. Member Statics
- 12.6. Extended Classes y Extending Types
- 12.7. Intersection Types
- 12.8. Interface Extension vs. Intersection
- 12.9. Class Heritage
- 12.10. Documentación
- 12.11. Laboratorio
- 12.12. Test
13. SAP Fiori Tools
- 13.1. Application Generator
- 13.2. Guided Development
- 13.3. Application Modeler
- 13.4. Service Modeler
- 13.5. XML Annotation Language Server
- 13.6. Documentación
- 13.7. Test
14. Recursos
- 14.1. Icon Explorer
- 14.2. UI5 Inspector
- 14.3. Live Editor
- 14.4. Servicio CAP
- 14.5. Destinos
- 14.6. Documentación
- 14.7. Test
15. SAPUI5 - Flexible Column Layout
- 15.1. Creando un proyecto SAPUI5
- 15.2. BaseController
- 15.3. Dynamic Page
- 15.4. Table y Table - Settings
- 15.5. Filter Bar - View, Controller y Clear
- 15.6. Table and Filter - Count
- 15.7. Flexible Column Layout
- 15.8. Documentación
- 15.9. Laboratorio
- 15.10. Test
16. SAPUI5 - Object Page Layout
- 16.1. Object Page Layout
- 16.2. Routing and Navigation (y Settings)
- 16.3. Close, Maximize and Minimize
- 16.4. Fragments with dynamic calls (Display, Change)
- 16.5. Copying the Binding Context
- 16.6. Installation of the generic validator
- 16.7. Validating the form
- 16.8. Documentación
- 16.9. Laboratorio
- 16.10. Test
17. Clases estándares OData V4
- 17.1. Class sap.ui.model.odata.v4.ODataModel
- 17.2. Class sap.ui.model.odata.v4.ODataListBinding
- 17.3. Class sap.ui.model.odata.v4.Context
- 17.4. Documentación
- 17.5. Test
18. Operaciones CRUD en OData V4
- 18.1. Encapsulación de las operaciones
- 18.2. Mensaje de confirmación
- 18.3. Create
- 18.4. Update
- 18.5. Promesas
- 18.6. Delete
- 18.7. Settings
- 18.8. Documentación
- 18.9. Laboratorio
- 18.10. Test
19. SAP Cloud Application Programming Model (CAP)
- 19.1. Creando un proyecto CAP
- 19.2. Explorando la estructura del proyecto
- 19.3. Creando el modelo de negocio
- 19.4. Exponiendo el servicio
- 19.5. Documentación
- 19.6. Laboratorio
- 19.7. Test
20. CAP CDS Annotations
- 20.1. Creando un List Report Page
- 20.2. Explorando la estructura del proyecto
- 20.3. Anotando el servicio con CAP CDS Annotations
- 20.4. Documentación
- 20.5. Laboratorio
- 20.6. Test
21. XML Annotations
- 21.1. Creando un List Report Page
- 21.2. Incorporando el metadata.xml y el archivo annotation.xml
- 21.3. Anotando el servicio con XML Annotations
- 21.4. Documentación
- 21.5. Laboratorio
- 21.6. Test
22. Flexible Programming Model
- 22.1. Creando un Custom Page
- 22.2. Explorando la estructura del proyecto
- 22.3. Bloques de Construcción: Table y Filter Bar
- 22.4. Application Modeler - Page Editor and Page Map
- 22.5. Documentación
- 22.6. Laboratorio
- 22.7. Test
23. ABAP RESTful Application Programming Model (RAP)
- 23.1. Paquete de desarrollo
- 23.2. Tabla Persistente
- 23.3. Tabla Draft
- 23.4. Vista Raíz
- 23.5. Proyección de la entidad
- 23.6. Documentación
- 23.7. Laboratorio
- 23.8. Test
24. RAP CDS Annotations
- 24.1. Metadata Extension
- 24.2. Behavior Managed
- 24.3. Behavior Projection
- 24.4. Behavior Class Definition and Projection
- 24.5. Service Definition and Service Binding
- 24.6. Data Generator Class
- 24.7. Ajustes de la Interfaz Gráfica
- 24.8. Documentación
- 24.9. Laboratorio
- 24.10. Test
Tu instructor
Jorge Briceño
SAP Fiori | SAPUI5 | SAP CAP | Fiori Elements
Ingeniero en Informática y Licenciado en Educación, especializado en desarrollo de aplicaciones en el ecosistema SAP. Trabaja con tecnologías como SAPUI5, SAP Fiori Elements, CAP y ABAP RESTful, así como en la administración de SAP Fiori en entornos Cloud y On-Premise, formando profesionales en la creación de aplicaciones empresariales modernas.
Preguntas frecuentes
Una vez completada la inscripción, contarás con todo el contenido mediante vídeos, laboratorios, documentación y tests en el aula virtual para siempre, y podrás avanzar a tu propio ritmo.
Al inicio de cada unidad tendrás foros disponibles para dejar las dudas que se te presenten durante la formación. Un docente dará respuesta a tus consultas y te brindará el soporte necesario.
Al finalizar el curso deberás presentar un test que deberás aprobar con más del 60% para obtener el certificado. Tendrás dos intentos habilitados para presentarlo.
