✒️SAP BTPFIORI / Los controles de una aplicación SAPUI5 Por Jose Baz Suarez
Los controles de una aplicación SAPUI5

Los controles de una aplicación SAPUI5
1. Concepto general
En SAPUI5, los controles son los componentes visuales reutilizables que constituyen la base de la interfaz de usuario.
Cada elemento visible en una aplicación —botones, listas, tablas, formularios, etiquetas, paneles o cuadros de diálogo— es un control.
Los controles permiten construir la capa visual de las aplicaciones Fiori mediante estructuras predefinidas que garantizan consistencia, usabilidad y una apariencia uniforme acorde con las guías de diseño de SAP.
Los controles SAPUI5 están organizados en librerías según su función y tipo de aplicación. Estas librerías incluyen desde elementos simples de interfaz hasta estructuras complejas de navegación y presentación de datos.
2. Estructura y funcionamiento de los controles
Todo control SAPUI5 se caracteriza por tres aspectos fundamentales:
-
Propiedades: determinan el estado y la configuración del control (por ejemplo, text, value, visible, enabled).
-
Eventos: definen las acciones que puede generar el usuario o el sistema (por ejemplo, press, change, select).
-
Métodos: permiten manipular el control desde el código (por ejemplo, setText(), getValue(), bindProperty()).
Los controles pueden declararse directamente en las vistas XML o crearse de forma programática en JavaScript.
Ejemplo en XML:
Ejemplo equivalente en JavaScript:
3. Principales librerías de controles
SAPUI5 agrupa sus controles en distintas librerías, cada una orientada a un propósito específico.
Las más utilizadas son las siguientes:
| sap.m | Controles para aplicaciones móviles y Fiori. Incluye botones, listas, formularios, tablas, paneles, etc. |
| sap.ui.layout | Controles de estructura y disposición (layouts, forms, grids). |
| sap.ui.table | Controles de tablas avanzadas con funciones de orden, filtrado y jerarquía. |
| sap.ui.core | Controles y clases base del framework SAPUI5. Gestiona el renderizado y la estructura MVC. |
| sap.ui.unified | Controles adicionales como calendarios, color pickers y menús contextuales. |
| sap.viz | Controles destinados a la visualización de datos y gráficos. |
La librería sap.m es la más usada en el desarrollo de aplicaciones Fiori debido a su diseño adaptable (responsive) y su compatibilidad con dispositivos móviles.
4. Enlace de datos (Data Binding)
Uno de los aspectos más importantes de SAPUI5 es la posibilidad de vincular los controles a datos mediante el mecanismo de data binding.
Esto permite que los controles se actualicen automáticamente cuando cambian los datos del modelo.
Tipos de binding más utilizados:
-
One-way binding: los datos fluyen del modelo hacia la vista.
-
Two-way binding: los cambios en la vista también actualizan el modelo.
-
One-time binding: los datos se cargan una única vez.
Ejemplo:
El texto mostrado se actualiza dinámicamente con el valor del atributo nombre del objeto cliente dentro del modelo de datos.
5. Controles comunes y su uso
| Button | Ejecuta una acción al ser presionado. | <Button text="Aceptar" press=".onPress"/> |
| Input | Campo de entrada de texto. | <Input value="{/usuario/nombre}"/> |
| Label | Etiqueta para un campo o texto fijo. | <Label text="Nombre:"/> |
| Table | Presenta datos en formato tabular. | <Table items="{/pedidos}">...</Table> |
| List | Muestra listas de elementos u objetos. | <List items="{/clientes}">...</List> |
| Page | Contenedor principal de una vista o pantalla. | <Page title="Inicio">...</Page> |
| Dialog | Ventana modal para confirmaciones o mensajes. | <Dialog title="Confirmar">...</Dialog> |
6. Controles de mensajes
SAPUI5 proporciona controles específicos para mostrar mensajes al usuario:
-
sap.m.MessageToast: muestra mensajes informativos o de éxito breves y no intrusivos.
sap.m.MessageToast.show("Operación realizada con éxito"); -
sap.m.MessageBox: despliega cuadros de diálogo modales con distintos tipos de mensajes (error, advertencia, información, éxito, confirmación).
sap.m.MessageBox.error("Error al guardar los datos"); sap.m.MessageBox.success("Los datos se guardaron correctamente");
Estos controles son esenciales para brindar retroalimentación clara y mejorar la experiencia de usuario.
7. Jerarquía de controles
Los controles SAPUI5 se organizan jerárquicamente.
Cada vista puede contener múltiples controles, los cuales a su vez pueden incluir otros controles dentro de su estructura (por ejemplo, una Toolbar con botones o una Page con una List).
El control base de todos los elementos es sap.ui.core.Control, del cual heredan los demás.
Esta estructura jerárquica permite construir interfaces complejas a partir de componentes reutilizables y modulares.
8. Buenas prácticas de implementación
-
Utilizar preferentemente controles de la librería sap.m para garantizar compatibilidad con Fiori y diseño adaptable.
-
Evitar personalizar excesivamente el estilo mediante CSS; los temas Fiori ya proporcionan un diseño uniforme.
-
Centralizar los textos en archivos i18n.properties para permitir traducciones y mantener la consistencia.
-
Asignar identificadores únicos (id) a los controles para evitar conflictos en la aplicación.
-
Probar el comportamiento de los controles en distintos tamaños de pantalla y navegadores.
9. Conclusión
Los controles SAPUI5 son el fundamento visual y funcional de las aplicaciones Fiori.
Su correcta selección y configuración garantizan una experiencia de usuario coherente, accesible y acorde a los estándares de diseño SAP.
El dominio de los controles, sus propiedades, eventos y capacidades de enlace de datos es esencial para cualquier consultor o desarrollador SAP Fiori.
Preguntas de repaso con respuestas
1. ¿Qué son los controles en SAPUI5 y qué función cumplen dentro de una aplicación Fiori?
Los controles son componentes visuales reutilizables que conforman la interfaz de usuario. Permiten construir pantallas coherentes y funcionales dentro de las aplicaciones Fiori.
2. ¿Qué diferencia existe entre las librerías sap.m, sap.ui.layout y sap.ui.table?
sap.m contiene controles móviles y Fiori estándar; sap.ui.layout define estructuras y distribución de elementos; sap.ui.table incluye controles de tablas avanzadas con opciones de filtrado y ordenamiento.
3. ¿Qué tipos de data binding existen y en qué casos se utiliza cada uno?
-
One-way binding: el modelo actualiza la vista.
-
Two-way binding: los cambios en la vista también actualizan el modelo.
-
One-time binding: los datos se cargan una sola vez sin actualización posterior.
4. ¿Cuál es la diferencia entre sap.m.MessageToast y sap.m.MessageBox?
MessageToast muestra mensajes breves no modales (informativos o de éxito), mientras que MessageBox presenta diálogos modales para errores, advertencias o confirmaciones.
5. ¿Qué beneficios aporta la organización jerárquica de los controles?
Permite estructurar interfaces complejas mediante componentes anidados, facilita la reutilización, el mantenimiento y la modularidad del código.
6. ¿Qué buenas prácticas deben seguirse para mantener la coherencia visual en las aplicaciones SAPUI5?
Usar controles estándar de sap.m, evitar estilos personalizados innecesarios, centralizar textos en i18n.properties, asignar identificadores únicos y probar el comportamiento en distintos dispositivos.
 
 
 
Sobre el autor
Publicación académica de Jose Rodrigo Baz Suarez, en su ámbito de estudios para la Carrera Consultor SAP BTP Fiori.
Jose Rodrigo Baz Suarez
Profesión: Analista de Inventarios y Auditoria - Uruguay - Legajo: WX92M
✒️Autor de: 47 Publicaciones Académicas
🎓Cursando Actualmente: Carrera Consultor SAP MM Nivel Avanzado
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Analista con experiencia en sap, contabilidad, inventarios y costos. manejo de cierres, balances, reportes y mejoras de procesos administrativos.
Certificación Académica de Jose Baz

























