Nota
L'accés a aquesta pàgina requereix autorització. Podeu provar d'iniciar la sessió o de canviar els directoris.
L'accés a aquesta pàgina requereix autorització. Podeu provar de canviar els directoris.
Aquest article tracta sobre aspectes del Power Fx específics del comandament. Moltes altres funcions que s'utilitzen avui dins de les aplicacions del llenç també es poden utilitzar. Tingueu en compte que hi ha diferències, perquè el comandament és per a les aplicacions basades en models.
- Totes les funcions de flux de dades existents estan admeses. Què són els fluxos de dades?
- S'admeten funcions imperatius que funcionen amb dades.
- Funcions imperatives per a senzilles
ConfirmiNotifysón compatibles. - Per obtenir una llista de funcions no admeses, aneu a Funcions no admeses.
Nota
La publicació Power Fx d'ordres pot trigar uns minuts. Pot ser que no sigui obvi que les operacions en segon pla continuïn executant-se fins i tot després que sembli que l'operació de publicació s'ha completat. És possible que hàgiu d'esperar uns minuts després de publicar-la i, a continuació, actualitzar l'aplicació per veure els canvis reflectits. Aquesta operació sol trigar més la primera vegada que es publica una Power Fx ordre basada per a una aplicació.
OnSelect
Defineix la lògica que s'executa quan se selecciona el botó dins de l'aplicació.
Visible
Defineix la lògica per amagar o mostrar el botó quan s'executa l'aplicació.
Per definir la lògica de visibilitat, seleccioneu l'ordre. A continuació, seleccioneu Visibilitat a la subfinestra de propietats de l'ordre dreta i trieu Mostra en condició des de la fórmula. Podeu seleccionar Visible a l'esquerra de la barra de fórmules i escriure una Power Fx expressió utilitzant la barra de fórmules.
Propietat seleccionada
| Camp | Type | Descripció |
|---|---|---|
| Element | Registre de DataSource | Un dels registres seleccionats de DataSource. |
| AllItems | Taula de registres de DataSource | Tots els registres seleccionats de DataSource. |
| Estat o província | Enumeració | Obtén l'estat de l'ordre seleccionada. Edita (=0), Crea (=1), Visualitza (=2) |
| No s'ha desat | booleà | Torna true si els elements seleccionats o seleccionats tenen canvis no desats. En cas contrari, retorna false. Sempre torna false si el desat automàtic està definit com a cert (opció per defecte) a la biblioteca del component d'ordres. |
- La propietat Selected és proporcionada per l'amfitrió de l'ordre.
- Els noms Item i AllItems són una mica coherents amb el control ComboBox i el control Gallery, però aquest és un patró nou.
- Si no hi ha cap registre seleccionat, Item retorna Blank (IsBlank retorna true) i AllItems retorna una taula buida (IsEmpty retorna true).
- DataSource nul per a referències de registres (tipus de registres polimòrfics). Es poden fer trucades a funcions genèriques, com ara Desa o IsType/AsType.
- L'element sempre està en blanc si SelectionMax<> 1. Això impedeix l'escriptura de fórmules en un sol element i no escalar a més d'un.
Desament automàtic
- Moltes ordres de JavaScript s'inicien desant la memòria intermèdia del formulari. Això es deu a que fa que la resta del codi sigui més fàcil de treballar.
- Per defecte, la memòria intermèdia del formulari es desa en nom del creador de l'aplicació.
- El formulari es desa abans d'iniciar l'ordre.
- Els problemes que es produeixen durant l'operació de desar es tracten dins de la interfície d'usuarisi del formulari.
Funció Patch
Connecta (actualitza) amb el registre seleccionat actual
Patch(Accounts, Self.Selected.Item, {'Account Name': "Changed Account name"})
Crea un registre relacionat
Nota
Si la taula relacionada encara no es troba a la biblioteca de components d'ordres, heu d'obrir-la a canvas studio i afegir-hi la font de dades.
Patch(Tasks,Defaults(Tasks),{Regarding:Self.Selected.Item},{Subject:"Subject of the Task"})
Comprovar i editar una propietat de data
If(Self.Selected.Item.'Last Date Included in Campaign'>DateAdd(Now(),-3), Patch(Accounts,Self.Selected.Item,{'Last Date Included in Campaign':Date(2021,10,19)}))
Propietat visible: mostra només l'ordre si se seleccionen un o més registres en una visualització de quadrícula
CountRows(Self.Selected.AllItems) > 0
Controlar la visibilitat a partir de les dades de registres
//Button will be visible for accounts with Account Rating > 20
Self.Selected.Item.'Account Rating'>20
Navega
Nota
Per opcions addicionals, vegeu la referència de l'API de client per utilitzar JavaScript. Més informació: navigateTo (referència de l'API de client)
Navegar cap una pàgina personalitzada
Per anar a una pàgina de llenç personalitzada dins d'una aplicació basada en el model, passeu el nom de la pàgina com a primer argument.
Navigate( myCustomPage )
Anar a la visualització per defecte de la taula
Per anar a la visualització per defecte de la taula, passeu el nom de la taula com a primer argument.
Navigate( Accounts )
Anar a la visualització del sistema específica de la taula
Per navegar a una visualització específica del sistema de la taula, passeu l'enumeració de Views la taula.
Navigate( 'Accounts (Views)'.'My Active Accounts' )
Anar al formulari per defecte de la taula
Per anar al formulari per defecte de la taula, passeu el registre de la taula com a primer argument.
Navigate( Gallery1.Selected )
Anar al formulari per defecte de la taula en mode de creació
Per navegar a la forma per defecte de la taula, passeu un Dataverse registre creat des de la funció Defaults . S'obrirà el formulari per defecte amb el registre com un registre nou. La funció Per defecte pren el nom de la taula per crear el registre.
Navigate( Defaults( Accounts ) )
Optimitzeu l'experiència de l'usuari amb informació de fonts de dades i registres
Utilitzeu la funció DataSourceInfo i la funció RecordInfo per optimitzar l'experiència de l'usuari amb informació sobre les dades que es mostren i manipulen.
Per exemple, utilitzeu RecordInfo per determinar si l'usuari actual té permís per modificar un registre i mostrar o amagar adequadament un botó "Edita" mitjançant la seva propietat Visible :
EditButton.Visible =
RecordInfo( Gallery1.Selected, RecordInfo.EditPermission )
Per exemple, utilitzeu DataSourceInfo per determinar si l'usuari actual té permís per crear un registre i mostrar o amagar adequadament un botó "Crea" mitjançant la seva propietat Visible :
CreateButton.Visible =
DataSourceInfo( Accounts, DataSourceInfo.CreatePermission )
Demanar confirmació abans de prendre mesures
Utilitzeu la funció Confirma per mostrar un quadre de diàleg a la part superior de la pantalla actual.
Notify( Confirm( "Are you sure?",
{ ConfirmButton: "Yes", CancelButton: "No" }
)
)
Mostra una notificació true si es prem el botó Sí i una notificació false si es prem el botó No .
Notificar a l'usuari
Es pot mostrar una notificació als usuaris de l'aplicació cridant a la funció Notifica.
Nota
NotificationType.Success actualment no s'admet i dóna lloc a un tipus de notificació informativa.
Notify( "Model-driven app notification message" )
Altres exemples
Inicia un URL
Launch("https://www.bing.com");
Accedir a la propietat 1:N
Self.Selected.Item.'Recurring Appointments'
Comprovar la propietat d'un registre relacionat
Self.Selected.Item.'Parent Account'.'Account Name'="parent"
Funcions disponibles amb comandament
Per obtenir informació sobre les fórmules admeses amb les ordres a les aplicacions basades en models, aneu a Referència de fórmules: aplicacions basades en models.
Funcions no admeses
Actualment, les funcions següents Power Fx no s'admeten amb les ordres a les aplicacions basades en models.
- Back()
- Esborra()
- Collect()
- Copia()
- Disable()
- Enable()
- Exit()
- InvokeControl()
- Language()
- LoadData()
- Param()
- Impressió()
- ReadNFC()
- RequestHide()
- ResetForm()
- Revert()
- SaveData()
- ScanBarcode()
- Set()
- SubmitForm()
- UpdateContext()
- User()
- ViewForm()
Enumeracions no admeses
- Alineació
- AlignInContainer
- BarcodeType
- BorderStyle
- Color
- Direcció
- DisplayMode
- Lletra
- FontWeight
- FormPattern
- GridStyle
- ImagePosition
- ImageRotation
- LabelPosition
- Disposició
- LayoutAlignItems
- LayoutDirection
- LayoutJustifyContent
- LayoutMode
- LayoutOverflow
- ListItemTemplate
- MapStyle
- Sobreeiximent
- PDFPasswordState
- PenMode
- RemoveFlags
- ScreenTransition
- TeamsTheme
- TextFormat
- TextMode
- TextPosition
- Temes
- Transició
- VerticalAlign
- VirtualKeyboardMode
- Zoom
Altres àrees no admeses
- Acceleration
- App
- Compass
- Connection
- Dataverse Columnes de tipus de fitxer
- Entorn
- Amfitrió
- Disposició
- Ubicació
- ScreenSize