Limpiar caracteres utf8 en tarjetas adaptativas
Limpiar caracteres utf8 en tarjetas adaptativas

Limpiar caracteres utf8 en tarjetas adaptativas

La verdad es que es un fastidio que a veces tengamos este tipo de problemas y, por lo que vi en el post de discusión en el foro de Microsoft no había mucha solución. Así que dije que debía ponerme las pilas y solucionar el problema por mi mismo. 

¿Cuál es el problema?

De vez en cuando en algunas releases del Framework de las tarjetas adaptativas Microsoft olvida habilitar la compatibilidad con caracteres especiales como pueden ser las vocales con tilde que tenemos en nuestro castellano (á,é,í…) obteniendo esto como resultado:

A partir de aquí tenemos dos opciones: podemos llamar a Microsoft y seguro que enseguida aplica un parche para arreglarlo. Sin embargo al ser una variable de mi ecuación que no depende de mí, prefiero asegurarme de que todo funciona bien y ejecutar un flujo secundario que me limpia todos estos caracteres.

Es importante que para aplicar poder hacer todo lo que te digo estés trabajando dentro de una solución de Power Platform ya que, no podemos crear flujos secundarios si creamos directamente el flujo en el entorno Power Platform. Vamos a crear un flujo secundario que recibirá un parámetro tipo texto y nos devolverá ese mismo texto “limpio”. Esto lo hacemos así por seguir las buenas prácticas recomendadas ya que, si tenemos 8 tarjetas adaptables, centraremos la funcionalidad de filtrar estos caracteres en único sitio. Para crear un flujo secundario elegiremos el desencadenador instantáneo:

Creamos una acción tipo “compose” o “seleccionar” y aplicaremos la siguiente fórmula:

replace(replace(replace(replace(replace(replace(replace(replace(replace(string(triggerBody()['text']), 'á','á'),'é','é'),'í','í'),'ó','ó'),'ú','ú'),'ñ','ñ'),'à','à'), 'è','è'),'ò','ò')

Abruma un poco, ¿verdad? Pero no te preocupes, porque estoy aquí para contarte qué es lo que hace: básicamente decirle a html que esa vocal es un poco especial y lleva tilde. Tu como usuario deberás sustituir la variable triggerBody()[‘text’]) por tu variable o el texto que quieras que sea “limpiado”

Por último vamos a insertar un paso de “Responder a una instancia de Power Apps”:

Ahora volveremos al flujo donde tenemos la tarjeta adaptable y vamos a insertar el flujo secundario y haré que el json de la tarjeta adaptable pase el filtro de este flujo secundario. Y.. listo!

¡Espero que este post haya sido útil para ti!

2 comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.