Kontrolelementerne Rediger formular og Vis formular i Power Apps

Få vist, rediger og opret en post i en datakilde.

Beskrivelse

Hvis du tilføjer et kontrolelement af typen Vis formular, kan brugeren få vist alle felter i en post eller kun de felter, du angiver. Hvis du tilføjer et kontrolelement af typen Rediger formular, kan brugeren redigere disse felter, oprette en post og gemme ændringerne i en datakilde.

Eksempler på kontrolelementer til formular og formularvisning.

Hvis du tilføjer et kontrolelement af typen Galleri, kan du konfigurere det til at vise en tabel i en datakilde og derefter konfigurere en formular, der viser den post, som brugeren vælger i galleriet. Du kan også tilføje et eller flere kontrolelementer af typen Knap, som brugeren kan vælge for at gemme ændringer, annullere ændringer og oprette en post. Når du bruger kontrolelementer sammen, kan du oprette en komplet løsning.

Valg af post

For begge typer formularer skal du angive egenskaben DataSource for en tabel med poster og angive formularens egenskab Item for at vise en bestemt post i tabellen. Du kan for eksempel angive egenskaben Item for en formular til egenskaben SelectedItem for et kontrolelement af typen Galleri. Når brugeren vælger en post i galleriet, vises den samme post i formularen, bortset fra at der kan vises flere felter i formularen. Hvis brugeren vender tilbage til galleriet og vælger en anden post, ændres egenskaben SelectedItem for galleriet. Denne ændring opdaterer egenskaben Item for formularen, som derefter viser den nyligt valgte post.

Du kan også angive egenskaben Item for en formular ved hjælp af kontrolelementet Rulleliste som beskrevet i Få vist, redigere eller tilføje en post eller en funktion, f.eks Lookup eller First. Du kan f.eks. angive egenskaben Item til en af disse formler for at få vist posten Fabrikam i tabellen Konti i Microsoft Dataverse:

First(Accounts)

Lookup(Accounts, "Fabrikam" in name)

Hvert formularkontrolelement indeholder et eller flere kontrolelementer af typen Kort. Ved at angive egenskaben DataField for et kort kan du angive, hvilket felt det pågældende kort viser og andre oplysninger.

Opret en post

Når et kontrolelement af typen Rediger formular er i tilstanden Rediger, kan brugeren opdatere den post, der er angivet i formularens egenskab Item. Egenskaben Mode returnerer på den måde Rediger.

Når et kontrolelement af typen Rediger formular er i tilstanden Ny, ignoreres egenskaben Item dog. Der vises ikke en eksisterende post i formularen. I stedet for stemmer værdierne i hvert felt overens med standardværdierne for den datakilde, du konfigurerede formularen med. Funktionen NewForm medfører, at en formular skifter til denne tilstand.

Du kan f.eks. angive egenskaben Text for en knap for at få vist Ny og egenskaben OnSelect til en formel, der omfatter funktionen NewForm. Hvis brugeren vælger den pågældende knap, skifter formularen til tilstanden Ny, så brugeren kan oprette en post, der starter med kendte værdier.

En formular skifter tilbage til tilstanden Rediger, hvis funktionen ResetForm eller funktionen SubmitForm kører korrekt.

  • Du kan angive egenskaben Text for en knap for at få vist Annuller og dens egenskab OnSelect til en formel, der omfatter funktionen ResetForm. Hvis brugeren vælger den pågældende knap, slettes igangværende ændringer, og værdierne i formularen stemmer endnu engang overens med standardværdierne for datakilden.
  • Du kan angive egenskaben Text for en knap for at få vist Gem ændringer og dens egenskab OnSelect til en formel, der omfatter funktionen SubmitForm. Hvis brugeren vælger den pågældende knap, og datakilden opdateres, nulstilles værdierne i formularen til standardværdierne for datakilden.

Gem ændringer

Hvis du opretter en knap af typen Gem ændringer, som er beskrevet i det forrige afsnit, kan brugeren oprette eller opdatere en post og derefter vælge knappen for at gemme disse ændringer i datakilden. Du kan i stedet for konfigurere et kontrolelement af typen Billede eller nogle andre kontrolelementer til at udføre den samme opgave, så længe du konfigurerer det pågældende kontrolelement med funktionen SubmitForm. I alle tilfælde giver egenskaberne Error, ErrorKind, OnSuccess og OnFailure en tilbagemelding om resultatet.

Når funktionen SubmitForm kører, validerer den først de data, som brugeren vil sende. Hvis et obligatorisk felt ikke indeholder en værdi, eller en anden værdi ikke svarer til en betingelse, angives egenskaberne ErrorKind, og formlen OnFailure kører. Du kan konfigurere knappen Gem ændringer eller et andet kontrolelement, så brugeren kun kan vælge kontrolelementet, hvis dataene er gyldige (dvs. hvis egenskaben Valid for formularen er true). Bemærk, at brugeren ikke alene skal løse problemet, men også vælge knappen Gem ændringer igen (eller kassere ændringerne ved at vælge knappen Annuller, som beskrevet tidligere) for at nulstille egenskaberne Error og ErrorKind.

