Usar o Power Fx em uma página personalizada para o aplicativo baseado em modelo
Este artigo descreve como as funções comuns do Microsoft Power Fx operam de forma diferente entre aplicativos de tela independentes e uma página personalizada. Isso ocorre porque uma página personalizada é um componente do aplicativo baseado em modelo. Outras fórmulas do Microsoft Power Fx continuam a se comportar da mesma maneira.
Importante
As páginas personalizadas são um novo recurso com mudanças significativas no produto e atualmente têm uma série de limitações conhecidas descritas em Problemas Conhecidos da Página Personalizada.
Adicionar notificações a uma página personalizada
Uma notificação pode ser mostrada ao usuário em uma página personalizada chamando a função de notificação. Quando as mensagens de notificação aparecem, elas são encaixadas acima da página padrão para permanecerem visíveis até serem desativadas. Se um intervalo de tempo limite for fornecido, a mensagem de notificação desaparecerá após o intervalo de tempo limite. Recomenda-se não usar um intervalo de tempo limite de 10, pois isso não é mais considerado um intervalo de tempo limite. Para obter mais informações: função Notify.
Notify( "Custom page notification message" )
Notify( "Custom page notify warning message", NotificationType.Warning )
Navegar para uma página personalizada
Esta seção fornece exemplos de navegação de um formulário de aplicativo baseado em modelo para uma página personalizada, navegando de uma página personalizada para outras páginas personalizadas ou formulário de aplicativo baseado em modelo usando Power Fx.
Navegando em uma página personalizada
A função Navigate permite que os usuários naveguem em formulários de aplicativos baseados em modelo ou páginas personalizadas. Esta função é aplicável apenas quando a página personalizada está em execução em um aplicativo baseado em modelo. Durante a criação ou a visualização da página customizada no designer de tela, esta função não tem efeito.
Navegar para outra página personalizada
Para navegar de uma página personalizada para outra, passe o nome de exibição da página personalizada como o primeiro parâmetro.
Navigate( CustomPage2 )
Navegar até a exibição padrão da tabela
Para navegar até a visualização padrão da tabela, passe o nome da tabela como o primeiro parâmetro.
Navigate( Accounts )
Importante
Certifique-se de adicionar a tabela de contas do Microsoft Dataverse à página personalizada antes de publicar e testar.
Navegar até a exibição do sistema específico da tabela
Para navegar até uma exibição do sistema específica da tabela, passe o GUID da exibição.
Navigate( 'Accounts (Views)'.'My Active Accounts' )
Navegar até a forma padrão da tabela
Para navegar até o formulário padrão da tabela, transmita o registro como o primeiro parâmetro.
Navigate( Gallery1.Selected )
Navegue até um formulário específico de uma tabela
Para transmitir um registro do Dataverse para um formulário específico, transmita o nome do formulário no atributo Page do segundo parâmetro.
Navigate(
AccountGallery.Selected,
{ Page: 'Accounts (Forms)'.Account } )
Navegue até uma página personalizada específica com uma entrada de registro
Para transmitir um registro do Dataverse para uma página personalizada específica, transmita o nome da página personalizada no atributo Page do segundo parâmetro.
Navigate(
AccountGallery.Selected,
{ Page: 'Account Record Page' } )
Na página personalizada de destino, o registro é recuperado usando a função Param para obter os valores etn e id.
Veja abaixo um exemplo de carregamento do registro em um controle EditForm.
AccountEditForm.DataSource = Accounts
AccountEditForm.Item =
LookUp( Accounts, accountid = GUID( Param("id") ) )
Navegar até a forma padrão da tabela no modo de criação
Para navegar até o formulário padrão da tabela no modo de criação, transmita um registro do Dataverse criado a partir da função Defaults. Isso abrirá o formulário padrão com o registro como um novo registro. A função Defaults usa o nome da tabela para criar o registro.
Navigate( Defaults( Accounts ) )
Navegue até a forma padrão da tabela no modo de criação com o campo padronizado
Para navegar para um novo registro com alguns campos padronizados, use a função Patch para definir campos no registro padrão da tabela.
Navigate(
Patch(
Defaults(Accounts), { 'Account Name': "My company", Phone: "555-3423" } )
)
Navegar de volta para a página anterior ou fechar uma caixa de diálogo
Para navegar de volta para a última página ou para fechar uma caixa de diálogo, a função Back é chamada em uma página personalizada. A função Back fecha a página atual e retorna para o último aplicativo baseado em modelo ou página personalizada no aplicativo baseado em modelo. Se a página personalizada tiver várias telas, consulte o artigo Navegar de volta quando a página personalizada tiver várias telas.
Back()
Navegar de volta quando a página personalizada tiver várias telas
A configuração padrão para uma página personalizada é ter uma tela. Nesse caso, a chamada de função Back fechará a página personalizada, a menos que a página personalizada seja a última na pilha de páginas no aplicativo baseado em modelo. A última página é mantida aberta.
Um criador de aplicativos pode habilitar várias telas em uma página personalizada. Devem ser consideradas como controles de página inteira dentro da página personalizada que podem ser empilhadas. Abrir uma página personalizada não significa especificar a tela a ser usada. Quando uma página personalizada contém várias telas, o fabricante é responsável por gerenciar o empilhamento de telas. Chamar a função Navegar a uma tela adicionará à pilha de telas com a página personalizada. Cada chamada de função Back removerá uma tela da pilha de telas. Quando houver apenas uma tela na pilha de telas, a página personalizada será fechada.
Habilitar várias telas
Por padrão, uma página personalizada usa uma única tela para incentivar a separação do aplicativo em uma tela por página. Isso pode ser alterado ativando Configurações > Exibir > Habilitar várias telas.
Problemas conhecidos
- A função
Navigate
não tem suporte para abrir um modelo ou página personalizada para um diálogo. Toda a navegação de uma página personalizada é aberta em linha. - A função Navegar não dá suporte para abrir:
- Uma coleção de painel ou um painel específico.
- Um formulário de aplicativo baseado em modelo específico.
- Uma página personalizada só pode ser aberta na guia do aplicativo atual da sessão atual em um aplicativo baseado em modelo de várias sessões.
Veja também
Navegar para uma página personalizada usando a API do cliente
Visão geral da página personalizada do aplicativo baseado em modelo