✒️SAP BTPFIORI / Las validaciones y los mensajes Por Jose Baz Suarez

Selector Alummnos / Empresas

CVOSOFT UNITED STATES OF AMERICA | 17 años de ingeniería dedicados a formación profesional de Consultores SAP | +info

SAP BTPFIORI Las validaciones y los mensajes

SAP BTPFIORI Las validaciones y los mensajesLas validaciones y los mensajes
1. Introducción

En toda aplicación SAPUI5, es esencial validar los datos ingresados por el usuario antes de enviarlos al backend y mostrar mensajes claros y uniformes.
Las validaciones aseguran la integridad de los datos, mientras que los mensajes comunican el estado de la aplicación (errores, advertencias, confirmaciones o información).

SAPUI5 incluye un conjunto de componentes estándar para manejar ambas funcionalidades, garantizando una experiencia de usuario consistente con las directrices SAP Fiori.


2. Tipos de validaciones

Las validaciones en SAPUI5 pueden realizarse en dos niveles:

🔹 Validaciones en frontend (cliente)
  • Se ejecutan directamente en la interfaz SAPUI5.

  • Permiten detectar errores antes de enviar datos al backend.

  • Mejoran el rendimiento y la experiencia del usuario.

Ejemplos comunes:

  • Campos obligatorios no completados.

  • Formatos de datos incorrectos (fecha, correo, número).

  • Rango de valores no permitido.

🔹 Validaciones en backend (servidor)
  • Se ejecutan en el sistema SAP al procesar los datos (servicio OData o lógica ABAP).

  • Verifican reglas de negocio y consistencia de la información antes de grabar los datos.

💡 Recomendación: combinar ambos tipos de validación.
Primero validar en frontend para evitar llamadas innecesarias, y luego validar en backend por integridad.


3. Validaciones en SAPUI5

SAPUI5 proporciona varios mecanismos para realizar validaciones en la capa de presentación:

a) Propiedad “required” en controles

Indica que un campo es obligatorio.

<Input id="inputName" required="true" value="{/nombre}" />
b) Validación manual en el controlador

Permite controlar reglas específicas mediante eventos como onChange o onSave.

onSave: function () { var sName = this.byId("inputName").getValue(); if (!sName) { MessageBox.error("El campo Nombre es obligatorio."); return; } // continuar con la lógica de guardado }
c) Uso de tipos de datos y constraints

Los tipos de datos de SAPUI5 permiten validar formato y longitud automáticamente.

<Input value="{ path: '/email', type: 'sap.ui.model.type.String', constraints: { minLength: 5, maxLength: 50 } }" />

4. Validaciones en backend (ABAP / OData)

En la clase DPC_EXT del servicio OData, pueden implementarse validaciones adicionales antes de procesar los datos.

Ejemplo:

METHOD salesorder_create_entity. IF is_data-order_total < 0. RAISE EXCEPTION TYPE /iwbep/cx_mgw_busi_exception EXPORTING textid = /iwbep/cx_mgw_busi_exception=>business_error message = 'El total del pedido no puede ser negativo.'. ENDIF. ENDMETHOD.

💡 Estas validaciones aseguran que los datos cumplan con las reglas de negocio incluso si la validación del frontend falla.


5. Manejo de mensajes en SAPUI5

Los mensajes son esenciales para informar al usuario sobre el resultado de una acción.
SAPUI5 ofrece varios tipos de mensajes a través de las clases sap.m.MessageToast, sap.m.MessageBox y el MessageManager.

a) sap.m.MessageToast

Se utiliza para mensajes informativos o de confirmación rápida.

MessageToast.show("Datos guardados correctamente");
  • Aparece por unos segundos y desaparece automáticamente.

  • No bloquea la interfaz.


b) sap.m.MessageBox

Se utiliza para mensajes de interacción que requieren confirmación o muestran errores importantes.

MessageBox.error("Error al guardar los datos."); MessageBox.warning("¿Desea eliminar este registro?"); MessageBox.success("Operación completada con éxito.");