Hvis dataene består valideringen, sender SubmitForm dem til datakilden, hvilket kan tage lidt tid, afhængigt af netværkets ventetid.

  • Hvis afsendelsen lykkes, ryddes egenskaben Error, egenskaben ErrorKind angives til ErrorKind.None, og formlen OnSuccess kører. Hvis brugeren oprettede en post (dvs. hvis formularen tidligere var i tilstanden Ny), skifter formularen til tilstanden Rediger, så brugeren kan redigere den nyoprettede post eller en anden.
  • Hvis afsendelsen mislykkes, indeholder egenskaben Error en brugervenlig fejlmeddelelse fra datakilden, der forklarer problemet. Egenskaben ErrorKind angives korrekt, afhængigt af problemet, og formlen OnFailure kører.

Visse datakilder kan registrere, når to personer forsøger at opdatere den samme post på samme tid. I dette tilfælde angives ErrorKind til ErrorKind.Conflict, og løsningen er at opdatere datakilden med den anden brugers ændringer og genanvende den ændring, som denne bruger har fortaget.

Tip

Hvis du tilbyder knappen Annuller i formularen, så brugeren kan annullere igangværende ændringer, skal du føje funktionen ResetForm til knappens egenskab OnSelect, selvom denne egenskab også indeholder funktionen Navigate til at ændre skærmbilleder. I modsat fald bevarer formularen brugerens ændringer.

Layout

Kort placeres som standard i en enkelt kolonne for telefonapps og i tre kolonner for tabletapps. Du kan angive, hvor mange kolonner en formular har, og om kort skal fastgøres til dem, når du konfigurerer formularen. Disse indstillinger vises ikke som egenskaber, fordi de kun bruges til at angive egenskaberne X, Y og Width for kortene.

Du kan finde flere oplysninger under Forstå layout for dataformularer.

Vigtige egenskaber

DataSource – Den datakilde, der indeholder den post, som brugeren vil få vist, redigere eller oprette.

  • Hvis du ikke angiver denne egenskab, kan brugeren ikke få vist, redigere eller oprette en post, og der leveres ingen ekstra metadata eller validering.

DefaultMode – Formularkontrolelementets oprindelige tilstand. Se beskrivelsen af Mode nedenfor for de acceptable værdier og deres betydning.

DisplayMode – Den tilstand, der skal bruges til datakort og kontrolelementer i formularkontrolelementet.

Er baseret på egenskaben Mode og kan ikke angives separat:

Tilstand DisplayMode Beskrivelse
FormMode.Edit DisplayMode.Edit Datakort og kontrolelementer kan redigeres, så de er klar til at acceptere ændringer af en post.
FormMode.New DisplayMode.Edit Datakort og kontrolelementer kan redigeres, så de er klar til at acceptere en ny post.
FormMode.View DisplayMode.View Datakort og kontrolelementer kan ikke redigeres og er ikke optimeret til visning.

Error – En brugervenlig fejlmeddelelse, der vises for denne formular, når funktionen SubmitForm mislykkes.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.
  • Denne egenskab ændres kun, når funktionerne SubmitForm, EditForm eller ResetForm kører.
  • Hvis der ikke opstår nogen fejl, er denne egenskab tom, og ErrorKind angives til ErrorKind.None.
  • Når det er muligt, returneres fejlmeddelelsen på brugerens sprog. Nogle fejlmeddelelser kommer direkte fra datakilden og er muligvis ikke på brugerens sprog.

ErrorKind – Den slags fejl, der opstår, hvis der opstår en fejl, når SubmitForm kører.

  • Gælder kun for kontrolelementet Rediger formular.
  • Denne egenskab benytter samme optælling som funktionen Errors. Kontrolelementet Rediger formular kan returnere følgende værdier:
ErrorKind Beskrivelse
ErrorKind.Conflict En anden bruger ændrede den samme post, hvilket resulterede i en ændringskonflikt. Udfør funktionen Refresh for at genindlæse posten, og prøv at foretage ændringen igen.
ErrorKind.None Fejlen er af en ukendt type.
ErrorKind.Sync Datakilden rapporterede en fejl. Kontroller egenskaben Error for at få yderligere oplysninger.
ErrorKind.Validation Der blev fundet et problem med den generelle validering.

Item – Den post i DataSource, som brugeren vil få vist eller redigere.

LastSubmit – Den sidst sendte post, herunder også servergenererede felter.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.
  • Hvis datakilden automatisk genererer eller beregner felterne, f.eks. feltet Id med et entydigt nummer, får egenskaben LastSubmit denne nye værdi, når SubmitForm har kørt.
  • Værdien for denne egenskab er tilgængelig i formlen OnSuccess.

Mode – Kontrolelementet er i tilstanden Rediger eller Ny.

