Förstå formulärintegrering i SharePoint

Nu kan du enkelt anpassa alla Microsoft-listor eller SharePoint biblioteksformulär i Power Apps. I den här artikeln går vi i detalj igenom hur dessa formulär fungerar och hur kan du kan anpassa dem ytterligare.

Om du har anpassat ett formulär för en lista har du förmodligen märkt att de genererade standardformuläret fungerar för alla åtgärder, t.ex. att skapa, visa eller redigera ett objekt. Detta åstadkoms med hjälp av genererade formler och SharePointIntegration-kontrollen.

Förstå det genererade standardformuläret

Det genererade standardformuläret består av följande kontroller och deras motsvarande standardvärden:

  • FormScreen1 – detta är den skärmen som innehåller formuläret.

  • SharePointForm1 – detta är det formulär som används för att skapa, visa eller redigera listobjektet.

    • Datakälla – den lista för vilken formuläret har anpassats.

    • Objekt – det markerade objektet i listan. För enkelhetens skull anges detta objekt som First() i listan när du arbetar i Power Apps Studio.

      If( IsBlank(SharePointIntegration.Selected) || IsEmpty(SharePointIntegration.Selected),
          First('*YourListName*'),
          SharePointIntegration.Selected )
      

      Tips

      Formelmönstret ovan (med ... SharePointDatasourceName.Selected) fungerar för egenskapen Item i ett formulär. Se nedanstående avsnitt för ett formelmönster för att ange värdet för en SharePoint-post.

  • OnSuccess – När objektet skapas eller har sparats återställs formuläret och SharePoint döljer formuläret.

    ResetForm(SharePointForm1); RequestHide()
    
  • SharePointIntegration – Den kontroll som kommunicerar användarens åtgärder mellan SharePoint och Power Apps.

    • Datakälla – den lista för vilken formuläret har anpassats.

      'YourListName'

    • OnNew – ställer in SharePointForm1 i nytt läge.

      NewForm(SharePointForm1)

    • OnView – ställer in SharePointForm1 i visningsläge.

      ViewForm(SharePointForm1)

    • OnEdit – ställer in SharePointForm1 i redigeringsläge.

      EditForm(SharePointForm1)

    • OnSave – skickar ändringarna till SharePointForm1. När formuläret har skickats körs formeln SharePointForm1.OnSuccess.

      SubmitForm(SharePointForm1)

    • OnCancel – Återställer ändringarna till SharePointForm1. SharePoint döljer alltid formuläret när en användare väljer Avbryt i SharePoint.

      ResetForm(SharePointForm1)

Dessa standardkontroller ser till att formuläret kan köras i SharePoint och de ändrar Power Apps -formulärläge som användaren interagerar med i SharePoint och ser till att ändringarna skickas till SharePoint.

Förstå SharePointIntegration-kontrollen

SharePointIntegration-kontroll kommunicerar användarens åtgärder mellan SharePoint och Power Apps.

SharePoint-integreringsobjekt.

Anteckning

Du kan endast få åtkomst till SharePointIntegration-kontrollens egenskaper när formuläret körs i SharePoint, inte när du anpassar formuläret i Power Apps Studio. De här egenskaperna kanske inte är tillgängliga i OnStart eller OnVisible.

SharePointIntegration-kontrollen har följande egenskaper:

Selected – det markerade objektet i listan.

OnNew – Åtgärder som ska utföras när en användare väljer knappen Nytt eller öppnar formuläret Skapa objekt i SharePoint.

OnView – Åtgärder som ska utföras när en användare ett objekt eller öppnar formuläret Objektdetalj i SharePoint.

OnEdit – Åtgärder som ska utföras när en användare väljer knappen Redigera allt eller öppnar formuläret Redigera objekt i SharePoint.

OnSave – Åtgärder som ska utföras när en användare väljer knappen Spara i SharePoint.

OnCancel – Åtgärder som ska utföras när en användare väljer knappen Avbryt i SharePoint.

SelectedListItemID – artikel-ID för det markerade objektet i en lista.

Datakälla – Den lista som innehåller den post som formuläret kommer att visa, redigera eller skapa. Om du ändrar den här egenskapen kan egenskaperna Selected och SelectedItemID sluta fungera.

Anpassa standardformuläret

Nu när du har en bättre förståelse för det genererade standardformuläret och SharePointIntegration-kontrollen kan du ändra formlerna och anpassa dina formulär ytterligare. Här är några saker du kan ha i åtanke när du anpassar formulär:

  • Använd OnSave-formeln för SharePointIntegration-kontrollen för att anpassa det som händer när en användare väljer Spara i SharePoint. Om du har flera formulär, så se till att skicka ändringarna endast för det formulär som används för tillfället.

    Tips

    Ange olika värden för en variabel i formlerna OnNew, OnView och OnEdit. Du kan använda den här variabeln i OnSave-formeln när du vill fastställa vilket formulär som används.

  • Se till att du inkluderar RequestHide() i OnSuccess-formeln för alla dina formulär. Om du glömmer detta vet inte SharePoint när formuläret ska döljas. Undvik också att köra viktig kod när du anropar RequestHide(), så att all kod körs medan formuläret fortfarande är synligt och kan köra logik.

  • Du kan inte kontrollera hur ett formulär döljs när en användare väljer Avbryt i SharePoint, så se till att återställa dina formulär i formeln OnCancel för kontrollen SharePointIntegration.

  • Egenskaperna för kontrollen SharePointIntegration kanske inte är tillgängliga i OnStart eller OnVisible, och händelserna körs enbart när listan är inläst. Du kan använda formlerna OnNew, OnView eller OnEdit för att köra logik varje gång innan formuläret visas för användaren.

Vanliga problem med SharePointIntegration-objektet

  • När värdet för SharepointIntegration.Selected är inställt på en samling i egenskapen OnView visas inte det senaste värdet. Vi rekommenderar att du åtgärdar problemet genom att använda SharepointIntegration.SelectedListItemID och sedan göra en sökning i tabellen för att hämta selectedRecord.

    Till exemepl, för egfenskapen OnView:

    • Istället för:

      Set( selectedItem,
          SharePointIntegration.Selected );
      
    • Använd:

      Set( selectedLookupItem,
          LookUp( YourSharepointIntegrationObject, 
                  ID=SharePointIntegration.SelectedListItemID ) );
      
  • Samlingsvariabler återställs inte när formuläret Power Apps stängs och statusen bevaras under hela sessionen. Om det uppstår användningsfall där variablerna måste återställas rensar du därför variablerna i egenskapen OnView för objektet SharePointIntegration.

  • Använd inte imperativa funktioner som Launch() i egenskaperna SharePointIntegration (t.ex. OnNew och OnView). Denna användning kan orsaka oväntat beteende eftersom SharePointIntegrations livscykelhändelser (som att val ändras) kan utlösas i bakgrunden även när formuläret inte är synligt.

Se även

Anteckning

Kan du berätta om dina inställningar för dokumentationsspråk? Svara i en kort undersökning. (observera att undersökningen är på engelska)

Undersökningen tar ungefär sju minuter. Inga personuppgifter samlas in (sekretesspolicy).