Essentiel logik
Bemærk
Microsoft Power Fx er det nye navn til formelsproget for lærredapps. Vi arbejder på disse artikler, mens vi udtrækker sproget fra lærredapps, integrerer det i andre Microsoft Power Platform-produkter og gør det tilgængeligt som open source. Start med Microsoft Power Fx-oversigten for at få en introduktion til sproget.
De fleste formler i Microsoft Power Fx beregner en værdi. I et Excel-regneark sker genberegningen automatisk, når værdierne ændres. Du kan f.eks. vise værdien i et kontrolelement af typen Etiket i rødt, hvis værdien er mindre end nul, og i modsat fald i sort. Du kan derfor angive egenskaben Farve for det pågældende kontrolelement til denne formel:
If( Value(TextBox1.Text) >= 0, Color.Black, Color.Red )
Hvad betyder det, når brugeren vælger et kontrolelement af typen Knap i denne sammenhæng? Der er ikke blevet ændret nogen værdi, så der er ikke noget nyt at beregne. Der er ikke noget i Excel, der svarer til et kontrolelement af typen Knap.
Hvis et kontrolelement af typen Knap vælges, igangsætter brugeren en række handlinger eller funktionsmåder, der ændrer appens tilstand:
- Skift den skærm, der vises: Back-funktionerne .
- Kontrollér et signal (kun Power Apps): funktionerne Enable og Disable.
- Opdater eller fjern elementer i en datakilde: funktionerne Refresh, Update, UpdateIf, Patch, Remove, RemoveIf.
- Opdater en kontekstvariabel (kun Power Apps-lærred): funktionen UpdateContext.
- Opret, opdater eller fjern elementer i en samling: funktionerne Collect, Clear og ClearCollect.
Da disse funktioner ændrer appens tilstand, kan de ikke genberegnes automatisk. Du kan bruge dem i formler for egenskaberne OnSelect, OnVisible, OnHidden og andre On...-egenskaber, som kaldes formler for funktionsmåde.
Mere end én handling
Brug semikolon til at oprette en liste over handlinger, der skal udføres. Du vil måske opdatere en kontekstvariabel og derefter vende tilbage til det forrige skærmbillede:
UpdateContext( { x: 1 } ); Back()
Handlinger udføres i den rækkefølge, de vises i formlen. Den næste funktion starter først, når den aktuelle funktion er fuldført. Hvis der opstår en fejl, kan efterfølgende funktioner muligvis ikke starte.