Redigera relaterade tabellposter direkt från en annan tabells huvudformulär

Du kan arbeta med relaterade tabellposter på flera sätt i ett tabellformulär i en Power Apps. Du kan till exempel inkludera relaterade tabeller i skrivskyddsläge med ett snabbvyformulär och skapa eller redigera en post med en huvudformuläret i en dialogruta.

Du kan också arbeta med relaterade tabellposter genom att lägga till en formulärkomponentkontroll i en annan tabells huvudformulär. Med kontrollen för formulärkomponenten kan användare redigera information om en relaterad tabellpost direkt från en annan tabells formulär.

Här är till exempel formulärkomponenten på en separat flik i huvudkontoformuläret, vilket gör att användaren kan redigera en kontaktpost utan att lämna kontoformuläret.

Formkomponentkontroll har lagts till i en separat flik.

Här är till exempel formulärkomponenten på en befintlig flik i huvudkontoformuläret, vilket gör att användaren kan redigera en kontaktpost utan att lämna fliken Sammanfattning av kontoformuläret.

Formkomponentkontroll har lagts till i en befintlig flik.

Lägga till formulärkomponenten i ett huvudformulär i tabellen

  1. I det vänstra navigeringsfönstret väljer du Komponenter. Om objektet inte finns i sidopanelsfönstret väljer du ... Mer och markerar sedan det objekt du vill använda.
  2. Expandera antingen Indata eller Display och välj sedan Formulär. På konfigurationssidan för formulärkomponentkontroll markerar du egenskaperna för kontrollen:
    • Markera formulärets uppslagskolumn.
    • Markera Relaterat formulär. Beroende på den relaterade tabellkonfigurationen för kolumnen:
      • Om kolumnen är kopplad till en enskild tabell (till exempel kolumnen Skapad av) väljer du det relaterade formulär som ska användas. Lägga till kontroll för form component för en enskild relaterad tabell
      • Om kolumnen är kopplad till flera tabeller (t.ex. ägarkolumnen) väljer du + Relaterat formulär och väljer sedan Lägg till för att lägga till det relaterade formuläret. Fortsätt att välja + Relaterat formulär > Lägg till för att lägga till ett relaterat formulär för varje relaterad tabell. Lägg till formulärkomponent för flera relaterade tabeller
    • Som standard är alla klientprogramtyper webb, telefon och surfplatta aktiverade för att visa formuläret. Avmarkera klienttyperna där du inte vill att formuläret ska visas.
  3. Välj Klar.
  4. Spara och publicera formuläret.

Lägga till formulärkomponenten med klassiskt format

I det här exemplet konfigureras standardhuvudformuläret kontakt för formulärkomponentkontrollen som läggs till i huvudformuläret för kontot.

Viktigt

Sättet som du lägger till en formulärkomponentkontroll på har ändrats. Vi rekommenderar att du använder den senaste erfarenheten. Mer information: Lägga till formulärkomponenten i ett huvudformulär i tabellen

  1. Logga in på Power Apps.

  2. I det vänstra fönstret väljer du Tabeller. Du kan också öppna en lösning och sedan en tabell, till exempel Konto. Om objektet inte finns i sidopanelsfönstret väljer du ... Mer och markerar sedan det objekt du vill använda.

  3. Välj Formulär på komponentmenyn.

  4. Välj ett formulär med en formulärtyp av Huvud från de tillgängliga formulären.

  5. Välj Växla till klassisk. Det klassiska formulärredigerare öppnas som en flik i webbläsaren.

  6. Markera fliken Infoga. Skapa sedan en ny flik och lägg till ett nytt avsnitt eller lägg till ett nytt avsnitt på en befintlig flik.

  7. I det nya avsnittet lägger du till en uppslagskolumn, till exempel kolumnen Primär kontakt.

  8. Markera uppslagskolumnen och välj sedan fliken Start, välj Ändra egenskaper.

  9. På fliken Kontroller, välj Lägg till kontroller i listan över kontrolltyper välj Kontroll för formulärkomponent och välj sedan Lägg till.

    Välj Form Component Control.

  10. Välj Webb, Surfplatta och Telefon för komponenten.

  11. Välj Redigera (pennikon) och dialogrutan Konfigurera egenskap välj Bind till ett statiskt värde och lägg sedan till en XML-post som liknar den här TableName är tabellens unika namn och FormID är formulär-ID för huvudformuläret:<QuickForms><QuickFormIds><QuickFormId entityname="TableName">FormID</QuickFormId></QuickFormIds></QuickForms>

    • Om du till exempel vill återge huvudformuläret Kontakt i kontoformuläret använder du: <QuickForms><QuickFormIds><QuickFormId entityname="contact">1fed44d1-ae68-4a41-bd2b-f13acac4acfa</QuickFormId></QuickFormIds></QuickForms>

    Konfigurera formulärkomponentkontrollen.

  12. Välj OK, och välj sedan OK.

  13. Spara och sedan Publicera ditt formulär.

Dricks

Om du vill hitta det unika namnet för en tabell markerar du tabellen i Power Apps och väljer sedan Inställningar. Namnet visas i tabellpanelen Redigera. Formulär-ID:t finns i webbläsarens URL när du redigerar ett formulär. ID:t följer /redigera/ delen av URL:en. Form-ID finns i webbläsarens URL när du öppnar ett formulär i den moderna formdesignern.

I den klassiska formulärdesigner följer formulär-ID:t formId%3d-delen av URL:en.

Formulärkomponentens beteende

I det här avsnittet beskrivs formulärkomponentens beteende när det används i en modellbaserad app.

Välja poster

