Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

250
Vistas
Poner color de fondo con valores de OData SAPUI5/JAVASCRIPT

Necesito establecer colores de fondo con los valores que obtengo de OData. Tengo el siguiente código:

 oModel.read("/EspCoSet", { filters: [aFilters], success: function (oD, oR) { var oResults = oD.results; for (var i = 0; i < oResults.length; i++) { var color_fondo = oResults[i].ColorFondo; var color_texto = oResults[i].ColorTexto; } }, error: function (oE) { console.log("Error"); } });

En la variable "color_fondo" estoy guardando el valor del color en HEX así "FFFFFF". ¿Hay alguna forma de poner este valor en las celdas correspondientes sin tocar CSS? Vi estos métodos:

 [data-esp="Hospitalizado"] * { background-color: #FFFFFF !important; color: red !important; }

pero si me gusta esto, necesito escribir la información nuevamente (la información que proviene de OData) y luego el valor de OData no tiene ningún uso. ¿Es posible?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Encontré una solución, que fue una fusión entre algunas respuestas en Internet. Para obtener los colores de OData, cambio un poco el backend. Mi tabla antes estaba con colores en HEX, ahora cambié por letras como esta:

 color_fondo | color_texto WHITE | BLACK BLUE | RED GREEN | BLACK

Luego, en el css pongo el nombre del color como clase, así:

 .BLUE { background-color: #9dcfdd !important; }

y finalmente en el controlador, cuando leo el modelo y obtengo el color respectivo para cada paciente, obtengo el ítem de cada celda y con addStyleClass aplico el color_fondo que es la variable que sale del OData.

 oModel.read("/EspCoSet", { filters: [aFilters], success: function (oD, oR) { var oResults = oD.results; for (var i = 0; i < oResults.length; i++) { var color_fondo = oResults[i].ColorFondo; var color_texto = oResults[i].ColorTexto; var aItems = oTable.getItems(); aItems[i].addStyleClass(color_fondo); aItems[i].addStyleClass(color_texto); } }, error: function (oE) { console.log("Error"); } });

y finalmente obtengo los colores en mi interfaz. Dejé esto aquí porque no pude encontrar ningún ejemplo de esto que obtenga los colores de OData, puede ayudar a alguien. Por cierto, lo siento por mi inglés, espero que todo haya quedado claro.

NOTA: Para el color del texto, debe ingresar el css *:

 .RED *{ color: #c63637 !important; }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda