Hoy estoy muy contento por encontrar la solución que en días anteriores me estuvo rompiendo la cabeza al no poder encontrar que cosa convertía mi solución Canvas de Power Apps en Premium. Les doy mi contexto:
Casi para finalizar el desarrollo de un proyecto en Power Apps, intenté compartir la solución de Power Apps Canvas con los usuarios finales. Cuando ellos querían ingresar les pedía una licencia Premium de Power Apps. Estuve investigando las posibles causas:
Los conectores que tenía la aplicación, todas eran Estándar:
Sharepoint, Teams, Outlook, Power Apps for Makers, Excel Online.
En los flujos que utilicé dentro de la app no existía ninguno Premium.
Al no encontrar la causa, levanté un ticket al soporte de Microsoft, con el cual me apoyaron a encontrar el error.
En las llamadas de soporte me explicaron que cuando un usuario agrega una función Premium de Power Apps y esta es eliminada, visualmente parece no existir, pero en la metadata de la aplicación (dos archivos JSON que se genera dentro del proyecto en la nube) se queda guardado dicho código y no se elimina. Este código contiene unas instrucciones que apuntan a una tabla msdyn_aimodels, la cual es parte del dataverse y genera la conexión Premium. Entonces procedí a eliminar dicha conexión.
Investigando algunos recursos por internet, me topé con con este link:
PowerApps - Unable to Export Package - Page 2 - Power Platform Community (microsoft.com)
En el comentario del usuario sgregory explica como eliminar conexiones de la power apps que generar errores, y utilizando ese conocimiento, estos fueron los pasos que yo realicé:
Descargar dentro de una carpeta un respaldo de mi aplicación.
Se genera un archivo myapp.msapp
Crear una nueva carpeta y copiar el archivo
Cambiar la extensión del archivo a .Zip para poderlo abrir como un comprimido (myapp.zip)
Para abrir el archivo utilicé el programa 7-ZIP.
Extraer el archivo Properties.json
Extraer dentro de la carpeta Reference, el archivo DataSources.json
En el archivo Properties.json modifiqué el contenido de la siguiente línea de código para borrar la conexión y dejarla así:
"LocalDatabaseReferences" : "{}"
Guardé el archivo en Texto plano y sin espacios.En el archivo DataSource.json eliminé todo el contenido que había entre llaves donde encontré el texto:
"EntitySetName": "msdyn_aimodels"
Guardé el archivo en Texto plano y sin espacios.
Arrastré los archivos al archivo zip abierto para sustituir cada archivo, primero el Properties.JSON
Con esto lo que se logra es no modificar el tipo de codificación del archivo comprimido original y que Power Apps Studio permita subir el archivo de manera correcta.
Volver a cambiar la extensión del archivo de .zip a .msapp
Iniciar un proyecto nuevo tipo Canvas en Power Apps y dar clic en Abrir, Buscar archivos y cargar el archivo modificado msapp.
Guardar el proyecto con un nuevo nombre.
En mi caso, el proyecto cargó con muchos errores por la falta de conexiones, así que tuve que volver a cargar las fuentes de datos y los flujos.
No es un proceso muy limpio, pero es efectivo para corregir dicho problema y al final puedes verificar en los detalles de la nueva aplicación, que ya es Estándar.
Espero que este artículo sea de utilidad, no dudes en escribirme si tienes alguna duda o comentario que pueda servir a la comunidad de Power Platform. Muchas gracias por tu visita, nos leemos en otro artículo.