📘 Tipos de mensaje disponibles:

  • MessageBox.error()

  • MessageBox.warning()

  • MessageBox.information()

  • MessageBox.success()

  • MessageBox.confirm()


c) sap.ui.core.message.MessageManager

Es el mecanismo más completo para gestionar y mostrar mensajes asociados a campos específicos en formularios.
Se integra con el MessagePopover de Fiori para mostrar los mensajes de manera centralizada.

Configuración básica:

var oMessageManager = sap.ui.getCore().getMessageManager(); this.getView().setModel(oMessageManager.getMessageModel(), "message");

💡 Permite mostrar múltiples mensajes con severidades diferentes (Error, Warning, Information, Success) en una lista emergente o panel lateral.


6. Tipos de mensajes
Tipo Clase utilizada Propósito
Éxito MessageToast / MessageBox.success Confirma una acción correcta.
Error MessageBox.error Notifica una falla crítica.
Advertencia MessageBox.warning Advierte antes de ejecutar una acción.
Información MessageBox.information Comunica datos generales.

7. Integración de validaciones y mensajes

Una validación bien diseñada debe estar acompañada de un mensaje claro.
Por ejemplo:

if (sMonto <= 0) { MessageBox.warning("El monto debe ser mayor que cero."); return; }

Esto garantiza una experiencia de usuario fluida y profesional.


8. Buenas prácticas
  • Validar primero en el frontend, luego en el backend.

  • Mostrar mensajes claros, concisos y localizados (uso de i18n).

  • Evitar mostrar mensajes técnicos del sistema al usuario final.

  • Usar MessageToast solo para mensajes informativos rápidos.

  • Centralizar los mensajes en el MessageManager para aplicaciones complejas.

  • Definir severidades coherentes: Error → bloqueante, Warning → preventiva.


9. Conclusión

Las validaciones y los mensajes son componentes fundamentales en la calidad de una aplicación SAPUI5.
Permiten garantizar la integridad de los datos, mejorar la experiencia del usuario y mantener la coherencia con el estándar SAP Fiori UX.
Un buen manejo de ambos asegura aplicaciones más seguras, consistentes y fáciles de usar.


Preguntas de repaso

  1. ¿En qué clase se implementan validaciones del lado del backend en un servicio OData?
    → En la clase DPC_EXT.

  2. ¿Qué componente se usa para mostrar mensajes informativos breves en pantalla?
    → sap.m.MessageToast.

  3. ¿Qué clase se utiliza para mostrar mensajes de error o advertencia que requieren interacción del usuario?
    → sap.m.MessageBox.

  4. ¿Cuál es el mecanismo de SAPUI5 que gestiona mensajes centralizados asociados a campos del formulario?
    → sap.ui.core.message.MessageManager.

  5. ¿Qué validación se recomienda realizar primero, la del frontend o la del backend?
    → La del frontend, para evitar llamadas innecesarias al servidor.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Jose Rodrigo Baz Suarez, en su ámbito de estudios para la Carrera Consultor SAP BTP Fiori.

SAP SemiSenior

Jose Rodrigo Baz Suarez

Profesión: Analista de Inventarios y Auditoria - Uruguay - Legajo: WX92M

✒️Autor de: 47 Publicaciones Académicas

🎓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

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las validaciones y los mensajes" de la mano de nuestros alumnos.

SAP SemiSenior

Las validaciones y los mensajes 1. Introducción En toda aplicación SAPUI5, es esencial validar los datos ingresados por el usuario antes de enviarlos al backend y mostrar mensajes claros y uniformes. Las validaciones aseguran la integridad de los datos, mientras que los mensajes comunican el estado de la aplicación (errores, advertencias, confirmaciones o información). SAPUI5 incluye un conjunto de componentes estándar para manejar ambas funcionalidades, garantizando una experiencia de usuario consistente con las directrices SAP Fiori. 2. Tipos de validaciones Las validaciones en SAPUI5 pueden realizarse en dos niveles: 🔹 Validaciones en frontend (cliente) Se ejecutan directamente en la interfaz...

Acceder a esta publicación

Creado y Compartido por: Jose Rodrigo Baz Suarez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