Tilstand Beskrivelse
FormMode.Edit Brugeren kan redigere en post ved hjælp af formularen. Værdierne i formularens kort er udfyldt på forhånd med den eksisterende post, som brugeren kan ændre. Hvis funktionen SubmitForm kører korrekt, ændres en eksisterende post.
FormMode.New Brugeren kan oprette en post ved hjælp af formularen. Værdierne i formularens kontrolelementer er udfyldt på forhånd med standardindstillingerne for en post i datakilden. Hvis funktionen SubmitForm kører korrekt, oprettes en post.
FormMode.View Brugeren kan få vist en post ved hjælp af formularen. Værdierne i formularens kontrolelementer er udfyldt på forhånd med standardindstillingerne for en post i datakilden.

Formularen skifter fra tilstanden Ny til tilstanden Rediger, når en af disse ændringer finder sted:

  • Formularen sendes, og der oprettes en post. Hvis galleriet er indstillet til automatisk at flytte markeringen til denne nye post, er formularen i tilstanden Rediger for den oprettede post, så brugeren kan foretage yderligere ændringer.
  • Funktionen EditForm kører.
  • Funktionen ResetForm kører. Brugeren kan f.eks. vælge knappen Annuller, der er blevet konfigureret med denne funktion.

OnFailure – Handlinger, der skal udføres, når en datahandling mislykkedes.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.

OnReset – Handlinger, der skal udføres, når et kontrolelement af typen Rediger formular nulstilles.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.

OnSuccess – Handlinger, der skal udføres, når en datahandling er fuldført.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.

Unsaved – Sand, hvis kontrolelementet Rediger formular indeholder brugerændringer, der ikke er blevet gemt.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.
  • Brug denne egenskab til at advare brugeren, før de mister ændringer, der ikke er blevet gemt. Du kan forhindre, at brugeren vælger en anden post i et kontrolelement af typen Galleri, før ændringerne af den aktuelle post er blevet gemt, ved at angive galleriets egenskab Disabled til Form.Unsaved og på samme måde deaktivere opdateringshandlinger.

Updates – Værdier til at skrive tilbage til datakilden for en post, der er indlæst i et formularkontrolelement.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.
  • Du kan bruge denne egenskab til at udtrække feltværdierne fra kortene i kontrolelementet. Du kan derefter bruge disse værdier til manuelt at opdatere datakilden med et kald af funktionen Patch eller en anden metode, der vises af en forbindelse. Du behøver ikke at bruge denne egenskab, hvis du bruger funktionen SubmitForm.
  • Denne egenskab returnerer en post med værdier. Hvis formularkontrolelementet f.eks. indeholder kortkontrolelementer for felterne Navn og Antal, og værdierne for egenskaberne Update for disse kort returnerer henholdsvis "Widget" og 10, returnerer egenskaben Updates for formularkontrolelementet { Navn: "Widget", Antal: 10 }.

Valid – Om et kontrolelement af typen Kort eller Rediger formular indeholder gyldige indtastninger, der er klar til at blive sendt til datakilden.

  • Denne egenskab gælder kun for kontrolelementet Rediger formular.

  • Egenskaben Valid for kontrolelementet Form sammenfatter egenskaberne Valid for alle kontrolelementet Kort i formularen. En formulars egenskab af typen Valid er kun true, hvis dataene i alle kort i den pågældende formular er gyldige. I modsat fald er formularens egenskab Valid false.

  • Du sikrer, at en knap kun gemmer ændringer, når dataene i en formular er gyldige, men endnu ikke er blevet sendt, ved at angive egenskaben DisplayMode til denne formel:

    SubmitButton.DisplayMode = If(IsBlank( Form.Error ) || Form.Valid, DisplayMode.Edit, DisplayMode.Disabled)

Flere egenskaber

BorderColor – Farven på et kontrolelements kant.

BorderStyle – Om et kontrolelements kant er Solid, Dashed, Dotted eller None.

BorderThickness – Tykkelsen på et kontrolelements kant.

Fill – Baggrundsfarven i et kontrolelement.

Height – Afstanden mellem et kontrolelements øverste og nederste kant.

Visible – Om et kontrolelement vises eller skjules.

Width – Afstanden mellem et kontrolelements venstre og højre kant.

X – Afstanden mellem kontrolelementets venstre kant og venstre kant af den overordnede objektbeholder (eller skærmbilledet, hvis der ingen overordnet objektbeholder er).

Y – Afstanden mellem kontrolelementets øverste kant og den øverste kant af den overordnede objektbeholder (eller skærmbilledet, hvis der ingen overordnet objektbeholder er).

Flere oplysninger

Retningslinjer for tilgængelighed

Understøttelse af skærmlæser

  • Overvej at føje en overskrift til formularen ved hjælp af en Mærkat.

Bemærk

Kan du fortælle os om dine sprogpræferencer for dokumentation? Tag en kort undersøgelse. (bemærk, at denne undersøgelse er på engelsk)

Undersøgelsen tager ca. syv minutter. Der indsamles ingen personlige data (erklæring om beskyttelse af personlige oplysninger).