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.

Obs

  • Power Automate använder antingen den klassiska molnflödesdesignern eller den nya moderna designern med Copilot-funktioner. För att identifiera vilken designer du använder, gå till Anteckning i Undersök molnflödesdesignern.
  • När du växlar mellan den klassiska och den moderna designern uppmanas du att spara flödet. Du kan inte spara och byta förrän alla fel har lösts.
  1. Välj plustecknet (+) >Lägg till en åtgärd.
  2. På skärmen Lägg till en åtgärd, ange listrader i fältet Sök.
  3. Under Microsoft Dataverse, markera Listrader (förhandsversion).
  4. På fliken Parametrar till vänster, välj Konton i listrutan Tabellnamn.
  5. Stäng skärmen genom att välja (<<).

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. Markera kortet Listrader.

  2. I rutan till vänster väljer du Inställningar>Nätverk.

  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 alternativ i åtgärdskonfigurationsfönstret.

  1. För att se alternativen, välj Listrader.

  2. På fliken Parametrar väljer du ett avancerat alternativ i listrutan Lägg till nya parametrar.

    Skärmbild av avancerade alternativ för åtgärden Listrader i åtgärdsfönstret Konfiguration.

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.

Exempel på FetchXML-fråga för tabellen Konto:

<fetch count="10">
	<entity name="account">
		<attribute name="name" />
		<attribute name="preferredcontactmethodcode" />
		<attribute name="emailaddress1" />
		<attribute name="telephone1" />
   		<link-entity name="contact" to="primarycontactid" from="contactid">
      			<attribute name="fullname" />
		</link-entity>
		<filter> 
			<condition attribute="createdon" operator="ge" value="2021-01-01T00:00:00-00:00" />
		</filter>
		<order attribute="name" descending="true" />
	</entity>
</fetch>

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.