Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Du kan tilpasse en formular til en SharePoint list med Power Apps til at oprette, få vist og redigere listeelementer uden at forlade listen. Den responsive skabelon indeholder en titel, en beskrivelse og en formular i layoutbeholdere. Genererede formler og kontrolelementet SharePointIntegration forbinder formularen med listehandlinger.
Bemærk
Den forrige skabelon brugte et lærred i mobilstørrelse med en formular med én kolonne. Den nye skabelon bruger typen Flexible canvas og et responsivt layout, der tilpasses den tilgængelige plads. I denne artikel beskrives den responsive skabelon, hvor den er aktiveret til oprettelse af nye formularer. Eksisterende brugerdefinerede formularer bevarer deres aktuelle layout og konverteres ikke automatisk.
Opret og tilpas formularen
Åbn listen i SharePoint eller Microsoft Lists for at tilpasse formularen. Når du opretter eller får vist en liste i SharePoint, bliver du automatisk omdirigeret til Microsoft Lists. Listen findes begge steder. Du kan få flere oplysninger under Hvad er en liste i Microsoft 365?
- Åbn listen i SharePoint eller Microsoft Lists.
- Vælg Integrer>Power Apps>Tilpas formularer.
- I Power Apps Studio skal du udvide skærmens beholdere i trævisningen og vælge det indlejrede formularkontrolelement SharePointForm1.
- Brug Rediger felter til at vælge og ændre rækkefølgen på felterne. Bevar formularens DataSource bundet til din liste.
- Vælg kontrolelementerne titel og beskrivelse for at tilpasse deres tekst. Bevar beholdernes responsive størrelse og de genererede SharePointIntegration-handlinger.
- Gem formularen, og udgiv den på SharePoint. Test oprettelse, visning, redigering, lagring og annullering af et element fra listen.
Forstå den standardgenererede formular
Formularen er indlejret i layoutbeholdere i stedet for placeret direkte på skærmen. Udvid objektbeholderne i trævisningen for at finde formularen og dens datakort.
| Styring | Formål |
|---|---|
| Formularskærm1 | Skærmen, der indeholder det responsive layout. |
| FormScroll1 | Den ydre beholder, der giver mulighed for lodret rulning. |
| TitleBand1 | Beholderen til titlen og beskrivelsen. |
| FormCardWrap1 | Den kortlignende beholder omkring formularen. |
| SharePointForm1 | Den formular , der opretter, viser eller redigerer et listeelement. Dets datakort repræsenterer listefelterne. |
| SharePointIntegration | Det kontrolelement, der forbinder SharePoint-listehandlinger med formularen. |
Dette er eksempler på genererede navne. Hvis et navn er forskelligt i din app, eller du omdøber et kontrolelement, skal du bruge dets faktiske navn i formler. I følgende eksempler bruges SharePointForm1 til den indlejrede formular.
Bevar forbindelsen mellem formularen og listen
Formularens Datakilde er den liste, du tilpasser. Formlen Item bruger den post, der er valgt i SharePoint, med det første listeelement som reserveelement, når der ikke er valgt noget element:
If(
IsBlank(SharePointIntegration.Selected),
First('YourListName'),
SharePointIntegration.Selected
)
Erstat 'YourListName' med navnet på din listes datakilde. Fallbacken giver dig mulighed for at arbejde med eksempeldata i Studio.
SharePointIntegration-handlingerne angiver formularens tilstand, når den kører i SharePoint.
Kolonneopsætning
Det fleksible lærred bruger responsiv størrelsestilpasning i stedet for at skalere et fast mobillayout. Formularens NumberOfColumns-formel bruger appens bredde:
If(App.Width < 640, 1, If(App.Width < 900, 2, 3))
| Appbredde | Columns |
|---|---|
| Mindre end 640. | En. |
| 640 til mindre end 900. | To. |
| 900 eller mere. | Tre. |
Disse pausepunkter for appbredde garanterer ikke, hvor mange kolonner der er plads til i hvert SharePoint panel. Kontrollér formularen i det faktiske værtsmiljø, ikke kun i Studio.
Genererede datakort bruger formler baseret på Parent.NumberOfColumns for deres placering og bredde. Hvis du erstatter disse formler med faste værdier, kan det forhindre, at felterne ombrydes. Kontrollér lange navne, flerlinjefelter, meddelelser om obligatoriske felter og rulning i hver layoutstørrelse. En responsiv skærm betyder ikke, at hvert felt bruger et nyt moderne inputkontrolelement.
Bevar de genererede responsive visningsindstillinger og beholderformler, når du tilpasser layoutet. Du kan finde flere oplysninger om formler til størrelsesændring under Opret responsive layouts i canvasapps.
Bemærk
Selvom du manuelt kan kopiere en formular fra ét miljø til et andet, er der i øjeblikket ingen automatiseret metode i Power Apps til at kopiere en formular fra ét miljø til et andet.
Forstå kontrolelementet SharePointIntegration
Kontrolelementet SharePointIntegration formidler brugerhandlinger mellem SharePoint og Power Apps. Formularens placering i containere ændrer ikke denne integration.
Bemærk
Du kan kun få adgang til egenskaber for kontrolelementet SharePointIntegration , når formularen kører i SharePoint, ikke når du tilpasser formularen i Power Apps Studio. Disse egenskaber er muligvis ikke tilgængelige i OnStart eller OnVisible.
Standardhandlinger for formularer
Bevar de genererede handlinger, så den indlejrede formular reagerer på listens New, View, Edit, Save og Cancel-handlinger:
| Egenskab | Handlinger i SharePoint | Formelformular |
|---|---|---|
| OnNew | Åbn formularen Ny eller Opret element . | NewForm(SharePointForm1) |
| OnView | Vælg et element, eller åbn dets detaljeformular. | ViewForm(SharePointForm1) |
| OnEdit | Vælg Rediger alle, eller åbn formularen Rediger element-formularen. | EditForm(SharePointForm1) |
| OnSave | Vælg Gem for at sende ændringerne. | SubmitForm(SharePointForm1) |
| OnCancel | Vælg Annuller for at nulstille ændringerne. SharePoint skjuler formularen automatisk. | ResetForm(SharePointForm1) |
Håndter lagringsresultater
Formularens OnSuccess kører først efter en vellykket indsendelse. Den responsive skabelon nulstiller formularen og beder SharePoint om at skjule den:
ResetForm(Self); RequestHide()
Self henviser til den formular, hvis OnSuccess-formel kører. Bevar RequestHide() i OnSuccess, ikke før en lagring er gennemført. Brug OnFailure og formularens fejloutput til at kommunikere mislykkede lagringer. Skjul ikke formularen, som om posten var blevet gemt.
Egenskaber for valgt element
Brug disse egenskaber til at arbejde med det listeelement, der SharePoint åbner:
| Egenskab | Beskrivelse |
|---|---|
| Markeret | Den valgte post fra listen. |
| SelectedListItemID | ID'et for den valgte listepost. |
| Datakilde | Den liste, der indeholder posten. Hvis du ændrer denne egenskab, kan det forhindre Selected og SelectedListItemID i at fungere. |
Hvis du vil kopiere den aktuelle post til en variabel, skal du se Almindelige problemer med SharePointIntegration-objektet.
Tilpas standardformularen
Tilpas layoutet og formlerne uden at afbryde forbindelsen mellem den indlejrede formular og SharePoint.
- Bevar formularen i dens layoutbeholdere. Rediger titel, beskrivelse og felter uden at erstatte responsive størrelsesformler med faste værdier.
- Brug Formlen OnSave for SharePointIntegration til kun at sende den formular, der er i brug. Hvis du tilføjer flere formularer, skal du angive en variabel i OnNew, OnView og OnEdit for at identificere, hvilken formular der skal sendes.
- Medtag
RequestHide()i hver formulars OnSuccess-formel. Kør vigtig logik førRequestHide(), mens formularen stadig er synlig, og logikken stadig kan køres. - Nulstil dine formularer i SharePointIntegration.OnCancel. SharePoint-kontrolelementer skjules, når brugeren vælger Annuller.
- Brug OnNew, OnView eller OnEdit til logik, der skal køre, før SharePoint viser formularen. Stol ikke på OnStart eller OnVisible til ændringer af listeelementer.
Almindelige problemer med objektet SharePointIntegration
Følgende vejledning gælder, når den responsive formular kører i SharePoint.
Læs den aktuelle post
Hvis en variabel, der er baseret på SharePointIntegration.Selected , ikke viser de seneste værdier, skal du bruge SelectedListItemID til at slå posten op. Føj f.eks. denne formel til SharePointIntegration.OnView sammen med den genererede ViewForm(SharePointForm1) handling:
ViewForm(SharePointForm1);
Set(
selectedLookupItem,
LookUp('YourListName', ID = SharePointIntegration.SelectedListItemID)
)
Erstat 'YourListName' med navnet på listens datakilde.
Nulstil sessiontilstand
Samlingsvariabler nulstilles ikke, når du lukker formularen. Tilstanden bevares for hele sessionen. Hvis du har brug for at nulstille en samling, skal du tømme den i SharePointIntegration.OnView.
Undgå uventede baggrundsaktiviteter
Brug ikke imperative funktioner såsom Launch() i egenskaber for SharePointIntegration såsom OnNew og OnView. Disse hændelser kan køre i baggrunden, selvom formularen ikke er synlig.
Forstå brugeradgang til brugerdefinerede formularer
Du kan ikke manuelt dele en SharePoint-formular, der er tilpasset med Power Apps. I stedet nedarver alle brugere, der som minimum har læse - eller begrænset visningsadgang til den sammenkædede SharePoint-liste, adgang til formularen. Brugere, der kun har fået tilladelse til bestemte elementer på listen, har ikke adgang til den brugerdefinerede formular.