LISTDISTINCT ER-funktion
Viktigt
Delar av eller hela funktionaliteten som beskrivs i den här artikeln är tillgänglig som en del av en förhandsversion. Funktionen och dess innehåll kan ändras. Mer information om förhandsversioner finns i Tillgänglighet för tjänstuppdateringar.
Den här LISTDISTINCT
-funktionen beräknar det angivna uttrycket som en väljare för varje post i den angivna listan. Det returnerar ett nytt värde för postlista som innehåller en enskild post för varje unikt väljarvärde.
Syntax
LISTDISTINCT (list, selector)
Argument
list
: Post-lista
Den giltiga sökvägen av en datakälla för datatypen Postlista.
selector
: Primitiva datatyp
Ett giltigt uttryck som används för att beräkna ett väljarvärde för varje post i den angivna listan.
Följande datatyper stöds för den här parametern:
- Booleskt
- Datum
- DatumTid
- GUID
- Heltal
- Int64
- Realtal
- Sträng
Returvärden
Postlista
Den resulterande listan med poster.
Användningsanteckningar
Strukturen för listan som skapas matchar strukturen i den angivna listan.
Samma väljarvärde kan beräknas för flera poster i den angivna listan. I det här fallet är fältvärdena för motsvarande post i listan skapad lika med värdena för den första posten från den angivna listan som väljar värdet för.
Det går att utföra den här funktionen på alla datakällor elektronisk rapportering (ER) av postlista typen som finns i minnet.
Datakällan GROUPBY för att generera listan med poster som väljs av en väljare som har distinkta värden. Från ett prestanda- och minnesförbrukningsperspektiv är det emellertid bättre att använda LISTDISTINCT
-funktionen än GROUPBY-datakällan, eftersom körningen av funktionen utförs i minnet.
Exempel
Följande exempel visar hur du kan få listan med unika kundkontonummer som minst en försäljningsfaktura eller projektfaktura har utfärdats för under en viss period.
Ange datakällan SalesInvoice för den
Record list
-typ som refererar till CustInvoiceJour programregister och filtrerar försäljningsfakturor för specifika perioder.InvoiceAccount
-fältet i den här datakällan returnerar kontonumret för en fakturerad kund.Ange datakällan ProjectInvoice för den
Record list
-typ som refererar till ProjectInvoice programregister och filtrerar projektfakturor för specifika perioder.InvoiceAccount
-fältet i den här datakällan returnerar kontonumret för en fakturerad kund.Konfigurera datakällan AllInvoices som innehåller uttrycket
Calculated field
som innehåller uttrycketLISTJOIN(SalesInvoice, ProjectInvoice)
.Den här datakällan returnerar den kopplade listan över försäljningsfakturor och projektfakturor.
Konfigurera datakällan InvoicedCustomer som innehåller uttrycket
Record list
som innehåller uttrycketLISTDISTINCT(AllInvoices, AllInvoices.InvoiceAccount)
.Den här datakällan returnerar en ny lista som innehåller en enda post för varje unik kund som har fakturerats under den angivna perioden.
InvoiceAccount
-fältet i den här listan innehåller ett kundkontonummer.