Funções Launch e Param

Aplica-se a: Aplicativos de tela

Inicia uma página da Web ou um aplicativo de tela e fornece acesso aos parâmetros de inicialização.

Launch

Inicia uma página da Web ou um aplicativo de tela. A função oferece suporte a:

  • Endereço (obrigatório), o URL da página da Web ou o URI do Aplicativo (id do aplicativo prefixado com /providers/Microsoft.PowerApps/apps/) do aplicativo de tela.
  • Parâmetros (opcional), valores nomeados a serem transmitidos para o aplicativo de página da Web ou tela. Em um aplicativo de tela, os parâmetros podem ser lidos com a função Param.
  • Alvo (opcional), a guia do navegador na qual iniciar a página da Web ou o aplicativo de tela.

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

Endereço

As páginas da Web são iniciadas por meio de um endereço de URL. Por exemplo:

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

Você pode iniciar aplicativos de tela com Link da Web ou URI do Aplicativo (id do aplicativo prefixado com o /providers/Microsoft.PowerApps/apps/). Para encontrar esses valores para um aplicativo:

  1. Vá para Power Apps.

  2. Selecione Aplicativos no painel de navegação esquerdo.

  3. Selecione seu aplicativo.

  4. Selecione Detalhes no menu superior.
    Você também pode selecionar ... (Mais Comandos) e selecione Detalhes no menu suspenso.

    Opção de detalhes do aplicativo.

  5. Copiar link da Web ou ID do aplicativo.

    Detalhes do aplicativo com link da web e ID do aplicativo.

O link da Web pode ser usado em qualquer página da web e iniciará o aplicativo de tela. Também pode ser usado com a função Launch.

A ID do aplicativo pode ser usada com a função Launch, mas deve ser prefixada com /providers/Microsoft.PowerApps/apps/. Por exemplo:

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

Aplicativos nativos em um dispositivo não podem ser iniciados diretamente. Pode haver opções indiretas disponíveis em algumas plataformas, como um aplicativo nativo que instala um esquema de URL personalizado ou se registra no navegador da Web para oferecer uma opção para sites específicos.

Parâmetros

Launch pode passar parâmetros para a página da Web ou aplicativo de tela. Parâmetros podem ser oferecidos de duas maneiras:

  • Uma lista de argumentos de pares de valores de nomes. Por exemplo:

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

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

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

O endereço e os parâmetros são codificados em URL antes de serem passados para substituir certos caracteres não alfanuméricos por % e um número hexadecimal como se a função EncodeUrl foi usada em cada um.

Ao iniciar uma página da Web, uma cadeia de caracteres de consulta de parâmetros pode ser incluída no final do endereço da URL. Quaisquer parâmetros adicionais fornecidos para Launch será adicionado ao final da cadeia de caracteres de consulta. As cadeias de consulta não funcionam ao iniciar um aplicativo de tela.

Ao iniciar um aplicativo em um dispositivo móvel no qual o aplicativo já está em execução, os parâmetros não serão atualizados no aplicativo em execução. Uma recarga do aplicativo é necessária para que os parâmetros sejam atualizados.

Destino

Use o argumento LaunchTarget para especificar a janela do navegador de destino na qual abrir a página da Web ou aplicativo. Use um dos seguintes valores de enumeração LaunchTarget ou forneça uma janela personalizada nome.

Enumeração LaunchTarget Descrição
New A página da Web ou aplicativo é aberto em uma nova janela ou guia.
Replace A página da Web ou aplicativo substitui a janela ou guia atual.
nome Em vez de um valor de enumeração, use sua própria cadeia de texto para a janela ou guia nome. Self é um nome interno usado apenas pela função Launch. Não tem impacto nem corresponderá ao título da janela que seus usuários veem. Se uma janela ou guia com o determinado nome já existir, seu conteúdo será substituído. Caso contrário, uma nova janela ou guia será criada. nome não pode começar com o caractere sublinhado "_".

New é a enumeração padrão ao executar em um navegador da Web com Replace e name como opções disponíveis. Em um player móvel, Novo é o padrão para páginas da Web com nome como opção disponível, enquanto o aplicativo de tela atual sempre será substituído por outro aplicativo de tela.