La visualizacion de campos obligatorios en la UI Concepto Descripción Visualización de campos obligatorios Mostrar en la interfaz qué campos son requeridos ¿Cómo se hace? Asteriscos, bordes rojos, mensajes, anotaciones UI ¿Dónde se define? En la UI (XML/JS), en las anotaciones o en CDS views Funcion Factory: es una función que crea y devuelve objetos o componentes, en lugar de usar un new directo o clases. Es un patrón muy común en JavaScript y SAPUI5, especialmente cuando: Quieres...

Acceder a esta publicación

Creado y Compartido por: Claudia Bibiana Monsalve Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

1. LA VISUALIZACION DE CAMPOS OBLIGATORIOS EN LA UI Se debe agregar el atributo required="true", PERO ESTO NO ES SUFICIENTE, FALTA INCLUIR LA LOGICA. Tambien teenemos la propiedad valueState (marco con colores, de verde a rojo dependiendo si es valido el valor ingresado) validacion para el control DatePicker: Podemos usar el metodo Event.getSource().getValue() exite el metodo oEvent.getSource().isValidValue() QUE VALIDA SI ES UNA FECHA VALIDA 2. LA FUNCION FACTORY En esta tecnica, se proporciona UNA FUNCION DE FABRICA AL BINDING DE AGREGACION. ESTA FUNCION DEVOLVERA LOS CONTROLES SAPUI5. 3. LOS MENSAJES podemos usar el tipo de mensaje sap.m.MessageBox, que interrumpe al usuario hasta que confirme. EN EL OBJECT.CONTROLLER.JS...

Acceder a esta publicación

Creado y Compartido por: Roberto Hernan Santucho

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


El contexto es un puntero a un objeto en los datos del modelo, un enlace relativo necesita un contexto como punto de referencia para resolver su camino, sin un contexto un enlace relativo no se resuelve y no apunta a los datos del modelo. La palabra clave THIS de JavaScript es similar a lo que podríamos encontrar en otros lenguajes basados en clases como Java o C# Java Script en realidad es un lenguaje basado en prototipos y no tiene un concepto de clase, apunta a un objeto que está llamando a la función, este objeto a veces se llama contexto, sin embargo, en JavaScript las funciones internas de la referencia this pueden vincularse a diferentes objetos dependiendo de dónde se llame a la función.

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Validaciones y mensajes campos obligatorios required="true" valueState ChangedDAteState ChangedNoteState Event.getSource().getValue() función factory fábrica controles dinámicos sap.m.list mensajes de confirmación enabled alcance en función contexto en objetos this bind() MessageBox javascript basado en prototipos no tiene el concepto de clase terminal new terminal git clone url npm install crear configuracion para ejecutarlo

Acceder a esta publicación

Creado y Compartido por: Enrique Gomez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Las validaciones de los campos obligatorios Para colocar un campo como requerido agregamos el atributo required con el valor de true en el tag label, que esta asociado al campo de entrada Tambien podemos agregar la propiedad valueState que permite ver si el estado del campo es visual Es posible ampliar el modelo con propiedades o elementos que no existen en el servicio OData El metodo oEvent.getSource().IsValidValue() que valida si se ingresa una fecha valida La función Factoy: podemos diseñar la función de fabrica para devolver controles dinámicos basados en datos Los Mensajes Sap.m.MessageBox : interrumpe al usuario en su acción y el usuario debe explícitamente reconocer el mensaje de error/información/advertencia...

Acceder a esta publicación

Creado y Compartido por: Detriana Barrios / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

La visualización de campos obligatorios en la UI Es muy común necesitar campos obligatorios en la UI. Ya que se debe validar si el usuario ingreso los datos de forma correcta y completa. Como distingir los campos obligatorios en SAP, al lado de sus respectivas etiquetas aparece un * en color rojo. A nivel de HTML en el Tag Label se debe de colocar required="true" Se utiliza el método change para validar el campo cada vez que cambie de valor. Existe el método oEvent.getSource().isValidValue() que valida si se ingresa una fecha valida.

Acceder a esta publicación

Creado y Compartido por: Miguel Enrique Tivamosa Rodriguez

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!