Metagegevens ophalen op naam of MetadataId
Gepubliceerd: januari 2017
Is van toepassing op: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Uw toepassingen kunnen aan configuratiewijzigingen worden aangepast door middel van query's op metagegevens. Als u een van de kerneigenschappen van een metagegevensitem kent, kunt u metagegevensdefinities ophalen met de web-API.
In dit onderwerp
Metagegevensitems ophalen op naam
Metagegevensitems ophalen op MetadataId
Metagegevensitems ophalen op naam
Notitie
Deze mogelijkheid is toegevoegd in de Update voor Dynamics 365 (online en on-premises) - december 2016.
Alle ophaalbare metagegevensitems hebben een primaire sleutel MetadataId, waarmee individuele items kunnen worden opgehaald. De typen metagegevens met een gedefinieerde alternatieve sleutel kunt u ophalen met hun naam.
Items op naam ophalen is over het algemeen eenvoudiger, aangezien u waarschijnlijk al ergens een verwijzing naar de naam van het metagegevensitem in uw code hebt opgenomen. In de onderstaande tabel ziet u de alternatieve sleuteleigenschappen waarmee u metagegevensitems kunt ophalen op basis van hun naam.
Metagegevensitem |
Alternatieve sleutel |
Voorbeeld |
---|---|---|
Entiteit |
LogicalName |
GET /api/data/v8.2/EntityDefinitions(LogicalName='account') |
kenmerk |
LogicalName |
GET /api/data/v8.2/EntityDefinitions(LogicalName='account')/Attributes(LogicalName='emailaddress1') |
relatie |
SchemaName |
GET /api/data/v8.2/RelationshipDefinitions(SchemaName='Account_Tasks') |
Algemene optieset |
Naam |
GET /api/data/v8.2/GlobalOptionSetDefinitions(Name='metric_goaltype') |
Voorbeeld: metagegevensitems ophalen op naam
Een item van de metagegevens dat vaak wordt opgehaald, zijn de opties die voor een bepaald kenmerk zijn geconfigureerd. In het volgende voorbeeld ziet u hoe u de eigenschappen OptionSet en GlobalOptionSet van een PicklistAttributeMetadata EntityType kunt ophalen.
Notitie
Het uitbreiden van de single-valued eigenschappen OptionSet en GlobalOptionSet van PicklistAttributeMetadata EntityType geeft u de mogelijkheid om de optiedefinitie op te halen, ongeacht of het kenmerk is geconfigureerd om de algemene optieset of de 'lokale' optieset in de entiteit te gebruiken. Als het een 'lokale' optieset is, is de eigenschap GlobalOptionSet null, zoals hieronder getoond.
Als het kenmerk een algemene optieset gebruikt, moet de eigenschap GlobalOptionSet de gedefinieerde opties bevatten en is de eigenschap OptionSet null.
Aanvraag
GET cc_WebAPI_ServiceURI/EntityDefinitions(LogicalName='account')/Attributes(LogicalName='accountcategorycode')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?$select=LogicalName&$expand=OptionSet($select=Options),GlobalOptionSet($select=Options) HTTP/1.1 OData-MaxVersion: 4.0 OData-Version: 4.0 Accept: application/json Content-Type: application/json; charset=utf-8
Respons
HTTP/1.1 200 OK Content-Type: application/json; odata.metadata=minimal OData-Version: 4.0 { "@odata.context": "cc_WebAPI_ServiceURI/$metadata#EntityDefinitions('account')/Attributes/Microsoft.Dynamics.CRM.PicklistAttributeMetadata(LogicalName,OptionSet,GlobalOptionSet,OptionSet(Options),GlobalOptionSet(Options))/$entity", "LogicalName": "accountcategorycode", "MetadataId": "118771ca-6fb9-4f60-8fd4-99b6124b63ad", "OptionSet@odata.context": "cc_WebAPI_ServiceURI/$metadata#EntityDefinitions('account')/Attributes(118771ca-6fb9-4f60-8fd4-99b6124b63ad)/Microsoft.Dynamics.CRM.PicklistAttributeMetadata/OptionSet(Options)/$entity", "OptionSet": { "Options": [{ "Value": 1, "Label": { "LocalizedLabels": [{ "Label": "Preferred Customer", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0bd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null }], "UserLocalizedLabel": { "Label": "Preferred Customer", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0bd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null } }, "Description": { "LocalizedLabels": [ ], "UserLocalizedLabel": null }, "Color": null, "IsManaged": true, "MetadataId": null, "HasChanged": null }, { "Value": 2, "Label": { "LocalizedLabels": [{ "Label": "Standard", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0dd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null }], "UserLocalizedLabel": { "Label": "Standard", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0dd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null } }, "Description": { "LocalizedLabels": [ ], "UserLocalizedLabel": null }, "Color": null, "IsManaged": true, "MetadataId": null, "HasChanged": null }], "MetadataId": "b994cdd8-5ce9-4ab9-bdd3-8888ebdb0407" }, "GlobalOptionSet": null }
Metagegevensitems ophalen op MetadataId
Omdat de MetadataId de primaire sleutel is voor metagegevensitems, wordt bij het ophalen van afzonderlijke items hetzelfde patroon gebruikt waarmee ook bedrijfsgegevensentiteiten worden opgehaald.
Metagegevensitem |
Voorbeeld |
---|---|
Entiteit |
GET /api/data/v8.2/EntityDefinitions(<Entity MetadataId>) |
kenmerk |
GET /api/data/v8.2/EntityDefinitions(<Entity MetadataId>)/Attributes(<Attribute MetadataId>) |
relatie |
GET /api/data/v8.2/RelationshipDefinitions(<Relationship MetadataId>) |
Algemene optieset |
GET /api/data/v8.2/GlobalOptionSetDefinitions(<OptionSet MetadataId>) |
Voorbeeld: metagegevensitems ophalen op MetadataId
Om hetzelfde resultaat te bereiken zoals getoond in Voorbeeld: metagegevensitems ophalen op naam, moet u een aantal querybewerkingen uitvoeren om de MetadataId op te halen, door te filteren op de entiteit LogicalName en vervolgens het kenmerk LogicalName.
Aanvraag
GET cc_WebAPI_ServiceURI/EntityDefinitions?$filter=LogicalName%20eq%20'account'&$select=MetadataId HTTP/1.1 OData-MaxVersion: 4.0 OData-Version: 4.0 Accept: application/json Content-Type: application/json; charset=utf-8
Respons
HTTP/1.1 200 OK Content-Type: application/json; odata.metadata=minimal OData-Version: 4.0 { "@odata.context":"cc_WebAPI_ServiceURI/$metadata#EntityDefinitions(MetadataId)","value":[ { "MetadataId":"70816501-edb9-4740-a16c-6a5efbc05d84" } ] }
Aanvraag
GET cc_WebAPI_ServiceURI/EntityDefinitions(70816501-edb9-4740-a16c-6a5efbc05d84)/Attributes?$filter=LogicalName%20eq%20'accountcategorycode'&$select=MetadataId HTTP/1.1 OData-MaxVersion: 4.0 OData-Version: 4.0 Accept: application/json Content-Type: application/json; charset=utf-8
Respons
HTTP/1.1 200 OK Content-Type: application/json; odata.metadata=minimal OData-Version: 4.0 { "@odata.context": "cc_WebAPI_ServiceURI/$metadata#EntityDefinitions(70816501-edb9-4740-a16c-6a5efbc05d84)/Attributes(MetadataId)","value":[ { "@odata.type": "#Microsoft.Dynamics.CRM.PicklistAttributeMetadata", "MetadataId": "118771ca-6fb9-4f60-8fd4-99b6124b63ad" } ] }
Aanvraag
GET cc_WebAPI_ServiceURI/EntityDefinitions(70816501-edb9-4740-a16c-6a5efbc05d84)/Attributes(118771ca-6fb9-4f60-8fd4-99b6124b63ad)/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?$select=LogicalName&$expand=OptionSet($select=Options),GlobalOptionSet($select=Options) HTTP/1.1 OData-MaxVersion: 4.0 OData-Version: 4.0 Accept: application/json Content-Type: application/json; charset=utf-8
Respons
HTTP/1.1 200 OK Content-Type: application/json; odata.metadata=minimal OData-Version: 4.0 { "@odata.context": "cc_WebAPI_ServiceURI/$metadata#EntityDefinitions(70816501-edb9-4740-a16c-6a5efbc05d84)/Attributes/Microsoft.Dynamics.CRM.PicklistAttributeMetadata(LogicalName,OptionSet,GlobalOptionSet,OptionSet(Options),GlobalOptionSet(Options))/$entity", "LogicalName": "accountcategorycode", "MetadataId": "118771ca-6fb9-4f60-8fd4-99b6124b63ad", "OptionSet@odata.context": "cc_WebAPI_ServiceURI/$metadata#EntityDefinitions(70816501-edb9-4740-a16c-6a5efbc05d84)/Attributes(118771ca-6fb9-4f60-8fd4-99b6124b63ad)/Microsoft.Dynamics.CRM.PicklistAttributeMetadata/OptionSet(Options)/$entity", "OptionSet": { "Options": [{ "Value": 1, "Label": { "LocalizedLabels": [{ "Label": "Preferred Customer", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0bd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null }], "UserLocalizedLabel": { "Label": "Preferred Customer", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0bd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null } }, "Description": { "LocalizedLabels": [ ], "UserLocalizedLabel": null }, "Color": null, "IsManaged": true, "MetadataId": null, "HasChanged": null }, { "Value": 2, "Label": { "LocalizedLabels": [{ "Label": "Standard", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0dd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null }], "UserLocalizedLabel": { "Label": "Standard", "LanguageCode": 1033, "IsManaged": true, "MetadataId": "0dd8a218-2341-db11-898a-0007e9e17ebd", "HasChanged": null } }, "Description": { "LocalizedLabels": [ ], "UserLocalizedLabel": null }, "Color": null, "IsManaged": true, "MetadataId": null, "HasChanged": null }], "MetadataId": "b994cdd8-5ce9-4ab9-bdd3-8888ebdb0407" }, "GlobalOptionSet": null }
Zie ook
De web-API gebruiken met Dynamics 365-metagegevens
Query's uitvoeren op metagegevens via de web-API
Entiteitsdefinities maken en bijwerken met behulp van de web-API
Entiteitsrelaties maken en bijwerken met behulp van de web-API
Microsoft Dynamics 365
© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht