SAP S/4 hana FES

Hola, estoy trabajando en una aplicación FIORI en FES. Necesito aplicar un theme específico, configuré el manifest pero aun asi no lo toma. Alguien tiene alguna ayuda sobre esto. Aqui les dejo un parte de mi configuración (manifest)

"sap.ui5": {
        "flexEnabled": true,
        "dependencies": {
            "minUI5Version": "1.128.0",
            "libs": {
                "sap.m": {},
                "sap.ui.core": {},
                "sap.f": {},
                "sap.suite.ui.generic.template": {},
                "sap.ui.comp": {},
                "sap.ui.generic.app": {},
                "sap.ui.table": {},
                "sap.ushell": {}
            }
        },
        "theme": "custom_quartzlight_3",
        "contentDensities": {
            "compact": true,
            "cozy": true
        },

Importante : La siguiente respuesta es generada por nuestro Robot de la comunidad de Consultoria-SAP.com denominado “CSAPBOT” usando tecnología de inteligencia artificial. Por lo tanto, puede haber datos incorrectos. No garantizamos que la información sea 100% correcta, solo consultores SAP profesionales podrían verificar la información.

Si deseas aportar tus ideas para mejorar nuestros sistemas, te esperamos en este debate de la comunidad.


:art: SAP FIORI FES – ¿Por qué no se aplica mi tema personalizado desde el manifest.json?

Hola, gracias por compartir tu fragmento del manifest.json, está muy bien estructurado. Estás tratando de aplicar un tema personalizado (custom_quartzlight_3) en una aplicación Fiori corriendo sobre FES (Frontend Server), y aunque lo defines dentro del manifest, el tema no se está aplicando.

Este es un problema común cuando se trabaja en entornos FES (Launchpad) debido a cómo SAP carga los temas desde el Shell (ushell) y prioriza configuraciones globales sobre el manifest.


:pushpin: Contexto: ¿Cómo maneja SAP Fiori los temas?

  • SAP no respeta el theme: definido en el manifest.json si la aplicación corre dentro del Launchpad (FLP).
  • El tema se determina por el Launchpad Shell y se aplica a toda la sesión.
  • Si bien manifest.json tiene el atributo "theme", solo se usa cuando ejecutas la app standalone, no cuando estás dentro de Fiori Launchpad.

:white_check_mark: ¿Qué puedes hacer?

:small_blue_diamond: Opción 1: Forzar el tema solo en modo standalone (fuera del Launchpad)

Si ejecutas tu app fuera del FLP, el manifest.json funcionará y el tema se aplicará correctamente.

:link: Ejemplo de URL:

https://<servidor>/sap/bc/ui5_ui5/sap/ZZ_MYAPP/index.html?sap-theme=custom_quartzlight_3

:warning: El manifest.json sí aplica temas en apps standalone, pero no en apps lanzadas desde Fiori Launchpad (donde se ignora).


:small_blue_diamond: Opción 2: Aplicar el tema desde el FLP (configuración global)

Para que tu app tenga un tema específico dentro del Launchpad, tienes estas alternativas:

:compass: A) Establecer el tema a nivel de usuario

  1. En Fiori Launchpad, haz clic sobre el avatar del usuario (esquina superior derecha).
  2. Ve a Configuración > Apariencia (Appearance).
  3. Selecciona el tema custom_quartzlight_3 (debe estar cargado en tu FES).
  4. Guarda y actualiza.

:repeat: Este cambio aplica para todo el FLP del usuario, no solo tu app.


:hammer_and_wrench: B) Personalizar el FLP para que use un tema por aplicación (requiere desarrollo)

Si necesitas que solo tu app tenga un tema personalizado en el Launchpad, puedes hacerlo mediante una de estas formas:

  1. Crear una nueva “catálogo + grupo” y en el Target Mapping del Launchpad Designer, agregar el parámetro:

    sap-theme=custom_quartzlight_3
    
  2. O bien pasar el tema por parámetro en la URL del Inbound Target en la app (en Launchpad Designer > App Descriptors):

    Additional Information: SAPUI5.Component=mi.componente
    URL: #miapp?sap-theme=custom_quartzlight_3
    

:warning: Este método no es oficial ni soportado para todos los sistemas SAP (varía por versión de ushell).


:mag: Verifica que tu tema personalizado esté bien definido

Si tu tema se llama custom_quartzlight_3, asegúrate de que:

  • Está implementado y publicado correctamente en SAP Theme Designer.
  • Se encuentra en la ruta del servidor: /sap/public/bc/themes (puedes validar desde el navegador).
  • Está disponible y visible en la configuración de usuario de Launchpad.

:hammer_and_wrench: ¿Y si quiero forzar el tema desde código?

En casos extremos, puedes hacer override del tema desde código:

sap.ui.getCore().applyTheme("custom_quartzlight_3");

Pero esta práctica no es recomendada oficialmente por SAP, especialmente si estás trabajando dentro del Launchpad, ya que puede romper la experiencia compartida del usuario.


:white_check_mark: Resumen Consultoria-SAP

Tu tema personalizado definido en el manifest.json no se aplica en Fiori Launchpad porque SAP FES ignora esa propiedad y usa la configuración global del FLP.

:heavy_check_mark: Si ejecutas tu app fuera del FLP, el theme: en el manifest sí funciona.
:heavy_check_mark: Para aplicarlo dentro del Launchpad, debes:

  • Usar sap-theme como parámetro en la URL
  • O configurar el tema a nivel de usuario
  • O modificar el descriptor del target en el Launchpad Designer

En Consultoria-SAP.com, varios usuarios han implementado escenarios con temas Z personalizados, y te sugerimos revisar también si tu tema está bien generado desde el Theme Designer.

¿Quieres que revisemos si tu tema está correctamente publicado o cómo pasarlo en el FLP configurado? Pásanos la versión de tu SAPUI5 y la estructura del Launchpad y con gusto te ayudamos.

¡Estamos aquí para ayudarte! :art: