Funzione LISTDISTINCT ER
Importante
La funzionalità indicata in questo articolo è disponibile parzialmente o totalmente come parte di un rilascio di anteprima. Il contenuto e la funzionalità sono soggetti a modifiche. Per ulteriori informazioni sulle versioni di anteprima, vedi Disponibilità degli aggiornamenti del servizio.
La funzione LISTDISTINCT
calcola l'espressione specificata come selettore per ogni record dell'elenco specificato. Restituisce un nuovo valore Elenco di record che contiene un singolo record per ogni valore del selettore univoco.
Sintassi
LISTDISTINCT (list, selector)
Argomenti
list
: Elenco di record
Il percorso valido di un'origine dati del tipo di dati Elenco di record.
selector
: tipo di dati primitivi
Un'espressione valida utilizzata per calcolare un valore del selettore per ogni record nell'elenco specificato.
I seguenti tipi di dati sono supportati per questo parametro:
- Boolean
- Data
- DateTime
- Guid
- Integer
- Int64
- Real
- String
Valori restituiti
Elenco di record
L'elenco risultante di record.
Note sull'utilizzo
La struttura dell'elenco creato corrisponde alla struttura dell'elenco specificato.
Lo stesso valore del selettore potrebbe essere calcolato per più record nell'elenco specificato. In questo caso, i valori dei campi del record corrispondente nell'elenco creato sono uguali ai valori del primo record dell'elenco specificato per cui viene calcolato il valore del selettore.
L'esecuzione di questa funzione viene effettuata su qualsiasi origine dati Reporting elettronico (ER) del tipo Elenco di record presente in memoria.
L'origine dati GROUPBY può essere utilizzata anche per generare l'elenco di record per i quali viene calcolato il selettore con valori distinti. Tuttavia, dal punto di vista delle prestazioni e del consumo di memoria, è meglio usare la funzione LISTDISTINCT
rispetto all'origine dati GROUPBY, perché l'esecuzione della funzione viene eseguita in memoria.
Esempio
L'esempio seguente mostra come ottenere l'elenco dei numeri di conto cliente univoci a cui è stata emessa almeno una fattura di vendita o una fattura di progetto durante un periodo specifico.
Immettere l'origine dati SalesInvoice del tipo
Record list
che fa riferimento alla tabella delle applicazioni CustInvoiceJour e filtra le fatture di vendita per periodi specifici.Il campo
InvoiceAccount
di questa origine dati restituisce il numero di conto di un cliente fatturato.Immettere l'origine dati ProjectInvoice del tipo
Record list
che fa riferimento alla tabella delle applicazioni ProjInvoiceJour e filtrare le fatture del progetto per periodi specifici.Il campo
InvoiceAccount
di questa origine dati restituisce il numero di conto di un cliente fatturato.Configuare l'origine dati AllInvoices del tipo
Calculated field
che contiene l'espressioneLISTJOIN(SalesInvoice, ProjectInvoice)
.Questa origine dati restituisce l'elenco unito di fatture di vendita e fatture di progetto.
Configuare l'origine dati InvoicedCustomer del tipo
Record list
che contiene l'espressioneLISTDISTINCT(AllInvoices, AllInvoices.InvoiceAccount)
.Questa origine dati restituisce un nuovo elenco che contiene un singolo record per ogni cliente univoco che è stato fatturato durante il periodo definito. Il campo
InvoiceAccount
di questo elenco contiene un numero di conto cliente.