Nota

  • Usar um LaunchTarget com qualquer valor diferente de Novo em cenários incorporados (por exemplo, Power BI ou SharePoint) não é compatível e pode resultar em um comportamento inesperado. No futuro, esse comportamento pode mudar ou causar um erro.

Param

A função Param recupera um parâmetro passado ao aplicativo quando ele foi iniciado. Se o parâmetro nomeado não tiver sido passado, Param retorna em branco.

  • Ao iniciar um aplicativo de tela de outro aplicativo de tela, use o argumento Parâmetro para a função Launch. Os nomes e valores dos parâmetros serão automaticamente codificados em URL.
  • Ao iniciar um aplicativo de tela a partir de uma página da Web, adicione parâmetros à cadeia de consulta do link da Web do aplicativo de tela. Isso envolve adicionar &parametername=parametervalue assumindo que a cadeia de consulta já foi iniciada para o tenantId. Por exemplo, adicionando &First%20Name=Vicki&category=3 passaria dois parâmetros: First Name com um valor de "Vicki" e category com um valor de "3" (o tipo de valor é texto). O nome e o valor do parâmetro devem ser codificados em URL se contiverem espaços ou caracteres especiais, semelhante ao uso da função EncodeURL.
  • Os nomes Param diferenciam maiúsculas e minúsculas.
  • Os nomes e valores dos parâmetros serão automaticamente decodificados por URL para uso no seu aplicativo.
  • Os valores dos parâmetros não mudam, a menos que o aplicativo seja recarregado. Usar Iniciar em um dispositivo móvel onde o aplicativo já está em execução não atualiza os parâmetros.
  • Mesmo que o parâmetro contenha um número, o tipo retornado por Param sempre será uma sequência de texto. A conversão para outros tipos ocorrerá automaticamente ou usará conversões explícitas, como a função Value para converter explicitamente em um número.

Observação

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

Sintaxe

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

  • Address - obrigatório. O endereço de uma página da Web ou a ID de um aplicativo a ser iniciado.
  • ParameterName(s) - opcional. Nome do parâmetro.
  • ParameterValue(s) - opcional. Os valores de parâmetro correspondentes a serem passados para o aplicativo ou a página da Web.

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

  • Address - obrigatório. O endereço de uma página da Web ou a ID de um aplicativo a ser iniciado.
  • ParameterName(s) - opcional. Nome do parâmetro.
  • ParameterValue(s) - opcional. Os valores de parâmetro correspondentes a serem passados para o aplicativo ou a página da Web.
  • LaunchTarget - opcional. Um valor de enumeração LaunchTarget ou um nome personalizado.

Param( ParameterName )

  • ParameterName - obrigatório. O nome do parâmetro passado para o aplicativo.

Parâmetros reservados

As seguintes palavras-chave são reservadas (independentemente do uso de maiúsculas e minúsculas) para uso interno e não devem ser usadas como um 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
  • fonte
  • sourcetime
  • standaloneconsent
  • teamid
  • teamtype
  • tenantId
  • theme
  • uselocalpackagehostresources
  • userteamrole

Exemplos

Lançamento simples

De um aplicativo de tela para uma página da Web:

Fórmula Description
Launch( "http://bing.com/search",
"q", "Power Apps", "count", 1 )
Abre a página da Web https://bing.com/search?q=Power%20Apps&count=1. Uma nova janela ou guia é aberta.
Launch( "http://bing.com/search",
{ q: "Power Apps", count: 1 } )
O mesmo que os exemplos anteriores usando a notação de registro equivalente. Uma nova janela ou guia é aberta.
Launch( "http://bing.com/search",
{ q: "Power Apps", count: 1 },
LaunchTarget.Replace )
O mesmo que os exemplos anteriores, substituindo a janela ou guia atual pelo resultado, se estiver sendo executado em um navegador da Web.
Launch( "http://bing.com/search",
{ q: "Power Apps", count: 1 },
"Resultados da pesquisa" )
O mesmo que o exemplo anterior, criando ou substituindo o conteúdo da janela ou guia denominada Procurar resultados.

De um aplicativo de tela para um aplicativo de tela

Atualize a ID do aplicativo, o nome da tela e o número do registro, conforme apropriado.

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

