Funções Launch e Param

Aplica-se a: Aplicações de tela

Inicia uma página Web ou uma aplicação de tela e fornece acesso aos parâmetros de iniciação.

Launch

Lança uma página Web ou uma aplicação de tela. A função suporta:

  • Endereço (obrigatório), o URL da página Web ou URL da API (ID de Aplicação com prefixo com /providers/Microsoft.PowerApps/apps/) da aplicação de tela.
  • Parameters (opcional), valores nomeados a transmitir para a página Web ou a aplicação de tela. Numa aplicação de tela, os parâmetros podem ser lidos com a função Param.
  • Target (opcional), o separador do browser em que a página Web ou a aplicação de tela será iniciada.

Launch só pode ser utilizado em fórmulas de comportamento.

Endereço

As páginas Web são iniciadas através de um endereço URL. Por exemplo:

Launch( "https://bing.com" )

Pode iniciar aplicações de tela com Ligação Web ou URL da Aplicação (ID de aplicação com prefixo com /providers/Microsoft.PowerApps/apps/). Para localizar estes valores para uma aplicação:

  1. Aceder a Power Apps.

  2. Selecione Aplicações no painel de navegação esquerdo.

  3. Selecione a sua aplicação.

  4. Selecione Detalhes no menu superior.
    Também pode selecionar ... (Mais Comandos) e, em seguida, selecionar Detalhes no menu pendente.

    Opção de detalhes da aplicação.

  5. Copie a Ligação Web ou o ID da Aplicação.

    Detalhes da aplicação com ligação Web e ID da aplicação.

A Ligação Web pode ser utilizada em qualquer página Web e iniciará a aplicação de tela. Também pode ser utilizado com a função Launch.

O ID da Aplicação pode ser utilizado com a função Launch, mas tem de ter o prefixo /providers/Microsoft.PowerApps/apps/. Por exemplo:

Launch( "/providers/Microsoft.PowerApps/apps/f342faaf-5f82-4ace-a64b-7c1b01499231" )

As aplicações nativas num dispositivo não podem ser iniciadas diretamente. Poderão estar disponíveis opções indiretas em algumas plataformas, como uma aplicação nativa a instalar um esquema de URL personalizado ou a registar no browser para oferecer uma opção para Web sites específicos.

Parâmetros

Launch pode transmitir parâmetros para a página Web ou a aplicação de tela. Os parâmetros pode ser fornecidos de duas maneiras:

  • Uma lista de argumentos de pares nome-valor. Por exemplo:

    Launch( "https://bing.com/search", "q", "Power Apps", "count", 1 )
    
  • Um registo de valores de campo. Por exemplo:

    Launch( "https://bing.com/search", { q: "Power Apps", count: 1 } )
    

    Este formulário pode ser mais fácil de trabalhar por fazer a associação entre o nome e o valor mais clara. É o único formulário que suporta o argumento opcional LaunchTarget.

O endereço e os parâmetros são codificados no URL antes de serem transmitidos para substituir determinados caracteres não alfanuméricos com % e um número hexadecimal como se a função EncodeUrl tivesse sido utilizada em cada um.

Quando inicia uma página Web, uma cadeia de consulta de parâmetros pode ser incluída no final do endereço URL. Quaisquer parâmetros adicionais fornecidos para Launch serão adicionados ao final da cadeia de consulta. As cadeias de consulta não funcionam quando iniciam uma aplicação de tela.

Quando inicia uma aplicação num dispositivo móvel onde essa aplicação já está em execução, os parâmetros não serão atualizados na aplicação em execução. É necessário recarregar a aplicação para que os parâmetros sejam atualizados.

Destino

Utilize o argumento LaunchTarget para especificar a janela de browser de destino onde abrir a página Web ou a aplicação. Utilize um dos seguintes valores de enumeração LaunchTarget ou forneça um nome de janela personalizada.

Enumeração LaunchTarget Descrição
New A página Web ou a aplicação é aberta numa nova janela ou separador.
Replace A página Web ou a aplicação substitui a janela ou separador atual.
name Em vez de um valor de enumeração, utilize a sua própria cadeia de texto para atribuir um nome à janela ou ao separador. Self é um nome exclusivamente interno que é utilizado apenas pela função Launch. Não tem qualquer impacto nem corresponderá ao título da janela que os seus utilizadores veem. Se já existir uma janela ou um separador com o nome fornecido, o respetivo conteúdo será substituído. Caso contrário, será criado um novo separador ou janela. name não pode começar pelo caráter de sublinhado "_".

New é o enum predefinido quando é executado num browser Web com Replace e name como as opções disponíveis. Num leitor móvel, Novo é a predefinição para páginas Web com nomear como a opção disponível; enquanto a atual aplicação de tela será sempre substituída por outra aplicação de tela.

