Hopp til hovedinnhold

Egendefinerte OData-spørringer

Både den asset-centric OData-tjenesten og OData-tjenesten for datamodellering støtter egendefinerte spørringer for å filtrere egenskaper og hente spesifikke datasett.

Egendefinerte nettadresser for spørringer

Eksempel på asset-centric OData-tjeneste

Slik filtrerer du på en ressurstype-egenskap:

GET .../{resourceType}/?$filter={Filter}

Der:

  • {resourceType}: en ressurstype, for eksempel Assets, TimeSeries, Events, osv.
  • {Filter}: OData-filteruttrykket.

Eksempel på OData-tjeneste for datamodellering

Slik filtrerer du på en view-egenskap i en datamodell:

GET .../{view}/?$filter={Filter}

Der:

  • {view}: navnet på view i datamodellen din.
  • {Filter}: OData-filteruttrykket.

Eksempler på egendefinerte spørringer

Enkelt likhetsfilter

Et likhetsfilter bruker formatet AttributeName eq 'AttributeValue':

GET .../Assets?$filter=Name eq '23-TE-96116-04'

Filtrering på datamodeller

Et filter brukt direkte på en egenskap for en datamodell-view:

GET .../City?$filter=iso2 eq 'MX'

Metadatafiltrering

For metadata utføres filtrering på egenskaper nestet i metadataobjektet:

GET .../Assets?$filter=MetaData/RES_ID eq '525283'

Kombinert filter

GET .../Assets?$filter=MetaData/RES_ID eq '525283' and Name eq '23-TE-96116-04'

Bruke funksjoner i filtre

OData støtter funksjoner som startswith, endswith og contains.

Slik kan du for eksempel filtrere tidsserier der ExternalId starter med 'Sensor':

GET .../TimeSeries?$filter=startswith(ExternalId,'Sensor')

Merk: Ikke alle funksjoner støttes for pushdown til CDF. Kontroller filtreringsfunksjonene til den spesifikke ressurstypen.

Kombinere flere spørringsparametere

Du kan kombinere flere spørringsalternativer for å avgrense datainnhentingen.

Hvis du for eksempel vil hente tagger der Name starter med 'Pump', velger du bare Id og Name og sorterer etter Name:

GET .../Assets?$filter=startswith(Name,'Pump')&$select=Id,Name&$orderby=Name asc

Feilsøke egendefinerte spørringer

  • Bruk egne verktøy: Verktøy som Fiddler gjør at du kan undersøke HTTP-trafikken mellom klienten og serveren.
  • Kontroller filtersyntaksen: Sørg for at filtrene er riktig formatert i henhold til OData-spesifikasjonen.
  • Gå gjennom filtre som støttes: Se Filtrere elementer i datamodeller og Filtrere asset-centric ressurstyper for å lære om hvilke filtreringsfunksjoner som støttes av OData-tjenestene.

Begrensninger

Ikke alle OData-funksjoner støttes. Hvis du vil ha detaljert informasjon om funksjoner som støttes, og begrensninger, kan du se dokumentasjonen for de enkelte tjenestene .