Compartir a través de


Usar Power Fx en una página personalizada para su aplicación basada en modelo

Este artículo describe cómo las funciones de Microsoft Power Fx comunes funcionan de manera diferente entre una aplicación de lienzo independiente y una página personalizada. Esto se debe a que una página personalizada es un componente dentro de la aplicación basada en modelos. Otras fórmulas de Microsoft Power Fx continúan comportándose de la misma manera.

Importante

Las páginas personalizadas son una nueva característica con cambios significativos en el producto y actualmente tienen una serie de limitaciones conocidas descritas en Problemas conocidos de la página personalizada.

Agregar notificaciones a una página personalizada

Se puede mostrar una notificación al usuario en una página personalizada llamando a la Función de notificación. Cuando aparecen los mensajes de notificación, se colocan encima de la página predeterminada para permanecer visibles hasta que se deshabiliten. Si se proporciona un intervalo de tiempo de espera, el mensaje de notificación desaparecerá después del intervalo de tiempo de espera. Se recomienda no utilizar un intervalo de tiempo de espera de 10, ya que ya no se considera un intervalo de tiempo de espera. Más información: Función Notify.

Notify( "Custom page notification message" )

Barra de mensajes de información de notificación de página personalizada

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

Barra de mensajes de advertencia de notificación de página personalizada

Esta sección proporciona ejemplos de cómo navegar desde un formulario de aplicación basado en modelo a una página personalizada, navegar desde una página personalizada a otras páginas personalizadas o formulario de aplicación basado en modelo usando Power Fx.

La función de navegación permite a los usuarios navegar desde formularios de aplicaciones basados en modelos o desde páginas personalizadas. Esta función solo es aplicable cuando la página personalizada se ejecuta dentro de una aplicación basada en modelos. Durante la creación de páginas personalizadas o la vista previa en el diseñador de lienzo, esta función no tiene ningún efecto.

Para navegar de una página personalizada a otra, pase el nombre de la página personalizada como primer parámetro.

Navigate( CustomPage2  )

Para navegar a la vista predeterminada de la tabla, pase el nombre de la tabla como primer parámetro.

Navigate( Accounts )

Importante

Asegúrese de agregar la tabla de cuentas Microsoft Dataverse a la página personalizada antes de publicar y probar.

Para navegar a un vista del sistema específica de la tabla, pase el GUID de la vista.

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

Para navegar al formulario predeterminado de la tabla, pase el registro como primer parámetro.

Navigate( Gallery1.Selected )

Para pasar un Dataverse registro en un formulario específico, pase el nombre del formulario en el atributo Página del segundo parámetro.

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

Para pasar un Dataverse registro en una página personalizada específica, pase el nombre del formulario en el atributo Página del segundo parámetro.

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

En la página personalizada de destino, el registro se recupera mediante la característica Param para obtener los valores etn e id.

A continuación se muestra un ejemplo de cómo cargar el registro en un control EditForm.

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

Para navegar a la forma predeterminada de la tabla en modo de creación, pase un registro Dataverse creado a partir de la función Defaults. Esto abre el formulario predeterminado con el registro como un nuevo registro. La función Defaults toma el nombre de la tabla para crear el registro.

Navigate( Defaults( Accounts ) )

Para navegar a un nuevo registro con algunos campos predeterminados, use la función Parche para establecer campos en el registro predeterminado de la tabla.

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

Para volver a la última página o cerrar un cuadro de diálogo, la función Atrás se llama en una página personalizada. La función Atrás cierra la página actual y vuelve a la última aplicación basada en modelo o página personalizada en la aplicación basada en modelo. Si la página personalizada tiene varias pantallas, consulte el artículo Navegar hacia atrás cuando la página personalizada tiene varias pantallas.

Back()

La configuración predeterminada para una página personalizada es tener una pantalla. En este caso, la llamada a la función Atrás cerrará la página personalizada a menos que la página personalizada sea la última en la pila de páginas en la aplicación basada en modelos. La última página se mantiene abierta.

Un fabricante de aplicaciones puede habilitar varias pantallas en una página personalizada. Estos deben considerarse como controles de página completa dentro de la página personalizada que se pueden apilar. Abrir una página personalizada no tiene ningún medio de especificar la pantalla que se utilizará. Cuando una página personalizada contiene varias pantallas, el fabricante es responsable de administrar el apilamiento de pantallas. Llamara a la función Navegar a una pantalla se agregará a la pila de pantallas con la página personalizada. Cada llamada a la función Atrás eliminará una pantalla de la pila de pantallas. Cuando solo hay una pantalla en la pila de pantallas, la página personalizada se cierra.

Habilitar varias pantallas

De forma predeterminada, una página personalizada utiliza una sola pantalla para fomentar la separación de la aplicación en una pantalla por página. Esto se puede cambiar habilitando Ajustes > Presentación > Habilitar varias pantallas.

Página personalizada para habilitar varias pantallas

Problemas conocidos

  • La función Navigate no permite abrir un modelo o una página personalizada en un cuadro de diálogo. Toda la navegación desde una página personalizada se abre en línea.
  • La función Navigate no permite abrir:
    • Una colección de paneles o un panel específico.
    • Un formulario de aplicación basada en modelo específico.
  • Una página personalizada solo se puede abrir en la pestaña de la aplicación actual de la sesión actual en una aplicación basada en modelos de múltiples sesiones.

Consulte también

Navegar hacia y desde una página personalizada con la API de cliente

Información general sobre páginas personalizadas de aplicación basada en modelo