Nota

  • A utilização de um LaunchTarget com qualquer valor que não o Novo em cenários incorporados (por exemplo, Power BI ou SharePoint) não é suportada e pode resultar em comportamentos inesperados. No futuro, este comportamento pode mudar ou causar um erro.

Param

A função Param obtém um parâmetro transmitido à aplicação quando esta foi iniciada. Se o parâmetro nomeado não tiver sido transmitido, Param devolverá um valor blank.

  • Ao iniciar uma aplicação de teça a partir de outra aplicação de tela, utilize os argumentos de Parameter para a função Launch. Os nomes e os valores dos parâmetros serão codificados num URL automaticamente.
  • Ao iniciar uma aplicação de tela a partir de uma página Web, adicione parâmetros à cadeia de consulta da ligação Web da aplicação de tela. Isto envolve adicionar &parametername=parametervalue, pressupondo que a cadeia de consulta já tenha sido iniciada para o tenantId. Por exemplo, adicionar &First%20Name=Vicki&category=3 transmitiria dois parâmetros: First Name com um valor de "Vicki" e category com um valor de "3" (o tipo de valor é text). O nome e o valor do parâmetro têm de ser codificados por URL se contiverem espaços ou caracteres especiais, semelhante a utilizar a função EncodeURL.
  • Os nomes de parâmetros são sensíveis a maiúsculas e minúsculas.
  • Os nomes de parâmetros e os valores serão decodificados por URL automaticamente para utilização na sua aplicação.
  • Os valores dos parâmetros não são alterados, a menos que a aplicação seja recarregada. Utilizar Iniciar num dispositivo móvel onde a aplicação já está em execução não atualiza os parâmetros.
  • Mesmo que o parâmetro contenha um número, o tipo devolvido por Param será sempre uma cadeia de texto. A conversão para outros tipos irá ocorrer automaticamente ou utilizará conversões explícitas, tais como a função Value para converter explicitamente para um número.

Nota

Para páginas personalizadas, os únicos parâmetros aceites pela página são: recordId e entityName.

Sintaxe

Launch( Address [, ParameterName1, ParameterValue1, ... ] )

  • Address – Obrigatório. O endereço de uma página Web ou o ID de uma aplicação a iniciar.
  • ParameterName(s) – Opcional. Nome do parâmetro.
  • ParameterValue(s) – Opcional. Os valores de parâmetros correspondentes a transmitir à aplicação ou à página Web.

Launch( Address, { [ ParameterName1: ParameterValue1, ... ] } [, LaunchTarget ] )

  • Address – Obrigatório. O endereço de uma página Web ou o ID de uma aplicação a iniciar.
  • ParameterName(s) – Opcional. Nome do parâmetro.
  • ParameterValue(s) – Opcional. Os valores de parâmetros correspondentes a transmitir à aplicação ou à página Web.
  • LaunchTarget – Opcional. Um valor de enumeração LaunchTarget ou um nome personalizado.

Param( ParameterName )

  • ParameterName – Obrigatório. O nome do parâmetro transmitido à aplicação.

Parâmetros reservados

As seguintes palavras-chave estão reservadas (independentemente do caso) para utilização interna e não devem ser utilizadas como parâmetro personalizado na função 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
  • localização
  • packagekind
  • packageproperties
  • playerresourcespath
  • playersessionid
  • powerappslanguage
  • screencolor
  • sdkversion
  • site
  • skipappmetadata
  • skipiframecreation
  • skiplaunchappcache
  • origem
  • sourcetime
  • standaloneconsent
  • teamid
  • teamtype
  • tenantId
  • theme
  • uselocalpackagehostresources
  • userteamrole

Exemplos

Lançamento Simples

De uma aplicação de tela para uma página Web:

Fórmula Descrição
Launch( "http://bing.com/search",
"q", "Power Apps", "count", 1 )
Abre a página web https://bing.com/search?q=Power%20Apps&count=1. É aberta uma nova janela ou separador.
Launch( "http://bing.com/search",
{ q: "Power Apps", count: 1 } )
O mesmo que os exemplos anteriores ao utilizar a notação de registo equivalente. É aberta uma nova janela ou separador.
Launch( "http://bing.com/search",
{ q: "Power Apps", count: 1 },
LaunchTarget.Replace )
O mesmo que nos exemplos anteriores ao substituir a janela ou o separador real com o resultado se estiver a executar num browser.
Launch( "http://bing.com/search",
{ q: "Power Apps", count: 1 },
"Resultados da Pesquisa" )
O mesmo que o exemplo anterior, criar ou substituir o conteúdo da janela ou do separador denominado Resultados da Pesquisa.

De uma aplicação de tela para uma aplicação de tela

Atualize o ID da aplicação, o nome do ecrã e o número de registo, conforme adequado.

