Dela via


Använda listor med rader i flöden

Använd åtgärden Listrader om du vill hämta flera rader samtidigt från Microsoft Dataverse med en strukturerad fråga.

Hämta en lista med rader

Följ stegen nedan om du vill lägga till åtgärden Radlistor i ditt flöde för att returnera upp till 5 000 konton från tabellen Konton i Dataverse.

Kommentar

Power Automate använder antingen den klassiska molnflödesdesignern eller molnflödesdesignern med Copilot. För att identifiera vilken designer du använder, gå till Anteckning i Förstå den molnflödesdesignern med Copilot-funktioner.

  1. Välj Nytt steg om du vill lägga till en åtgärd i ditt flöde.
  2. Ange listrader i sökrutan Sök efter anslutningar och åtgärder i kortet Välj en åtgärd.
  3. Välj Microsoft Dataverse om du vill filtrera sökresultaten om du endast vill visa åtgärder och utlösare för Microsoft Dataverse.
  4. Markera listrader.
  5. Välj tabellen Konton i listan med Tabellnamn.
  6. Spara och kör flödet för att bekräfta att inte fler än 5 000 rader returneras.

Aktivera sidnumrering om du vill begära mer än 5 000 rader

Om du vill hämta fler än 5 000 rader från en fråga automatiskt aktiverar du funktionen Sidnumrering från Inställningar.

När sidnumrering är inställd och antalet rader överstiger det antal av den konfigurerade tröskeln, kommer svaret inte att inkludera @odata.nextLink parameter för att begära nästa uppsättning rader. När sidnumrering inte anges innehåller svaret en @odata.nextLink-parameter som kan användas för att begära nästa uppsättning rader. Gå till Hoppa över token för att lära dig hur du använder den.

Innehållsbegränsningar för genomflöden och storleksbegränsningar för meddelanden tillämpas för att säkerställa att allmänna tjänster är förser med tjänster.

  1. I det övre högra hörnet av kortet Radlistor väljer du menyn (...).

  2. Välj Inställningar.

  3. Flytta växlingsknappen Sidnumrering till läget om det inte redan är aktiverad.

  4. I Tröskel ange det maximala antalet rader som begärs. Det största konfigurerbara tröskelvärdet är 100 000.

    Internt avrundas detta nummer i steg om standardsidans storlek. Om sidans storlek exempelvis är 5 000 och du anger 7 000 blir antalet rader som returneras 10 000.

Avancerade alternativ

Med de avancerade alternativen för åtgärden Listrader kan du sortera, filtrera, ordna och utöka resultatet av en fråga.

Du kan ange avancerade alternativ direkt på kort med listraderna. För att se alternativen, välj Visa avancerade alternativ. När du väljer den ändras namnet till Dölj avancerade alternativ.

Skärmbild av avancerade alternativ på kortet Listrader.

Välj kolumner

Ange en kommaavgränsad lista med kolumner som ska returneras, till exempel "name,createdon,preferredcontactmethodcode,emailaddress1,telephone1" för tabellen Konto.

Filtrera rader

Använd för att definiera ett filteruttryck i OData-stil för att begränsa uppsättningen rader som Dataverse returnerar, till exempel 2021-01-01T00:00:00-00:00" för rader med createdon större än eller lika med år 2021.

Lär dig hur du använder standardfilteroperatörer och frågefunktioner för att konstruera funktionen för Filterfråga.

Vissa tecken, som &, # och + måste ersättas med deras URL-kodade motsvarighet. Mer information: URL-kodar specialtecken

Viktigt!

Filtertryck får inte innehålla strängen $filter=, eftersom denna bara gäller när du använder API:erna direkt.

Sort by

Använd för att definiera ett OData-uttryck som definierar i vilken ordning objekt returneras, till exempel "name desc". Använd asc eller desc suffix för att ange stigande eller fallande ordning. Standardordning är fallande.

Expandera fråga

Använd för att ange ett uttryck i OData-stil som definierar data som Dataverse returnerar från de relaterade tabellerna, t.ex. primarycontactid($select=contactid,fullname) för att använda kontots primarycontactid för att hämta kolumnen fullname från den relaterade kontakten med ID contactid i svaret.

