Utilizzare elenchi di righe nei flussi

Utilizza l'azione Elenca righe per recuperare più righe contemporaneamente da Microsoft Dataverse con una query strutturata.

Ottenere un elenco di righe

Segui questi passaggi per aggiungere l'azione Elenca righe al flusso in modo che restituisca fino a 5.000 account dalla tabella Account in Dataverse.

Power Automate consente di usare new designer o classic designer per configurare il flusso cloud. I passaggi sono simili in entrambe le finestre di progettazione. Altre informazioni (con esempi) in Identificare le differenze tra la finestra di progettazione classica e la nuova finestra di progettazione.

  1. Seleziona il segno più (+) >Aggiungi un'azione.
  2. Nella schermata Aggiungi un'azione immettere le righe dell'elenco nel campo Cerca .
  3. In Microsoft Dataverse, seleziona Elenca righe (anteprima).
  4. Nella scheda Parametri a sinistra seleziona Account nel menu a discesa Nome tabella.
  5. Chiudi la schermata selezionando (<<).

Attivare la paginazione per richiedere più di 5000 righe

Per ottenere automaticamente più di 5.000 righe da una query, attiva la funzionalità Paginazione da Impostazioni.

Quando si imposta la paginazione e il numero di righe supera la soglia configurata, la risposta non include il @odata.nextLink parametro per richiedere il set di righe successivo. Disattivare la paginazione in modo che la risposta includa il @odata.nextLink parametro che è possibile usare per richiedere il set successivo di righe. Vai a Ignora token per sapere come usarlo.

Vengono applicati limiti di velocità effettiva dei contenuti e limiti di dimensione dei messaggi per assiurare garanzie generali di servizio.

  1. Seleziona la scheda Elenca righe.

  2. Nel riquadro a sinistra seleziona la scheda Impostazioni>Rete.

  3. Sposta il cursore Paginazione nella posizione Attivato, se non è già attivo.

  4. In Soglia, immetti il numero massimo di righe richieste. La soglia massima configurabile è 100.000.

    Internamente, questo numero viene arrotondato per incrementi alle dimensioni predefinite della pagina. Ad esempio, se le dimensioni della pagina sono 5.000 e si immette 7.000, il numero di righe restituito sarà 10.000.

Opzioni avanzate

Le opzioni avanzate per l'azione List Rows consentono di ordinare, filtrare, disporre ed estendere i risultati di una query.

Impostare le opzioni nel riquadro di configurazione dell'azione.

  1. Per vedere le opzioni, seleziona la scheda Elenca righe.

  2. Nella scheda Parametri selezionare un'opzione avanzata nel menu a discesa Parametri avanzati .

    Schermata delle opzioni avanzate per l'azione Elenca righe nel riquadro azioni Configurazione.

Restituisce metadati completi

Questa impostazione controlla se caricare tutte le colonne dalla tabella o solo quelle essenziali per ottenere prestazioni migliori. Se non viene impostata, l'azione restituisce automaticamente metadati completi se il flusso usa contenuto o espressioni dinamiche che lo richiedono.

Seleziona colonne

Immettere un elenco delimitato da virgole di colonne da restituire, ad esempio name,createdon,preferredcontactmethodcode,emailaddress1,telephone1 per la tabella Account.

Filtra righe

Utilizzare questo campo per definire un'espressione di filtro in stile OData per restringere il set di righe restituite da Dataverse, ad esempio createdon ge 2021-01-01T00:00:00-00:00 per le righe con createdon maggiore o uguale all'anno 2021.

Scopri come filtrare le righe per creare espressioni Filter Query.

Sostituire determinati caratteri, ad esempio &, #e +, con il relativo equivalente con codifica URL. Per altre informazioni, vedere Codificare caratteri speciali con URL.

Importante

Le espressioni filtro non possono contenere questa stringa, $filter=, poiché è applicabile solo quando usi direttamente le API.

Ordina per

Utilizzare questo campo per definire un'espressione in stile OData che definisce l'ordine in cui vengono restituiti gli elementi, ad esempio name desc. Utilizza il suffisso cre o dec per indicare rispettivamente l'ordine crescente o decrescente. L'ordine predefinito è crescente.

Espandi ricerca

Utilizzare questo campo per specificare un'espressione in stile OData che definisce i dati restituiti da Dataverse dalle tabelle correlate, ad esempio primarycontactid($select=contactid,fullname) per usare primarycontactid dell'account per recuperare la colonna fullname dal contatto correlato con ID contactid nella risposta.

Esistono due tipi di proprietà di spostamento che puoi utilizzare in Espandi query:

  1. Le proprietà di navigazione a valore singolo corrispondono alle colonne di ricerca che supportano relazioni molti a uno e consentono di impostare un riferimento a un'altra tabella.

  2. Le proprietà di navigazione con valori di raccolta corrispondono a relazioni uno a molti o molti a molti.

Se si include solo il nome della proprietà di navigazione, si ricevono tutte le proprietà per le righe correlate. Per altre informazioni, vedere Unire tabelle con OData.

Per usarlo in un passaggio del flusso, immettere questa espressione OData nel campo Espandi query : primarycontactid(contactid,fullname). Ciò mostra come ottenere le colonne contactid e fullname per il primarycontactid di ogni account.

Numero di righe

Utilizzare l'impostazione Conteggio righe per specificare il numero di righe che si desidera che Dataverse restituisca.

Recupera query XML

Attualmente, non è possibile usare query di aggregazione quando si usa l'azione Elenca righe con query FetchXML. È tuttavia possibile usare l'operatore distinct .

Usare una query FetchXML di tipo Dataverse, che offre maggiore flessibilità per la creazione di query personalizzate. Queste query possono essere utili quando si lavora con una tabella con più tabelle correlate o quando si gestisce la paginazione. La screenshot che segue illustra come usare FetchXML.

Importante

L'impostazione di paginazione non supporta le query FetchXML. Per richiedere più di 5.000 righe, è necessario gestire il paging direttamente con la query FetchXML .

Query FetchXML di esempio per la tabella Account:

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

L'operatore distinct non è attualmente supportato direttamente nelle query FetchXML dall'azione List rows , ma è possibile usare la funzione union per rimuovere righe duplicate. Ad esempio, è possibile usare l'azione Seleziona per trasformare la risposta della connessione List rows al formato di matrice specifico necessario, quindi creare una variabile con l'espressione union(body('Select'),body('Select')) per ottenere una matrice con righe distinte.

Ignora token

Power Automate applica limiti di velocità effettiva del contenuto e limiti delle dimensioni dei messaggi per garantire garanzie di servizio generali. Per operare entro questi limiti, usare la paginazione per restituire un numero inferiore di righe in un batch, anziché i limiti predefiniti per il numero di righe di tabella restituite.

Se non si usa la paginazione, il limite di pagina predefinito è 5.000 righe.

Per usare la paginazione, implementa un ciclo per analizzare il valore \@odata.nextLink nella risposta JSON, estrarre il token di skip e quindi inviare un'altra richiesta finché non viene elencato il numero di righe necessario.

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"
}

ID della partizione

Specificare il partitionId durante il recupero dei dati per le tabelle elastiche. Per altre informazioni, vedere Partizionamento e scalabilità orizzontale per le tabelle elastici.