Funciones Launch y Param
Se aplica a: Aplicaciones de Canvas
Inicia una página web o una aplicación de lienzo y proporciona acceso a los parámetros de inicio.
Launch
Inicia una página web o una aplicación de lienzo. La función admite:
- Dirección (obligatorio), la URL de la página web de la aplicación de lienzo.
- Parámetros (opcionales), valores con nombre para pasar a la página web o a la aplicación de lienzo. En una aplicación de lienzo, los parámetros se pueden leer con la función Param.
- Destino (opcional), la pestaña del navegador en la que se iniciará la página web o la aplicación de lienzo.
El lanzamiento sólo se puede utilizar en fórmulas de comportamiento.
Nota
Si se utiliza la fórmula Iniciar para abrir Power Apps y la aplicación no es visible para el usuario final, se recomienda verificar si la aplicación está bloqueada por un bloqueador de ventanas emergentes del navegador o si el navegador está esperando la respuesta del usuario a un cuadro de diálogo que le pregunta si desea navegar a una nueva pantalla.
Dirección
Las páginas web se inician a través de una dirección URL. Por ejemplo:
Launch( "https://bing.com" )
Puede iniciar aplicaciones de lienzo con Vínculo web URI de aplicación (iId. de aplicación prefijado con /providers/Microsoft.PowerApps/apps/
). Para encontrar estos valores para una aplicación:
Vaya a Power Apps.
Seleccione Aplicaciones en el panel de navegación izquierdo.
Seleccione su aplicación.
Seleccione Detalles en el menú superior.
También puede seleccionar ... (Más comandos) y luego seleccionar Detalles en el menú desplegable.Copie el Vínculo web.
El vínculo web se puede usar en cualquier página web e iniciará la aplicación de lienzo. También se puede usar con la función Launch. Por ejemplo:
Launch( "https://apps.powerapps.com/e/{environment id}/a/{app id}?tenantId={tenantId}" )
Las aplicaciones nativas en un dispositivo no se pueden iniciar directamente. Puede haber opciones indirectas disponibles en algunas plataformas, como una aplicación nativa que instala un esquema de URL personalizado o se registra con el navegador web para ofrecer una opción para sitios web específicos.
Parámetros
Launch puede pasar parámetros a la página web o a la aplicación de lienzo. Los parámetros se pueden proporcionar de dos maneras:
Una lista de argumentos de pares de nombre y valor. Por ejemplo:
Launch( "https://bing.com/search", "q", "Power Apps", "count", 1 )
Un registro de valores de campo. Por ejemplo:
Launch( "https://bing.com/search", { q: "Power Apps", count: 1 } )
Puede ser más fácil trabajar de esta forma, ya que aclara la asociación entre nombre y valor. Es la única forma que admite el argumento opcional LaunchTarget.
La dirección y los parámetros están codificados en la URL antes de pasarlos para reemplazar ciertos caracteres no alfanuméricos con %
y un número hexadecimal como si la función EncodeUrl se hubiese utilizado en ellos.
Al iniciar una página web, se puede incluir una cadena de consulta de parámetros al final de la dirección URL. Cualquier parámetro adicional proporcionado a Launch se agregará al final de la cadena de consulta. Las cadenas de consulta no funcionan al iniciar una aplicación de lienzo.
Al iniciar una aplicación en un dispositivo móvil donde ya se está ejecutando, los parámetros no se actualizarán en la aplicación en ejecución. Se requiere una recarga de la aplicación para actualizar los parámetros.
Target
Utilice el argumento LaunchTarget para especificar la ventana del navegador de destino para abrir la página web o la aplicación. Use uno de los siguientes valores de enumeración LaunchTarget o proporcione un nombre de ventana personalizada.
LaunchTarget enum | Descripción |
---|---|
Nuevo | La página web o aplicación se abre en una nueva ventana o pestaña. |
Reemplazar | La página web o aplicación reemplazan una nueva ventana o pestaña. |
nombre | En lugar de un valor de enumeración, use su propia cadena de texto para dar un nombre a la ventana o pestaña. Self es un nombre único interno que solo es utilizado por la función Launch. No tiene impacto ni coincidirá con el título de la ventana que ven los usuarios. Si una ventana o pestaña con el nombre dado ya existe, se reemplazará su contenido. De lo contrario, se creará una nueva ventana o pestaña. El nombre no puede comenzar con el carácter de subrayado "_". |
Nuevo es el enumeración predeterminado cuando se ejecuta en un navegador web con Reemplazar y nombre como opciones disponibles. En un reproductor móvil, New está predeterminado para las páginas web con nombre como opción disponible; mientras que la aplicación de lienzo actual siempre será reemplazada por otra aplicación de lienzo.
Nota
- El uso de un LaunchTarget con cualquier valor que no sea New en escenarios integrados (por ejemplo, Power BI o SharePoint) no es compatible y puede provocar un comportamiento inesperado. En el futuro, este comportamiento puede cambiar o puede causar un error.
Param
La función Param recupera un parámetro pasado a la aplicación cuando se inició. Si no se pasó el parámetro con nombre, Param devuelve blank.
- Al iniciar una aplicación de lienzo desde otra aplicación de lienzo, use los argumentos de Parameter para la función Launch. Los nombres y valores de los parámetros se codificarán automáticamente en una URL.
- Al iniciar una aplicación de lienzo desde una página web, agregue parámetros a la cadena de consulta del vínculo web de la aplicación de lienzo. Esto implica agregar
¶metername=parametervalue
suponiendo que la cadena de consulta ya se ha iniciado paratenantId
. Por ejemplo, al agregar&First%20Name=Vicki&category=3
, se pasarían dos parámetros:First Name
con un valor de"Vicki"
ycategory
con un valor de"3"
(el tipo de valor es texto). El nombre y el valor del parámetro deben estar codificados mediante una URL si contienen espacios o caracteres especiales, de forma similar al uso de la función EncodeURL. - Los nombres de los parámetros distinguen entre mayúsculas y minúsculas.
- Los nombres y valores de los parámetros se descodificarán automáticamente mediante la URL para su uso en su aplicación.
- Los valores de los parámetros no cambian a menos que se vuelva a cargar la aplicación. Usar Iniciar en un dispositivo móvil donde la aplicación ya se está ejecutando no actualiza los parámetros.
- Incluso si el parámetro contiene un número, el tipo devuelto por Param siempre será una cadena de texto. La conversión a otros tipos se producirá automáticamente o utilizará conversiones explícitas, como la función Value para convertir explícitamente a un número.
Nota
Para páginas personalizadas, los únicos parámetros aceptados por la página son: recordId y entityName.
Sintaxis
Inicie( Dirección [, NombreParámetro1, ValorParámetro1 , ... ] )
- Dirección – Obligatorio. La dirección de una página web o el identificador de una aplicación que se va a iniciar.
- ParameterNames – Opcional. Nombre de parámetro.
- ParameterValues – Opcional. Valores de parámetro correspondientes para pasar a la aplicación o la página web.
Lanzamiento( Dirección, { [ NombreParámetro1: ValorParámetro1, ... ] } [, DestinoLanzamiento ] )
- Dirección – Obligatorio. La dirección de una página web o el identificador de una aplicación que se va a iniciar.
- ParameterNames – Opcional. Nombre de parámetro.
- ParameterValues – Opcional. Valores de parámetro correspondientes para pasar a la aplicación o la página web.
- LaunchTarget – Opcional. Valor de enumeración LaunchTarget o nombre personalizado.
Param( NombreDeParámetro )
- ParameterName - Obligatorio. El nombre del parámetro pasado a la aplicación.
Parámetros reservados
Las siguientes palabras clave están reservadas (sin importar el caso) para uso interno y no deben usarse como un parámetro personalizado en la función Param():
- amp%3Bauthmode
- amp%3Benableonbehalfof
- amp%3Bhidenavbar
- amp%3Blocale
- appmetadataversion
- authmode
- channeltype
- cordovapath
- correlationid
- depurar
- delegatelaunchurl
- delegatelaunchurl
- disablepreviewredirect
- embedderorigin
- enableonbehalfof
- groupid
- hideappsplash
- hidenavbar
- hint
- hostclienttype
- hostmode
- iframecontainerid
- isfullscreen
- ispreviewmode
- loader
- loaderType
- locale
- ubicación
- packagekind
- packageproperties
- playerresourcespath
- playersessionid
- powerappslanguage
- screencolor
- sdkversion
- site
- skipappmetadata
- skipiframecreation
- skiplaunchappcache
- source
- sourcetime
- standaloneconsent
- teamid
- teamtype
- tenantId
- theme
- uselocalpackagehostresources
- userteamrole
Ejemplos
Lanzamiento simple
Desde una aplicación de lienzo hasta una página web:
Fórmula | Descripción |
---|---|
Lanzamiento( "http://bing.com/search", "q", "Power Apps", "count", 1 ) |
Abre la página web https://bing.com/search?q=Power%20Apps&count=1. Se abre una nueva pestaña o ventana. |
Lanzamiento( "http://bing.com/search", { q: "Power Apps", count: 1 } ) |
Lo mismo que los ejemplos anteriores usando la notación de registro equivalente. Se abre una nueva pestaña o ventana. |
Lanzamiento( "http://bing.com/search", { q: "Power Apps", count: 1 }, LaunchTarget.Replace ) |
Lo mismo que en los ejemplos anteriores, reemplazando la ventana o pestaña actual con el resultado si se ejecuta en un navegador web. |
Lanzamiento( "http://bing.com/search", { q: "Power Apps", count: 1 }, "Resultados de la búsqueda") |
Lo mismo que en el ejemplo anterior, creando o reemplazando el contenido de la ventana o pestaña llamada Resultados de la búsqueda. |
Desde una aplicación de lienzo hasta una aplicación de lienzo
Actualice el id. de aplicación, el nombre de pantalla y el número de registro según corresponda.
Launch( "/providers/Microsoft.PowerApps/apps/YOUR-APP-ID",
{ Navigate: "Second Screen", Record: 34 }
)
Desde una página web hasta una aplicación de lienzo
Actualice el id. de aplicación, el id. de inquilino, el nombre de pantalla y el número de registro según corresponda.
<html>
<body>
<a
href="https://apps.powerapps.com/play/e/YOUR-APP-ENVIRONMENT-ID/a/YOUR-APP-ID?tenantId=YOUR-TENANT-ID&Navigate=Second%20Screen&Record=34"
>
Launch canvas app
</a>
</body>
</html>
Param simple
Los ejemplos de inicio simples anteriores para iniciar la aplicación de lienzo desde la página web o desde otra aplicación de lienzo son ejemplos simples para la función Param:
Fórmula | Descripción | Resultado |
---|---|---|
Param("Navegar") | El parámetro Navigate se proporcionó cuando se inició la aplicación y se devuelve. | "Segunda pantalla" |
Param("Registro") | El parámetro Record se proporcionó cuando se inició la aplicación. A pesar de que se pasó como un número a la función Launch, el resultado de Param será una cadena de texto que se puede convertir implícita o explícitamente a otros tipos. | "34" |
Param("Usuario") | El parámetro User no se proporcionó. Se devuelve un valor en blanco que se puede probar con la función IsBlank. | blanco |
Ejemplos paso a paso para Launch y Param
La plantilla de diseño para tableta Presentación de productos se utilizó para los siguientes ejemplos. Para crear una aplicación con esta plantilla, siga los pasos del artículo para crear una aplicación y seleccione la plantilla Presentación de productos. También puede usar su propia aplicación.
Ejemplo: Launch
Vaya a Power Apps.
Seleccione Aplicaciones en el panel de navegación izquierdo.
Seleccione su aplicación y, a continuación seleccione Editar.
Seleccione Insertar en el menú y luego seleccione Etiqueta.
Mueva la etiqueta a la parte inferior derecha de la pantalla.
En el panel de propiedades del lado derecho, seleccione Color como blanco y establezca Grosor del borde en 1.
Seleccione la propiedad Text en el lado derecho e introduzca texto como Tabletas Surface en las noticias.
En la lista de propiedades en la parte superior izquierda, seleccione OnSelect.
Especifique la fórmula como
Launch("https://www.bing.com/news/search","q","Microsoft Surface tablets")
. También puede usar las URL, los parámetros y las palabras clave que elija.Guarde y publique la aplicación.
Reproduzca la aplicación.
Etiqueta Seleccionar Tabletas Surface en noticias para iniciar la búsqueda de noticias con palabras clave Microsoft Tabletas Surface.
Propina
Para la escalabilidad, puede reemplazar las palabras clave introducidas manualmente en la función Launch con variables.
Ejemplo: Param
Vaya a Power Apps.
Seleccione Aplicaciones en el panel de navegación izquierdo.
Seleccione su aplicación y, a continuación seleccione Editar.
Seleccione Insertar en el menú y luego seleccione Etiqueta.
Mueva la etiqueta a la parte inferior derecha de la pantalla.
Seleccione la propiedad Text de la etiqueta desde la parte superior izquierda.
Especifique la fórmula como
Param("browser")
. También puede usar un parámetro diferente de su elección.Guarde y publique la aplicación.
Copie el vínculo web para su aplicación de Power Apps.
Abra un nuevo navegador.
Pegue el vínculo web de la aplicación en el navegador y agregue
&browser=Microsoft%20Edge
al final.Cuando se inicia la aplicación, la etiqueta muestra el valor del parámetro pasado.
Cierre el reproductor de aplicaciones y edite la aplicación.
Seleccione App en la vista de árbol en la navegación izquierda.
Seleccione la propiedad StartScreen en la parte superior izquierda.
Especifique la fórmula como
If( Param("screen") = "techspecs", TechSpecs )
.Si la función en la propiedad StartScreen verifica si el parámetro es igual a un valor determinado, en este caso el valor techspecs. Y si coincide, devuelve el control de pantalla TechSpecs a la propiedad StartScreen.
Nota
Reemplace el nombre del control TechSpecs en la función If con el nombre de un control de pantalla en su propia aplicación si no está utilizando la plantilla de aplicación Presentación de productos.
Guarde y publique la aplicación.
Abra un nuevo navegador.
Pegue el vínculo web de la aplicación en el navegador y agregue
&screen=techspecs
al final.La aplicación se inicia directamente con TechSpecs como pantalla de inicio.