Importación de ficheros Excel en Power Apps (I)

¡Bienvenidos #PowerAddicts! En este nuevo artículo analizaremos las distintas opciones que tenemos para trabajar en Power Apps con datos procedentes de Excel, apoyándonos también, como ya es habitual, en Power Automate.

Para cubrir esta necesidad, tenemos varias opciones disponibles, pero antes, deberemos tener en cuenta los siguientes factores para tomar la decisión adecuada:

  • ¿Los datos son estáticos (no cambian) o son datos “vivos”?
  • ¿El fichero estará en la nube o en el dispositivo del usuario?
  • ¿Se tendrá que poder escribir en el fichero desde la app?

Una vez tenemos identificadas nuestras necesidades y casuísticas, podremos elegir entre estas 3 opciones:

  1. Utilizar el conector de Excel para importar datos estáticos
  2. Utilizar el conector de Excel Online para conectar con ficheros en la nube (OneDrive, Sharepoint)
  3. Importar un fichero mientras se está usando la aplicación

Cabe mencionar que las dos primeras soluciones, a las cuales dedicaremos este artículo de forma íntegra, tendrán que ser aplicadas des del punto de vista del desarrollador, es decir, mientras se está diseñando la app, por lo que no le estaríamos danto la opción al usuario final de seleccionar un fichero en su dispositivo y subir la información en la app, cosa que sí sucede en la 3ª opción. Dicho esto, vamos a ver en detalle las 3 opciones.

1. Utilizar el conector de Excel para importar datos estáticos

Este escenario podría darse, por ejemplo, cuando necesitamos importar un listado de países, ciudades o códigos postales. Es evidente que estos datos raramente van a cambiar, por lo que haciendo una sola importación de datos, sería suficiente. Para ello, utilizaremos el conector Import from Excel, y posteriormente seleccionaremos el fichero Excel que queremos importar, como podemos ver a continuación:

Si se modificaran los datos del fichero, y quisiéramos ver la información actualizada en la app, tendríamos que importar de nuevo el fichero, siguiendo el mismo proceso. Haciendo uso de este conector, tampoco tendremos la opción de escribir información en el fichero desde la app, por lo que, estamos delante de un proceso de lectura de una sola vez.

2. Utilizar el conector de Excel Online para conectar con ficheros en la nube (OneDrive, Sharepoint)

En este caso, nos imaginaremos una organización con varios departamentos, los cuales utilizan ficheros Excel por separado para gestionar los casos de soporte de su departamento. Sin embargo, el responsable de IT decide crear una aplicación que se conecte a todos estos ficheros y que permita gestionar todos los casos desde un único sitio y utilizando el mismo procedimiento para todos los departamentos.

Por lo tanto, nos encontramos en que tenemos varios ficheros Excel repartidos en la nube de la organización, y necesitamos que la aplicación pueda leer y escribir datos en estos ficheros. Para este caso, utilizaremos el conector Excel Online (Business):

Al utilizar este conector, podremos seleccionar tanto ficheros guardados en Sharepoint como ficheros guardados en OneDrive. Para nuestro ejemplo, seleccionaremos 3 ficheros de OneDrive que contienen casos de 3 departamentos distintos (finanzas, IT y RRHH):

Fijaros en un detalle importante, y es que al seleccionar la tabla de casos del fichero, Power Apps nos pregunta si ya tenemos un campo que actúe como identificador único, o por el contrario, queremos que se cree un nuevo campo para tal propósito. Esta opción es importante para que posteriormente podamos crear o actualizar registros en el fichero Excel directamente desde Power Apps.

Una vez que ya tenemos los 3 ficheros conectados en Power Apps, podríamos, por ejemplo, crear una colección (colCasos) que contuviera los casos de todos los departamentos. Es importante utilizar la función Refresh antes de llenar la colección (Collect) para recuperar los datos más recientes de los ficheros.

Llegados a este punto, ya podríamos mostrar todos los casos en una galería o tabla, y tal y como podemos observar a continuación, si modificamos un dato en Excel (caso 4 de finanzas) y actualizamos en Power Apps, la información se actualiza automáticamente sin necesidad de volver a importar, como sí sucedía en el punto 1.

Por último, también podríamos hacer el proceso a la inversa, es decir, modificar el dato en Power Apps, y ver reflejado el cambio en Excel. A continuación, veremos como podemos cerrar, directamente desde Power Apps, el caso 4 del departamento de IT.

Para poder actualizar el registro en Excel, hemos utilizado la función Patch de Power Apps en la propiedad OnSelect del botón “Cerrar caso”:

Incluso podemos observar que teniendo el fichero abierto, Power Apps es capaz de actualizar el registro de todas formas.

Con este ejemplo llegamos al final de este artículo, en el que hemos visto dos opciones para trabajar con ficheros Excel en Power Apps, y nos reservamos la 3ª opción, seguramente la más compleja, para un nuevo artículo.

Follow the power!

--

--

Miquel Vidal Morales
Follow the Power {Platform}, por Miquel Vidal

CTO & Bizz Apps Technical Architect | MCT | Power Platform | Dynamics AX/365