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" )
Notify( "Custom page notify warning message", NotificationType.Warning )
Navegar para uma 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.
Navegar de uma página personalizada
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.
Navegar para outra página personalizada
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 )
Navegue para a vista predefinida da tabela
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.
Navegue para uma vista do sistema específico da tabela
Para navegar para uma vista do sistema específico da tabela, passe o GUID da vista.
Navigate( 'Accounts (Views)'.'My Active Accounts' )
Navegue para o formulário predefinido da tabela
Para navegar para o formulário predefinido da tabela, passe o registo como o primeiro parâmetro.
Navigate( Gallery1.Selected )
Navegar para uma forma específica de tabela
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 } )
Navegar para uma página personalizada específica com uma entrada de registo
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") ) )
Navegue para o formulário predefinido da tabela no modo de criação
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 ) )
Navegue para o formulário predefinido da tabela no modo de criação com o campo assumido como predefinição
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" } )
)
Volte para a página anterior ou feche um diálogo
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()
Navegar para a página anterior quando a página personalizada tiver vários ecrãs
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.
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