Ga verder naar hoofdinhoud

Aangepaste OData-query's

Zowel de assetgerichte OData-service als de OData-gegevensmodelleringsservice ondersteunt aangepaste query's om eigenschappen te filteren en specifieke gegevenssets op te halen.

URL's van aangepaste query's

Voorbeeld van een assetgerichte OData-service

Filteren op een resourcetype-eigenschap:

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

Waarbij het volgende geldt:

  • {resourceType}: een resourcetype, zoals Assets, TimeSeries, Events, enz.
  • {Filter}: de OData-filterexpressie.

Voorbeeld van een OData-gegevensmodelleringsservice

Filteren op een view-eigenschap in een gegevensmodel:

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

Waarbij het volgende geldt:

  • {view}: naam van de view in uw gegevensmodel.
  • {Filter}: de OData-filterexpressie.

Voorbeelden van aangepaste query's

Eenvoudig gelijkheidsfilter

Voor een gelijkheidsfilter wordt de volgende indeling gebruikt: AttributeName eq 'AttributeValue'

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

Gegevensmodellering filteren

Een filter dat rechtstreeks wordt toegepast op een eigenschap van een gegevensmodel view:

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

Metagegevens filteren

Metagegevens worden gefilterd op eigenschappen die zijn genest binnen het metagegevensobject.

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

Gecombineerd filter

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

Functies gebruiken in filters

OData ondersteunt functies zoals startswith, endswith en contains.

Voorbeeld: tijdreeksen filteren waarvan ExternalId begint met 'Sensor':

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

Opmerking: Niet alle functies worden ondersteund voor pushdown naar CDF. Controleer de filtermogelijkheden van het specifieke resourcetype.

Meerdere queryparameters combineren

U kunt meerdere queryopties combineren om het ophalen van gegevens te verfijnen.

Als u bijvoorbeeld assets wilt ophalen waarvan Name begint met 'Pump', selecteert u alleen Id en Name en sorteert u op Name:

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

Fouten opsporen in aangepaste query's

  • Afzonderlijke tools gebruiken: Met tools zoals Fiddler kunt u het HTTP-verkeer tussen uw client en de server inspecteren.
  • De filtersyntaxis controleren: Zorg ervoor dat uw filters correct zijn opgemaakt volgens de OData-specificatie.
  • Ondersteunde filters bekijken: Zie Items in gegevensmodellen filteren en Assetgerichte resourcetypen filteren voor meer informatie over de filtermogelijkheden die door de OData-services worden ondersteund.

Beperkingen

Niet alle OData-functies en -kenmerken worden ondersteund. Raadpleeg de betreffende servicedocumentatie voor gedetailleerde informatie over ondersteunde functies en beperkingen.