Launch( "/providers/Microsoft.PowerApps/apps/YOUR-APP-ID",
        { Navigate: "Second Screen", Record: 34 }
)

De uma aplicação Web para uma aplicação de tela

Atualize o ID da aplicação, o ID do inquilino, o nome do ecrã e o número de registo, conforme adequado.

<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>

Parâmetro Simples

Os exemplos de inicialização simples acima para iniciar a aplicação de tela a partir de página Web ou a partir de outra aplicação de tela mostram exemplos simples para a função Param:

Fórmula Descrição Resultado
Param( "Navigate" ) O parâmetro Navigate foi fornecido quando a aplicação foi iniciada e devolvida. "Segundo Ecrã"
Param( "Record" ) O parâmetro Record foi fornecido quando a aplicação foi iniciada. Apesar de ter sido transmitido como número para a função Launch, o resultado de Param será uma cadeia de texto que pode ser convertida implícita ou explicitamente para outros tipos. "34"
Param( "User" ) O parâmetro User não foi fornecido. É devolvido um valor blank que pode ser testado com a função IsBlank. em branco

Exemplos Passo a Passo para Launch e Param

O modelo de esquema de tablet Demonstração de Produtos foi utilizado para os exemplos seguintes. Para criar uma aplicação com este modelo, siga os passos de criar uma aplicação e selecione o modelo Demonstração de Produtos. Também pode utilizar a sua própria aplicação.

Exemplo - Launch

  1. Aceder a Power Apps.

  2. Selecione Aplicações no painel de navegação esquerdo.

  3. Selecione a sua aplicação e, em seguida, selecione Editar.

  4. Selecione Inserir a partir do menu e selecione Etiqueta.

  5. Mova a etiqueta para a parte inferior direita do ecrã.

  6. No painel de propriedades no lado direito, selecione Cor como branco e defina a Espessura do limite como 1.

  7. Selecione a propriedade Text do lado direito e introduza texto como Tablets Surface nas notícias.

  8. Na lista de propriedades na parte superior esquerda, selecione OnSelect.

  9. Introduza a fórmula como Launch("https://www.bing.com/news/search","q","Microsoft Surface tablets"). Também pode utilizar qualquer outro URL, parâmetro ou palavras chave que pretender.

    Exemplo de Launch.

  10. Guarde e publique a aplicação.

  11. Executar a aplicação.

  12. Selecione a etiqueta Tablets Surface nas notícias para iniciar a pesquisa de notícias com as palavras-chave Tablets Microsoft Surface.

Gorjeta

Para a escalabilidade, pode substituir as palavras chave inseridas manualmente na função Launch com variáveis.

Exemplo - Param

  1. Aceder a Power Apps.

  2. Selecione Aplicações no painel de navegação esquerdo.

  3. Selecione a sua aplicação e, em seguida, selecione Editar.

  4. Selecione Inserir a partir do menu e selecione Etiqueta.

  5. Mova a etiqueta para a parte inferior direita do ecrã.

  6. Selecione a propriedade Text para a etiqueta na parte superior esquerda.

  7. Introduza a fórmula como Param("browser"). Também pode utilizar um parâmetro diferente à sua escolha.

    Exemplo de Param.

  8. Guarde e publique a aplicação.

  9. Copie a ligação Web para a sua aplicação a partir do Power Apps.

  10. Abra um novo browser.

  11. Cole a ligação Web da aplicação no browser e acrescente &browser=Microsoft%20Edge no final.

    Endereço Web.

  12. Quando a aplicação é iniciada, a etiqueta mostra o valor do parâmetro transmitido.

    Etiqueta de exemplo de Param.

  13. Feche o leitor de aplicações e edite a aplicação.

  14. Selecione Aplicação na vista de árvore na navegação esquerda.

  15. Selecione a propriedade StartScreen na parte superior esquerda.

  16. Introduza a fórmula como If( Param("screen") = "techspecs", TechSpecs ).

    Exemplo de Param para navegação.

    Função If na propriedade StartScreen verifica se o parâmetro é igual a um determinado valor, neste caso o valor techspecs. Se corresponder, devolve o controlo de ecrã TechSpecs à propriedade StartScreen.

    Nota

    Substitua o nome do controlo TechSpecs na função If com o nome de um controlo de ecrã na sua própria aplicação se não estiver a utilizar o modelo de aplicação Demonstração de Produtos.

  17. Guarde e publique a aplicação.

  18. Abra um novo browser.

  19. Cole a ligação Web da aplicação no browser e acrescente &screen=techspecs no final.

    Endereço Web para o ecrã TechSpecs.

  20. A aplicação inicia diretamente com TechSpecs como o ecrã inicial.

Consulte também

Referência de fórmulas de aplicação de tela