Funciones para validar datos

Completado

Otra manera de que la aplicación sea más dinámica e intuitiva para el usuario es usar funciones de validación como IsBlank, IsBlankOrError, IsEmpty, IsNumeric, IsToday e IsMatch. Estas funciones hacen posible la validación de la condición de un campo, control, variable o tabla. Todas estas funciones devuelven valores booleanos (true o false) en función de los resultados de su evaluación. A menudo, estas funciones se utilizan con las funciones If o Switch para generar mensajes u opciones para los usuarios.

Por ejemplo, puede usar estas funciones en soluciones en las que no se permita al usuario enviar un formulario si un campo está en blanco o si los datos del campo no tienen un formato determinado.

Introducción con validación de entrada numérica

Veamos un ejemplo. Supongamos que tenemos dos controles: un control Entrada de texto donde el valor Predeterminado está vacío y un control Text label justo debajo, donde hemos especificado una fórmula en la propiedad Text. Usaremos una prueba IsNumeric con una instrucción If en la propiedad Text de la etiqueta. Al modificar la propiedad Text del control de etiqueta, podemos producir diferentes resultados.

Revise cuidadosamente la instrucción If de la propiedad Text en la imagen siguiente: Está indicando al control de etiqueta que muestre un resultado de texto diferente según la validación IsNumeric de cualquier dato que se indique en el campo de entrada de texto.

Si establecemos la aplicación en modo versión preliminar, podemos escribir cualquier texto en el campo de entrada, y la etiqueta de más abajo seguirá solicitando un número:

Captura de pantalla del texto introducido en nuestro campo de introducción de texto y el texto que indica que introduzca un número.

Sin embargo, si especificamos cualquier número, el mensaje de la etiqueta cambia:

Captura de pantalla del número 45.7 introducido en nuestro campo de introducción de texto y el texto que indica que introduzca un número

Sugerencia

También puede emplear el operador Not (o !) con cualquiera de estas funciones. Por ejemplo, IsBlank prueba una condición en blanco, mientras que !IsBlank prueba una condición que no está en blanco.

Utilizar funciones de validación en la aplicación puede ayudarle a influir en los datos que introduzca el usuario y en la interacción general con la aplicación.

Funciones de validación disponibles

A continuación, se ofrecen algunas funciones de validación que se pueden usar en Power Apps (recuerde que el resultado es siempre true o false):

  • IsBlank: comprueba un campo, propiedad o variable para ver si el resultado está en blanco o es una cadena vacía.

  • IsBlankOrError: comprueba si una expresión está en blanco o genera un error, y devuelve true o false.

  • IsEmpty: comprueba una tabla de datos para ver si contiene registros.

  • IsError: prueba un valor de error.

  • IsMatch: comprueba una cadena de texto para determinar si el resultado coincide con el patrón especificado. Por ejemplo, puede usar esta función para probar entradas de correo electrónico o números de teléfono válidos.

  • IsNumeric: comprueba un campo, propiedad o variable para determinar si el valor es numérico (como en el ejemplo anterior).

  • IsToday: comprueba una fecha o valor de hora para ver si se encuentra entre hoy a medianoche y mañana a medianoche según la hora local.

  • IsUTCToday: es similar a isToday, pero utiliza la hora universal coordinada (UTC) en lugar de la hora local y no depende de las zonas horarias.

  • La función Not() o ! puede anteponerse a cualquiera de estas validaciones para validar lo contrario. Por ejemplo, !IsBlank comprueba que el valor no esté en blanco. (Not devuelve true si su argumento es false).

Ejemplo de IsMatch

Echemos un vistazo a un ejemplo más sobre la función IsMatch. Puede probar esta funcionalidad para deshabilitar un botón si el control Entrada de texto no tiene especificada una dirección de correo electrónico válida. Correo electrónico es un patrón predefinido que se puede usar fácilmente. Sin embargo, recuerde que solo está buscando un patrón; no se valida si la dirección de correo electrónico realmente funciona o no. Así que vamos a utilizar la aplicación de demostración para lo siguiente:

  1. Agregue un control Text Input al lienzo. Haga que la propiedad Default quede en blanco eliminando "Entrada de texto". Cambie el nombre del control: tiEmailEntry.

  2. Agregue un control de botón justo debajo del campo de entrada de texto.

  3. Modifique la propiedad DisplayMode del control Botón a la siguiente fórmula:

    If(IsMatch(tiEmailEntry.Text, Match.Email), DisplayMode.Edit, DisplayMode.Disabled)
    

    Con la fórmula de coincidencia Email, Power Apps prueba el valor de texto del campo de entrada con este patrón: una cadena alfanumérica, seguida del símbolo @, otra cadena alfanumérica, un punto (.) y se cierra con una cadena de varias letras. Si la cadena de entrada no coincide con el patrón especificado, el botón permanece en modo "deshabilitado" y el usuario no puede interactuar con él. Probemos la funcionalidad.

  4. Obtenga una vista preliminar de la aplicación seleccionando el botón Reproducir situado en la esquina superior derecha.

  5. Si el campo está en blanco o tiene una dirección de correo electrónico incompleta, el botón está deshabilitado y aparece en gris. Pruebe algunos ejemplos diferentes sin @ o sin el punto (.).

    Captura de pantalla de una dirección de correo electrónico no válida en un campo de entrada de texto al que le falta el símbolo @ y el botón deshabilitado debajo

    Si escribe una dirección de correo electrónico con formato correcto, el botón cambia a azul y se puede seleccionar.

    Captura de pantalla de una dirección de correo electrónico válida en el campo de entrada de texto con el botón debajo en modo de edición

Las funciones de validación de datos son herramientas útiles para dar forma a los datos introducidos por sus usuarios. Emplearlos puede ayudar a eliminar errores de introducción de datos y mejorar aún más la experiencia del usuario.