Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Un escenario común al crear aplicaciones es la necesidad de compartir un "vínculo profundo" a una pantalla específica. Los enlaces profundos son útiles cuando desea llevar a los usuarios directamente a una pantalla y datos específicos en lugar de pedirles que naveguen desde la pantalla de "inicio" de su aplicación.
Para realizar un vínculo profundo en Power Apps, utilizará esta sintaxis de URL: https://apps.powerapps.com/play/{App ID}?{Query}
.
En esta sintaxis:
- Id. de aplicación: identificador de la aplicación. Vaya a Power Apps>Aplicaciones> Seleccione su aplicación >Detalles.
- Consulta: El texto de la consulta le permite proporcionar los datos para un enlace profundo. Deberá realizar algunos cambios en el código de su aplicación de lienzo para usar los parámetros provistos para abrir la aplicación usando la URL de consulta.
En este artículo, aprenderá a:
- Configure una aplicación de lienzo para manejar el parámetro de consulta.
- Cree una interfaz de usuario para enviar por correo electrónico un enlace profundo directamente desde una pantalla de su aplicación.
- Use la aplicación para buscar una cuenta específica, envíe un correo electrónico con el enlace profundo y use el enlace del correo electrónico recibido para abrir la aplicación directamente en esa cuenta.
Requisitos previos
- Licencia de Power Apps
- Si es nuevo en Power Apps, familiarícese con lo básico de Power Apps generando una aplicación y luego personalizar esa aplicación controles, galería, formularios, y tarjetas.
- Para crear una aplicación, debe tener asignado al rol de seguridad Creador de entorno.
Crear la aplicación
Cree una aplicación utilizando la tabla Cuentas en Microsoft Dataverse.
Su aplicación se abre en BrowseScreen, que muestra una lista de cuentas en una galería. De forma predeterminada, esta galería muestra una dirección de correo electrónico, una ciudad y un nombre de cuenta. La aplicación también contiene DetailScreen y EditScreen.
Actualizar navegación
Ahora configurará la navegación para usar un contexto que usaremos para llevar al usuario a otra pantalla.
En la pantalla BrowseScreen, seleccione Diseño en las propiedades de la galería y seleccione Título, subtítulo y cuerpo
Seleccione el primer registro de BrowseGallery galería. Y después, en OnSelect, introduzca lo siguiente:
Navigate(DetailScreen1, Fade, {accountVal:ThisItem})
La función Navigate crea una variable de contexto llamada accountVal. Esta variable se completa cada vez que selecciona un registro de la galería. Al seleccionar el registro, será llevado a la DetailScreen con el valor seleccionado (en este ejemplo, cuenta) en accountVal.
Desde la Vista de árbol en el lado izquierdo de la pantalla, expanda DetailScreen1 y seleccione DetailForm1.
Desde el panel de propiedades en el lado derecho de la pantalla, seleccione Editar campos, y añada los campos Cuenta, Contacto principal, y Correo electrónico.
Seleccione DetailForm, y establezca Articulo a accountVal.
Guarde con el nombre "Enlace profundo de cuenta".
Obtener el id. de la aplicación
Identificador de la aplicación es un GUID único que representa una aplicación determinada y se genera cuando guarda la aplicación en la nube.
Para obtener el Identificador de la aplicación, abra una nueva pestaña y vaya a Power Apps>Aplicaciones> Seleccione su aplicación >Detalles. Más información: Obtener un id. de la aplicación
Habilitar enlace profundo a una pantalla
El objetivo de este ejemplo es llevar a los usuarios a la DetailsScreen1 cuando la aplicación se inicia con el parámetro accountId de consulta como parte de la URL de la aplicación. Para este propósito, usaremos la función Param() que recupera el parámetro de cadena de consulta proporcionado al iniciar la aplicación.
Seleccione Aplicación desde la Vista de árbol en el lado izquierdo de la pantalla.
Propina
Si has cerrado Power Apps Studio, vuelva a abrir la aplicación guardada "Vínculo profundo de cuenta" guardada al editar la aplicación.
Seleccione OnStart propiedad de la lista de propiedades.
Para almacenar el Identificador de la aplicación valor, actualice la propiedad de la fórmula OnStart de propiedad como se muestra a continuación.
Set(AppID, "GUID"); If(Not(IsBlank(Param("accountId"))),Set(accountId,Param("accountId")));
En esta fórmula, la función Set() establece el Identificador de la aplicación al GUID de la aplicación. Y la función Param() almacena el valor en la variable accountId, cuando no está en blanco.
Nota
Asegúrese de reemplazar "GUID" en la fórmula anterior por su ID de aplicación, según corresponda.
Seleccione la propiedad StartScreen para la aplicación y agregue lo siguiente:
If(Not(IsBlank(Param("accountId"))),DetailScreen1,BrowseScreen1)
Esta función verifica si el Param está en blanco, luego permanece en el BrowseScreen1. De lo contrario, vaya a DetailScreen1.
Seleccione la página DetailScreen1 en la Vista de árbol.
Seleccione la propiedad OnVisible e introduzca lo siguiente:
If(Not(IsBlank(accountId)), UpdateContext({accountVal:LookUp(Accounts, Account = GUID(accountId))}))
Esta función utiliza el accountId almacenado desde el paso anterior para establecer la variable accountVal.
Crear la URL del enlace profundo
Su aplicación ya está configurada para recibir accountId como el parámetro que contiene el GUID para una cuenta de la tabla Cuentas. Y cuando este parámetro se proporcione con la solicitud a la aplicación, la aplicación abrirá directamente la pantalla de detalles (DetailScreen1) con el accountId dado.
Para invocar la aplicación con el valor del parámetro, debemos usar la siguiente sintaxis:
https://apps.powerapps.com/play/{App ID}?{Query}
En la sintaxis anterior, tenemos que agregar el Identificador de la aplicación y la consulta que contiene la variable accountId con su valor.
Por ejemplo, cuando se ingresó la siguiente URL en un navegador para el inquilino de muestra, la aplicación Vinculación profunda de la cuenta se abrió directamente con el valor del parámetro accountId (en este ejemplo, "A. Datum Corporation (muestra)"): https://apps.powerapps.com/play/061b64cd-e5a0-4a7a-a77f-b6f8586dd6c7?accountId=01e5bf81-7d44-ec11-8c60-002248094566
Enviar enlace profundo en el correo electrónico
También podemos proporcionar una variable accountVal para apuntar a la ID de la cuenta en lugar de usar el enlace absoluto explicado anteriormente al invocar la URL de la cuenta dada desde dentro de la aplicación.
Para este propósito, crearemos un botón y agregaremos la capacidad de invocar un correo electrónico desde dentro de la aplicación con el enlace profundo a la pantalla de detalles de la cuenta seleccionada desde la aplicación Vinculación profunda de la cuenta.
Seleccione Datos a la izquierda de la pantalla.
Seleccione Agregar datos> busque y seleccione Office 365 Outlook> seleccione Conectar.
Nota
Esta acción agrega la conexión Microsoft 365 Outlook para que podamos usar los siguientes pasos para invocar la redacción de un correo electrónico para compartir la información de la cuenta.
Seleccione la página DetailScreen1 en la Vista de árbol.
Inserte un botón en la parte inferior derecha de la pantalla y cámbiele el nombre a Compartir cuenta.
En la propiedad OnSelect del botón, introduzca lo siguiente:
Office365Outlook.SendEmailV2("Recipient", "Subject", "Here's the deep link to the selected account - https://apps.powerapps.com/play/{App ID}?accountId=" & accountVal.Account)
Esta fórmula utiliza el conector Microsoft 365 para Outlook para enviar un correo electrónico utilizando la operación SendEmailV2.
Nota
Reemplace Destinatario, Asunto, y AppID en la fórmula anterior con la dirección de correo electrónico del destinatario, el asunto del correo electrónico y el ID de la aplicación.
Guarde y publique la aplicación.
Probar la aplicación
Ejecute la aplicación y vaya a la pantalla de detalles de cualquier cuenta. Y luego, seleccione el botón Compartir cuenta. La fórmula del botón OnSelect activa un correo electrónico para el destinatario con el asunto y el cuerpo configurados anteriormente. Aquí hay un correo electrónico de muestra enviado por la aplicación configurada:
Abra el correo electrónico y copie el enlace profundo que apunta a la cuenta seleccionada y accederá directamente a la pantalla de detalles de la cuenta en la aplicación Vinculación profunda de la cuenta, en lugar de la pantalla de exploración predeterminada.