Du kan använda två typer av navigeringsegenskaper i Expandera fråga:

  1. Navigeringsegenskaper med ett värde motsvarar kolumnen Uppslag som har stöd för flera till en Relationer och som gör att du kan ange en referens till en annan tabell.

  2. Navigeringsegenskaper med Samlingsvärde motsvarar en-till-många eller många-till-många-relationer.

Om du endast tar med namnet på navigeringsegenskapen får du alla egenskaper för de relaterade raderna. Mer information finns i Hämta relaterade tabellrader med en fråga.

För att använda det i ett flödessteg, skriv in detta Odata-uttryck i fältet Expandera fråga: primarycontactid(contactid,fullname). Så här hämtar du kolumner contactid och fullname för primarycontactid för varje konto.

Antal rader

Använd för att ange det specifika antalet rader som ska Dataverse returneras. Här är ett exempel på hur du begär tio rader.

Hämta XML-fråga

Sammansättningsfrågor stöds för närvarande inte när du använder åtgärden Lista rader med FetchXML-frågor. Endast distinkt operatör stöds.

Använd en FetchXML-fråga i Dataverse-stil som ger ytterligare flexibilitet när du skapar anpassade frågor. De här frågorna kan vara användbara när du arbetar med en tabell som har flera relaterade tabeller, eller hanterar sidnumrering. Följande skärmbild visar hur du använder FetchXML.

Skriv följande i fältet Hämta Xml-fråga.

Visa ett exempel på konton med FetchXML.

Eftersom den specifika operatorn för närvarande inte stöds direkt i FetchXML-frågor från åtgärden Listrader kan sammanförandefunktionen användas för att ta bort dubblettrader. Du kan till exempel använda åtgärden Välj om du vill omvandla svaret på listraderna som är anslutning till det specifika matrisformat du behöver och sedan skapa en variabel med uttrycket union(body(‘Select’),body(‘Select’)) för att få en matris med olika rader.

Startpunktstoken

Eftersom Power Automate gäller dataflödesbegränsningar för innehåll och storleksbegränsningar för meddelande för att garantera allmänna servicegarantier är det ofta användbart att använda sidnumrering att returnera ett mindre antal rader i en sats, snarare än standardbegränsningarna för antalet tabellrader som returneras.

Standardsidans begränsning på 5 000 rader gäller om du inte använder sidnumrering.

Du kan använda denna genom att implementera en loop som parsar värdet @odata.nextLink i JSON-svaret, extrahera hoppa över token och sedan skicka en ny förfrågan tills du har listat antalet rader som du behöver.

HTTP/1.1 200 OK  
Content-Type: application/json; odata.metadata=minimal  
OData-Version: 4.0  
Content-Length: 402  
Preference-Applied: odata.maxpagesize=3  
  
{  
   "@odata.context":"[Organization URI]/api/data/v9.1/$metadata#accounts(name)",
   "value":[  
      {  
         "@odata.etag":"W/\"437194\"",
         "name":"Fourth Coffee (sample)",
         "accountid":"7d51925c-cde2-e411-80db-00155d2a68cb"
      },
      {  
         "@odata.etag":"W/\"437195\"",
         "name":"Litware, Inc. (sample)",
         "accountid":"7f51925c-cde2-e411-80db-00155d2a68cb"
      },
      {  
         "@odata.etag":"W/\"468026\"",
         "name":"Adventure Works (sample)",
         "accountid":"8151925c-cde2-e411-80db-00155d2a68cb"
      }
   ],
   "@odata.nextLink":"[Organization URI]/api/data/v9.1/accounts?$select=name&$skiptoken=%3Ccookie%20pagenumber=%222%22%20pagingcookie=%22%253ccookie%2520page%253d%25221%2522%253e%253caccountid%2520last%253d%2522%257b8151925C-CDE2-E411-80DB-00155D2A68CB%257d%2522%2520first%253d%2522%257b7D51925C-CDE2-E411-80DB-00155D2A68CB%257d%2522%2520%252f%253e%253c%252fcookie%253e%22%20/%3E"
}

Partitions-ID

Ett alternativ för att ange partitions-ID när data hämtas för NoSQL-tabeller. Mer information finns i Förbättra prestanda när du använder lagringspartitioner när du öppnar tabelldata.