För att formulärkomponentkontrollen ska visa ett formulär måste uppslagskolumnen som den är bunden till ha ett värde. Annars visas meddelandet Källpost inte markerad i kontrollen. Ett sätt att ange värdet är att lägga till en uppslagskontroll i formuläret som är bunden till samma uppslagskolumn som kontrollen för formulärkomponenten. När du använder uppslagskontrollen för att ändra värdet för uppslagskolumnen visas ett formulär med data för det nya uppslagskolumnvärdet i kontrollen för formulärkomponenten.

Kolumnvalidering

Alla kolumner, både i huvudformuläret och i formulärkomponentkontrollerna, måste vara giltiga för att data ska skickas till Microsoft Dataverse. Detta gäller för både kolumnverifieringsfel, saknade obligatoriska kolumner och så vidare.

OnSave-hanterare körs för huvudformuläret och dess formulärkomponentkontroller. Alla hanterare kan avbryta sparningen för huvudformuläret och reglagen för formulärkomponenten med hjälp av preventDefault. Det innebär att ingen sparåtgärd kan anropa preventDefault för att data ska skickas till Dataverse. Den ordning som OnSave-hanterare anropas har inte definierats. Mer information: Formulär OnSave-händelse (referens för klient-API) i modellstyrda appar

Spara post

När valideringsstadiet har passerats skickas data till Dataverse för varje post. För närvarande uppdateras varje post oberoende med olika begäran. Sparandet är inte transaktioner och ordningen på de sparade är inte definierad. Ett fel när en formulärkomponent sparas återställs inte ändringar i huvudformuläret eller andra formulärkomponenter. När varje sparad post har slutförts uppdateras data för alla poster i formuläret.

Aviseringar

Meddelandena på formulärkomponenten samlas in i meddelandena i huvudformuläret. Om det till exempel finns ogiltiga kolumner i formulärkomponenten och du försöker spara visas det ogiltiga kolumnmeddelandet överst i huvudformuläret i stället för i formulärkomponenten.

Felhantering

Om det uppstår flera fel under sparningen visas endast ett fel för användaren. Om användaren kan göra ändringar för att åtgärda det första felet och sparar nästa fel kommer att visas. Användaren måste spara tills alla fel har åtgärdats.

Ändra poster med ändringar som inte sparats

Om det finns osparade ändringar i ett formulär för en formulärkomponent och en användare försöker ändra uppslagskolumnen som formulärkomponenten är bunden till, meddelas användaren om ändringen.

Klient-API

En formulärkontext är tillgänglig för formulärkomponentkontrollen. Den kan nås via huvudformulärens formulärkontext genom att komma åt kontrollen via ett API, till exempel getControl. Innan du öppnar data för den relaterade tabellen i formulärkomponentkontrollen bör händelsehanterare vänta på att isLoaded API för kontrollen ska återgå till true.

Begränsningar

Observera följande begränsningar när du lägger till formulärkomponentkontrollen i ett tabellformulär:

  • Kontrollen för formulärkomponent stöder endast rendering av huvudformulär. På samma sätt stöds endast stöd för att lägga till en kontroll för formulärkomponenter i huvudformulär. Andra formulärtyper, t.ex. snabbkoppling, snabbvy och kort, stöds inte.

  • Formulär med en affärsprocessflöde stöds för närvarande inte i huvudtabellformuläret eller i det relaterade tabellformuläret. Om du har ett formulär med en affärsprocessflöde kan du stöta på ett oväntat beteende. Vi rekommenderar att du inte använder en formulärkomponent med ett formulär som använder en affärsprocessflöde.

  • Kontrollen för formulärkomponenten stöder inte inbyggda komponentkontroller, till exempel att lägga till en formulärkomponentkontroll i ett formulär som används av en kontroll för formulärkomponenten.

  • Formulärkomponentkontrollen stöder inte inbäddade arbetsyteappar. Du kan stöta på oväntat beteende med dessa arbetsyteappar.

  • Kontrollen för formulärkomponenten visar bara den första fliken i formuläret som den använder om flera flikar ingår i formuläret.

  • Det finns inte stöd för att använda samma formulär för kontroller för olika formulärkomponenter i ett enda formulär.

  • Formuläret som du använder med en formulärkomponent måste vara inkluderad i appen. Om den aktuella användaren inte har tillgång till formuläret, eller om den aktuella användaren inte har tillgång till formuläret, kommer den att gå till det översta huvudformuläret som finns med i appen och är tillgängligt för användaren (baserat på formulärordning).

  • Alla komponenter som används av formuläret i en formulärkomponent måste vara inkluderad i appen. Dessa komponenter omfattar relaterade tabeller, vyer och affärsprocessflöden. Om de inte gör det är de inte tillgängliga i formuläret, eller så kan det hända att de inträffar på ett oväntat sätt.

  • Form component-kontroller har vissa begränsningar när de renderas i appar med flera sessioner. Om klient-API används för att ändra kontrollen för formulärkomponenten, eller om data har angetts i formuläret, kanske inte ändringarna bevaras vid växling av flikar med flera sessioner.

  • Du kanske lägger märke till att tidslinjeväggen kanske inte uppdateras när en kolumn som används för att ställa in tidslinjeväggen har ändrats i formulärkomponenten. När sidan uppdateras uppdateras tidslinjeväggen som förväntat.

  • På mobila enheter visas inte tidslinjekontrollen i kontrollen för formulärkomponenten.

  • För underrutnät är kommandoknapparna Se alla poster och Se associerade poster inte tillgängliga om de om de återges i en formulärkomponent.

  • Formkomponentkontroller stöds inte i massredigeringsdialogrutor. De visas inte som standard i massredigeringsdialogen och alla ändringar som görs i relaterade tabellposter med dem sparas inte.

Se även

Använda anpassade kontroller för modellbaserade datavisualiseringar

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).