通过 api 在 CRM 2016 中调用获取下拉字段的文本
getting the text of drop down field through api call in CRM 2016
我有一个叫做病历的实体
我正在获取医疗记录实体(子网格)中的家庭列表
我可以使用 api 调用
获取家庭列表
http://localhost/CRMDataBase/api/data/v8.0/new_medcase(1a7f5ac3-b116-e611-9425-000d3a12d0d4)?$expand=new_case_family
但问题是,我想从下拉字段中获取文本而不是系列中的值。
即我有一个名为 new_typeoffamily 的字段,它的值类似于 "nuclear"、"joint" 等
但是 api 调用正在获取像 100000,1000001
这样的值
如何使用 api 调用获取选定的文本?
我相信您还需要将查询设置为 return 格式化值。
要求:
GET [Organization URI]/api/data/v8.1/accounts?$select=name,donotpostalmail,accountratingcode,numberofemployees,revenue&$top=1 HTTP/1.1
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
Prefer: odata.include-annotations="OData.Community.Display.V1.FormattedValue"
结果:
HTTP/1.1 200 OK
Content-Type: application/json; odata.metadata=minimal
OData-Version: 4.0
Preference-Applied: odata.include-annotations="OData.Community.Display.V1.FormattedValue"
{
"@odata.context": "[Organization URI]/api/data/v8.1/$metadata#accounts(name,donotpostalmail,accountratingcode,numberofemployees,revenue)",
"value": [
{
"@odata.etag": "W/"502170"",
"name": "Fourth Coffee (sample)",
"donotpostalmail@OData.Community.Display.V1.FormattedValue": "Allow",
"donotpostalmail": false,
"accountratingcode@OData.Community.Display.V1.FormattedValue": "Default Value",
"accountratingcode": 1,
"numberofemployees@OData.Community.Display.V1.FormattedValue": "9,500",
"numberofemployees": 9500,
"revenue@OData.Community.Display.V1.FormattedValue": "0,000.00",
"revenue": 100000,
"accountid": "89390c24-9c72-e511-80d4-00155d2a68d1",
"transactioncurrencyid_value": "50b6dd7b-f16d-e511-80d0-00155db07cb1" } ]
}
在提出请求之前添加以下内容headers
parent.$.ajax({
url : customurl,
headers: {
"Accept": "application/json" ,
"Content-Type":"application/json; charset=utf-8",
"OData-MaxVersion":"4.0",
"OData-Version":"4.0",
"Prefer":"odata.include-annotations=OData.Community.Display.V1.FormattedValue"
},
现在数据将具有与之前相同的值
new_modeofcontact: 1000001
new_modeofcontact@OData.Community.Display.V1.FormattedValue : "Email"
我有一个叫做病历的实体
我正在获取医疗记录实体(子网格)中的家庭列表
我可以使用 api 调用
获取家庭列表 http://localhost/CRMDataBase/api/data/v8.0/new_medcase(1a7f5ac3-b116-e611-9425-000d3a12d0d4)?$expand=new_case_family
但问题是,我想从下拉字段中获取文本而不是系列中的值。 即我有一个名为 new_typeoffamily 的字段,它的值类似于 "nuclear"、"joint" 等 但是 api 调用正在获取像 100000,1000001
这样的值如何使用 api 调用获取选定的文本?
我相信您还需要将查询设置为 return 格式化值。
要求:
GET [Organization URI]/api/data/v8.1/accounts?$select=name,donotpostalmail,accountratingcode,numberofemployees,revenue&$top=1 HTTP/1.1
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
Prefer: odata.include-annotations="OData.Community.Display.V1.FormattedValue"
结果:
HTTP/1.1 200 OK
Content-Type: application/json; odata.metadata=minimal
OData-Version: 4.0
Preference-Applied: odata.include-annotations="OData.Community.Display.V1.FormattedValue"
{
"@odata.context": "[Organization URI]/api/data/v8.1/$metadata#accounts(name,donotpostalmail,accountratingcode,numberofemployees,revenue)",
"value": [
{
"@odata.etag": "W/"502170"",
"name": "Fourth Coffee (sample)",
"donotpostalmail@OData.Community.Display.V1.FormattedValue": "Allow",
"donotpostalmail": false,
"accountratingcode@OData.Community.Display.V1.FormattedValue": "Default Value",
"accountratingcode": 1,
"numberofemployees@OData.Community.Display.V1.FormattedValue": "9,500",
"numberofemployees": 9500,
"revenue@OData.Community.Display.V1.FormattedValue": "0,000.00",
"revenue": 100000,
"accountid": "89390c24-9c72-e511-80d4-00155d2a68d1",
"transactioncurrencyid_value": "50b6dd7b-f16d-e511-80d0-00155db07cb1" } ]
}
在提出请求之前添加以下内容headers
parent.$.ajax({
url : customurl,
headers: {
"Accept": "application/json" ,
"Content-Type":"application/json; charset=utf-8",
"OData-MaxVersion":"4.0",
"OData-Version":"4.0",
"Prefer":"odata.include-annotations=OData.Community.Display.V1.FormattedValue"
},
现在数据将具有与之前相同的值
new_modeofcontact: 1000001
new_modeofcontact@OData.Community.Display.V1.FormattedValue : "Email"