Anpassade OData-frågor
Både asset-centric OData-tjänsten och OData-tjänsten för datamodellering stöder anpassade frågor för filtrering av egenskaper och hämtning av specifika datamängder.
URL:er för anpassad fråga
Exempel på tillgångscentrerad OData Service
Så här filtrerar du på en resurstypsegenskap:
GET .../{resourceType}/?$filter={Filter}
Där:
{resourceType}
: en resurstyp somAssets,TimeSeries,Eventsetc.{Filter}
:OData-filteruttryck.
Exempel på OData Service för datamodellering
Så här filtrerar du på en view-egenskap i en datamodell:
GET .../{view}/?$filter={Filter}
Där:
{view}
: namnetviewi din datamodell.{Filter}
:OData-filteruttryck.
Exempel på anpassad fråga
Enkelt jämlikhetsfilter
Ett jämlikhetsfilter använder formatet AttributeName eq 'AttributeValue'
:
GET .../Assets?$filter=Name eq '23-TE-96116-04'
Datamodellsfiltrering
Ett filter som tillämpas direkt på en egenskap för en datamodell view:
GET .../City?$filter=iso2 eq 'MX'
Metadatafiltrering
För metadata sker filtrering i egenskaper som är kapslade inuti metadataobjekt:
GET .../Assets?$filter=MetaData/RES_ID eq '525283'
Kombinerat filter
GET .../Assets?$filter=MetaData/RES_ID eq '525283' and Name eq '23-TE-96116-04'
Använda funktioner i filter
OData stöder funktioner som startswith
, endswith
och contains
.
Till exempel för att filtrera tidsserien där ExternalId
börjar med 'Sensor'
:
GET .../TimeSeries?$filter=startswith(ExternalId,'Sensor')
Obs! Vissa funktioner stöds inte för pushdown till CDF. Kontrollera filtreringsmöjligheterna för den specifika resurstypen.
Kombinera flera frågeparametrar
Du kan kombinera flera frågealternativ för att förfina din datahämtning.
Om du t.ex. vill hämta tillgångar där Name
börjar med 'Pump'
, väljer du bara Id
och Name
och ordnar efter Name
:
GET .../Assets?$filter=startswith(Name,'Pump')&$select=Id,Name&$orderby=Name asc
Felsöka anpassade frågor
- Använd separata verktyg: Med verktyg som Fiddler kan du inspektera HTTP-trafiken mellan din klient och servern.
- Kontrollera filtersyntaxen: Kontrollera att dina filter är rätt formaterade enligt specifikationen
OData. - Granska filter som stöds: Se Filtrera objekt i datamodeller och Filtrera asset-centric-resurstyper för att se vilka filtreringsmöjligheter som stöds av
OData-tjänsterna.
Begränsningar
Vissa funktioner och egenskaper för OData stöds inte. Detaljerad information om funktioner som stöds samt begränsningar finns i separat servicedokumentation.