Use Power Fx nunha páxina personalizada para a súa aplicación baseada en modelos

Este artigo describe como o común Microsoft Power Fx as funcións funcionan de forma diferente entre unha aplicación de lenzo independente e unha páxina personalizada. Isto débese a que unha páxina personalizada é un compoñente dentro da aplicación dirixida por modelos. Outra Microsoft Power Fx as fórmulas seguen comportándose do mesmo xeito.

Importante

As páxinas personalizadas son unha nova característica con cambios significativos no produto e actualmente teñen unha serie de limitacións coñecidas descritas en Problemas coñecidos das páxinas personalizadas.

Engadir notificacións a unha páxina personalizada

Pódese mostrar unha notificación ao usuario dunha páxina personalizada chamando a Función Notify. Cando aparecen as mensaxes de notificación, están ancoradas sobre a páxina predeterminada para permanecer visibles ata que estean desactivadas. Se se proporciona un intervalo de tempo de espera, a mensaxe de notificación desaparecerá despois do intervalo de tempo de espera. Recoméndase non usar un intervalo de tempo de espera de 10, xa que xa non se considera como un intervalo de tempo de espera. Máis información: Función Notify.

Notify( "Custom page notification message" )

Barra de mensaxes de información de notificación de páxina personalizada

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

Barra de mensaxes de aviso de notificación de páxina personalizada

Esta sección ofrece exemplos de navegar desde un formulario de aplicación baseada en modelos a unha páxina personalizada, navegar desde unha páxina personalizada a outras páxinas personalizadas ou formulario de aplicación baseada en modelos usando Power Fx.

A función Navigate permite aos usuarios navegar desde formularios de aplicacións baseadas en modelos ou páxinas personalizadas. Esta función só é aplicable cando a páxina personalizada está a executarse nunha aplicación baseada en modelos. Durante a creación ou a vista previa de páxinas personalizadas no deseñador de lenzos, esta función non ten efecto.

Para navegar dunha páxina personalizada a outra, pase o nome de visualización da páxina personalizada como primeiro parámetro.

Navigate( CustomPage2  )

Para navegar ata a vista predeterminada da táboa, pase o nome da táboa como primeiro parámetro.

Navigate( Accounts )

Para navegar ata unha vista do sistema específica da táboa, pase o GUID da vista.

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

Para navegar ao formulario predeterminado da táboa, pase o rexistro como primeiro parámetro.

Navigate( Gallery1.Selected )

Para pasar a Dataverse rexistrar a un formulario específico, pase o nome do formulario no atributo Páxina do segundo parámetro.

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

Para pasar a Dataverse rexistrar a unha páxina personalizada específica, pase o nome da páxina personalizada no atributo Páxina do segundo parámetro.

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

Na páxina personalizada de destino, o rexistro requírese mediante Parám función para obter o etn e id valores.

A continuación móstrase un exemplo de carga do rexistro nun ficheiro EditForm control.

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

Para navegar ao formulario predeterminado da táboa en modo de creación, pase un rexistro de Dataverse creado a partir da función Valores predeterminados. Isto abre o formulario predeterminado co rexistro como novo rexistro. A función Defaults leva o nome da táboa para crear o rexistro.

Navigate( Defaults( Accounts ) )

Para navegar a un novo rexistro con algúns campos predeterminados, use Parche función para establecer campos no rexistro predeterminado da táboa.

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

Para volver á última páxina ou para pechar un diálogo, a función Back chámase nunha páxina personalizada. A función Back pecha a páxina actual e volve á última aplicación baseada en modelos ou á páxina personalizada da aplicación baseada en modelos. Se a páxina personalizada ten varias pantallas, consulte o artigo Navegar cara atrás cando a páxina personalizada ten varias pantallas.

Back( )

A configuración predeterminada para unha páxina personalizada é ter unha pantalla. Neste caso, a función Back pechará a páxina personalizada a menos que a páxina personalizada sexa a última do montón de páxinas na aplicación baseada en modelos. A última páxina mantense aberta.

Un creador de aplicacións pode habilitar varias pantallas nunha páxina personalizada. Estes deben considerarse como controis de páxina completa na páxina personalizada que se poden amontoar. Abrir unha páxina personalizada non ten medios para especificar a pantalla que se vai usar. Cando unha páxina personalizada contén varias pantallas, o fabricante é o responsable de xestionar o amontoamento de pantallas. Chamar a función Navigate dunha pantalla engadiraa ao montón de pantallas coa páxina personalizada. Cada chamada da función Back eliminará unha pantalla do montón de pantallas. Cando só hai unha pantalla no montón de pantallas, a páxina personalizada péchase.

Activando varias pantallas

De forma predeterminada, unha páxina personalizada utiliza unha única pantalla para favorecer a separación da aplicación nunha pantalla por páxina. Isto pódese cambiar activando Configuración > Mostrar > Activa varias pantallas.

A páxina personalizada permite varias pantallas

Confirmar función

A función Confirm mostra un cadro de diálogo na parte superior da pantalla actual. Ofrécense dous botóns: un botón de confirmación e un botón de cancelación, que predeterminan as versións localizadas de "Aceptar" e "Cancelar", respectivamente. O usuario debe confirmar ou cancelar antes de rexeitar a caixa de diálogo e a función volve. Ademais do botón de diálogo, cancelar tamén se pode seleccionar coa tecla Esc ou outros xestos específicos da plataforma.

O parámetro Message móstrase no corpo da caixa de diálogo. Se a mensaxe é moi longa, truncarase ou proporcionarase unha barra de desprazamento.

Use o parámetro OptionsRecord para especificar as opcións do cadro de diálogo. Non todas as opcións están dispoñibles en todas as plataformas e manéxanse co mellor esforzo.

Nota

As opcións da táboa seguinte non están dispoñibles actualmente coas aplicacións de lenzo.

Campo de opción Descripción
ConfirmButton O texto que se amosará no botón confirmar, substituíndo o texto "Aceptar" localizado por defecto.
CancelButton O texto que se amosará no botón cancelar, substituíndo o texto "cancelar" localizado por defecto.
Título Texto para mostrar como título da caixa de diálogo. Para amosar este texto pódese usar un tipo de letra máis grande e grosa que a fonte da mensaxe. Se este valor é moi longo, truncarase.
Subtítulo Texto para mostrar como subtítulo da caixa de diálogo. Para amosar este texto pódese usar un tipo de letra máis grande e grosa que a fonte da mensaxe. Se este valor é moi longo, truncarase.

Confirm devolve verdadeiro se se seleccionou o botón de confirmación; en caso contrario, falso.

Sintaxe

Confirm( Message [, OptionsRecord ] )

  • Message: Obrigatorio. Mensaxe para mostrar ao usuario.
  • OptionsRecord: Opcional. Proporcione opcións avanzadas para o diálogo. Non todas as opcións están dispoñibles en todas as plataformas e manéxanse co mellor esforzo. Neste momento, nas aplicacións de lenzo, non se admite ningunha destas opcións.

Problemas coñecidos

  • ONavigate a función non admite abrir un modelo ou unha páxina personalizada nun diálogo. Toda a navegación dunha páxina personalizada ábrese en liña.
  • A función de navegación non admite a apertura:
    • Unha colección de paneles ou un panel específico.
    • Un formulario de aplicación específico dirixido por modelos.
  • Unha páxina personalizada só se pode abrir na pestana da aplicación actual da sesión actual nunha aplicación baseada en modelos de varias sesións.

Consulte tamén

Navegación a unha páxina personalizada mediante a API do cliente

Visión xeral da páxina personalizada dunha aplicación controlada por modelos