Dynamics 365의 메타 데이터 엔터티에서 배열의 특정 값 쿼리

Aug 19 2020

이 배열을 반복하지 않으려 고 노력하고 있지만 이것이이를 처리하는 유일한 방법이라고 생각합니다. Web API URI의 배열에서이 값을 직접 쿼리하는 방법이 있는지 확인합니다.

다음은 URI 예입니다.

https://example.crm.dynamics.com/api/data/v9.0/GlobalOptionSetDefinitions(f4a9de67-1d00-ea11-a811-000d3a33f702)

그리고 이것은 응답의 예입니다.

{
    "@odata.context": "https://example.crm.dynamics.com/api/data/v9.0/$metadata#GlobalOptionSetDefinitions/Microsoft.Dynamics.CRM.OptionSetMetadata/$entity",
    "MetadataId": "f4a9de67-1d00-ea11-a811-000d3a33f702",
    "Options": [
        {
            "Value": 799680006,
            "Color": "#0000ff",
            "IsManaged": false,
            "ExternalValue": "",
            "ParentValues": [],
            "MetadataId": null,
            "HasChanged": null,
            "Label": {
                "LocalizedLabels": [
                    {
                        "Label": "ABC123",
                        "LanguageCode": 1033,
                        "IsManaged": false,
                        "MetadataId": "b4eb2c69-b500-ea11-a811-000d3a33fe19",
                        "HasChanged": null
                    }
                ],
                "UserLocalizedLabel": {
                    "Label": "ABC123",
                    "LanguageCode": 1033,
                    "IsManaged": false,
                    "MetadataId": "b4eb2c69-b500-ea11-a811-000d3a33fe19",
                    "HasChanged": null
                }
            }
        }
    ]
}

기본적으로 "Value": 799680006URI 쿼리 매개 변수에 어떻게 든 추가하고 싶은 것이 있으므로 궁극적으로 "Label": "ABC123".

어떤 제안이나 if Value = x실제로 유일한 옵션 으로 객체 배열을 반복하고 있습니까?

답변

1 ArunVinoth Aug 19 2020 at 05:50

두 가지를 명확히하겠습니다.

  1. GlobalOptionSetDefinitions여러 언어 팩이 있거나 사용자 지정을 확인하거나 Devops 배포 목적으로 모든 지역화 된 레이블을 가져 오는 데 사용 하는 것과 같은 메타 데이터를 쿼리 하는 것은 한 가지입니다.
  2. 트랜잭션 데이터베이스 레코드 중 하나에서 선택한 선택 목록 값에 대한 레이블을 가져 오는 것은 또 다른 목적입니다.

단순히 두 번째 목적이 필요한 경우 웹 API 요청에 헤더를 추가 한 후 Formatted 값을 선택하여 가져올 수 있습니다. 내 SO 답변에서 자세히 알아보기

레이블을 검사하는 또 다른 방법은 stringmap 엔티티를 사용하는 것입니다.

https://crmdev.crm.dynamics.com/api/data/v9.1/stringmaps?$filter=objecttypecode eq 'account' and attributename eq 'accountclassificationcode' and attributevalue eq 1