A partir de uma página da Web para um aplicativo de tela

Atualize a ID do aplicativo, o ID do locatário, o nome da tela e o número do registro, conforme apropriado.

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

Exemplos de lançamento simples acima para iniciar o aplicativo de tela da página da Web ou de outro aplicativo de tela mostram exemplos simples para a função Param:

Fórmula Descrição Resultado
Param( "Navigate" ) O parâmetro Navigate foi fornecido quando o aplicativo foi iniciado e retornado. "Segunda tela"
Param( "Record" ) O parâmetro Record foi fornecido quando o aplicativo foi iniciado. Mesmo que tenha sido passado como um número para a função Launch, o resultado de Param será uma sequência de texto que pode ser convertida implícita ou explicitamente em outros tipos. "34"
Param( "User" ) O parâmetro User não foi fornecido. Um valor em branco é retornado e pode ser testado com a função IsBlank. blank

Exemplos passo a passo para Launch e Param

O modelo de layout de tablet Demonstração de Produto foi usado nos exemplos a seguir. Para criar um aplicativo com este modelo, siga as etapas no artigo criar um aplicativo e selecione o modelo Demonstração de Produto. Você também pode usar seu próprio aplicativo.

Exemplo - Launch

  1. Vá para Power Apps.

  2. Selecione Aplicativos no painel de navegação esquerdo.

  3. Selecione o seu aplicativo e, depois, Editar.

  4. Selecione Inserir e, no menu, selecione Rótulo.

  5. Mova o rótulo para a parte inferior direita da tela.

  6. No painel de propriedades à direita, selecione Cor como branco e defina Espessura da borda como 1.

  7. Selecione a propriedade Text do lado direito e insira o texto como Tablets Surface em novidades.

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

  9. Insira a fórmula como Launch("https://www.bing.com/news/search","q","Microsoft Surface tablets"). Você também pode usar outro URL, parâmetro e teclas de sua preferência.

    Exemplo de Launch.

  10. Salve e publique o aplicativo.

  11. Reproduza o aplicativo.

  12. Selecionar etiqueta Tablets Surface em novidades para iniciar a pesquisa de notícias com palavras-chave Tablets Microsoft Surface.

Gorjeta

Para escalabilidade, você pode substituir as palavras-chave inseridas manualmente na função Launch por variáveis.

Exemplo - Param

  1. Vá para Power Apps.

  2. Selecione Aplicativos no painel de navegação esquerdo.

  3. Selecione o seu aplicativo e, depois, Editar.

  4. Selecione Inserir e, no menu, selecione Rótulo.

  5. Mova o rótulo para a parte inferior direita da tela.

  6. Selecione a propriedade Text para o rótulo do canto superior esquerdo.

  7. Insira a fórmula como Param("browser"). Você também pode usar um parâmetro diferente de sua escolha.

    Exemplo de Param.

  8. Salve e publique o aplicativo.

  9. Cópia de link da Web para o seu aplicativo de Power Apps.

  10. Abrir um novo navegador.

  11. Cole o link da Web do aplicativo no navegador e acrescente &browser=Microsoft%20Edge no fim.

    Endereço da Web.

  12. Quando o aplicativo é iniciado, o rótulo mostra o valor do parâmetro passado.

    Rótulo de exemplo de Param.

  13. Feche o reprodutor do aplicativo e edite o aplicativo.

  14. Selecione Aplicativo na visualização em árvore na navegação à esquerda.

  15. Selecione a propriedade StartScreen no canto superior esquerdo.

  16. Insira 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; nesse caso, o valor especificações técnicas. E se corresponder, retorna o controle de tela Especificações técnicas para a propriedade StartScreen.

    Observação

    Substitua o nome de controle TechSpecs na função If pelo nome de um controle de tela em seu próprio aplicativo, se estiver usando o modelo de aplicativo Demonstração do Produto.

  17. Salve e publique o aplicativo.

  18. Abrir um novo navegador.

  19. Cole o link da Web do aplicativo no navegador e acrescente &screen=techspecs no fim.

    Endereço da Web para a tela TechSpecs.

  20. O aplicativo é iniciado diretamente com Especificações técnicas como a tela inicial.

Confira também

Referência de fórmula do aplicativo de tela