Utilizar o Power Fx numa página personalizada para a sua aplicação condicionada por modelo

Este artigo descreve como as funções comuns do Microsoft Power Fx funcionam de forma diferente entre uma aplicação de tela autónoma e uma página personalizada. Isto porque uma página personalizada é um componente dentro da aplicação condicionada por modelo. Outras fórmulas do Microsoft Power Fx continuam a comportar-se da mesma forma.

Importante

As páginas personalizadas são uma nova funcionalidade com alterações significativas do produto e têm atualmente uma série de limitações conhecidas delineadas em Problemas conhecidos da página personalizada.

Adicionar modificações a uma página personalizada

Uma notificação pode ser mostrada ao utilizador numa página personalizada, ativando a função Notificar. Quando as mensagens de notificação aparecem, estão ancoradas acima da página predefinida para permanecerem visíveis até serem desativadas. Se for fornecido um intervalo de tempo, a mensagem de notificação desaparecerá após o intervalo de tempo. Recomenda-se a não utilização de um intervalo de tempo de 10, uma vez que este já não é considerado como intervalo de tempo. Mais informações: Função Notificar.

Notify( "Custom page notification message" )

Barra de mensagens de informação de notificação de página personalizada

Notify( "Custom page notify warning message", NotificationType.Warning )

Barra de mensagens de aviso de notificação de página personalizada

Esta secção fornece exemplos de navegação de um formulário de aplicação condicionada por modelo para uma página personalizada, navegando de uma página personalizada para outras páginas personalizadas ou formulário de aplicação condicionada por modelo utilizando o Power Fx.

A função Navegar permite que os utilizadores naveguem a partir de formulários de aplicações condicionadas por modelo ou de páginas personalizadas. Esta função só é aplicável quando a página personalizada está a ser executada dentro de uma aplicação condicionada por modelos. Durante a criação da página personalizada ou pré-visualização no designer de tela, esta função não tem efeito.

Para navegar de uma página personalizada para outra, passe o nome a apresentar da página personalizada como o primeiro parâmetro.

Navigate( CustomPage2  )

Para navegar para a vista predefinida da tabela, transmita o nome da tabela como primeiro parâmetro.

Navigate( Accounts )

Importante

Certifique-se de que adiciona a tabela de contas Microsoft Dataverse à página personalizada antes de publicar e testar.

Para navegar para uma vista do sistema específico da tabela, passe o GUID da vista.

Navigate( 'Accounts (Views)'.'My Active Accounts' )

Para navegar para o formulário predefinido da tabela, passe o registo como o primeiro parâmetro.

Navigate( Gallery1.Selected )

Para passar um registo do Dataverse para um formulário específico, passe o nome do formulário no atributo Page do segundo parâmetro.

Navigate( 
  AccountGallery.Selected, 
  { Page: 'Accounts (Forms)'.Account  } )

Para passar um registo do Dataverse para uma página personalizada específica, passe 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 registo é obtido utilizando a função Param para obter os valores etn e id.

Abaixo pode ver um exemplo de carregamento do registo para um controlo EditForm.

AccountEditForm.DataSource = Accounts
AccountEditForm.Item = 
  LookUp( Accounts, accountid = GUID( Param("id") ) )

Para navegar para o formulário predefinido da tabela no modo de criação, passe um registo do Dataverse criado a partir da função Predefinições. Isto abre o formulário predefinido com o registo como um novo registo. A função Predefinições fica com o nome da tabela para criar o registo.

Navigate( Defaults( Accounts ) )

Para navegar para um novo registo com alguns campos com valor assumido por predefinição, utilize a função Patch para definir os campos no registo predefinido para a tabela.

Navigate(
    Patch(
        Defaults(Accounts), { 'Account Name': "My company", Phone: "555-3423" } ) 
  )

Para navegar novamente para a última página ou para fechar um diálogo, é ativada a função Anterior numa página personalizada. A função Anterior fecha a página atual e regressa à última aplicação condicionada por modelo ou página personalizada na aplicação condicionada por modelo. Se a página personalizada tiver vários ecrãs, consulte o artigo Navegar para a página anterior quando a página personalizada tiver vários ecrãs.

Back()

A configuração predefinida para uma página personalizada é ter um ecrã. Neste caso, a chamada de função Anterior fechará a página personalizada a menos que a página personalizada seja a última na pilha de páginas na aplicação condicionada por modelo. A última página é mantida aberta.

Um criador de aplicações pode ativar vários ecrãs numa página personalizada. Estas devem ser consideradas como comandos de página completa dentro da página personalizada que podem ser empilhadas. A abertura de uma página personalizada não tem meios para especificar o ecrã a utilizar. Quando uma página personalizada contém vários ecrãs, o criador é responsável pela gestão do empilhamento do ecrã. Ativar a função Navegar num ecrã irá adicionar à pilha de ecrã com a página personalizada. Cada chamada de função Anterior removerá um ecrã da pilha de ecrã. Quando há apenas um ecrã na pilha de ecrã, a página personalizada está fechada.

Ativar vários ecrãs

Por predefinição, uma página personalizada utiliza um único ecrã para incentivar a separação da aplicação num ecrã por página. Isto pode ser alterado ao ativar Definições > Ecrã > Ativar vários ecrãs.

Página personalizada para ativar vários ecrãs

Problemas conhecidos

  • A função Navigate não tem suporte para abrir um modelo ou página personalizada para uma caixa de diálogo. Toda a navegação a partir de uma página personalizada é aberta inline.
  • A função de navegação não suporta a abertura:
    • Uma coleção de dashboards ou um dashboard específico.
    • Um formulário específico de aplicação condicionada por modelo.
  • Uma página personalizada só pode ser aberta no separador de aplicação atual da sessão atual numa aplicação condicionada por modelo de várias sessões.

Consulte também

Navegar para uma página personalizada utilizando a API de cliente

Descrição geral da página personalizada de uma aplicação condicionada por modelo