在 Dynamics CRM 2016 中,选项集(Option Set)是一种特殊的数据类型,它允许用户从预定义的选项列表中选择一个值。Web API 是 Dynamics CRM 提供的一种 RESTful 接口,用于与 CRM 数据进行交互。
实体选项集分为两种类型:
GET /api/data/v8.2/GlobalOptionSetDefinitions(Name='new_opportunitystatus')
POST /api/data/v8.2/accounts
Content-Type: application/json
{
"name": "示例客户",
"accountcategorycode": 1 // 使用选项集的整数值
}
PATCH /api/data/v8.2/accounts(00000000-0000-0000-0000-000000000001)
Content-Type: application/json
{
"accountcategorycode": 2
}
GET /api/data/v8.2/accounts(00000000-0000-0000-0000-000000000001)?$select=accountcategorycode&$expand=accountcategorycode($select=Label)
现象:API 调用返回错误,提示选项集值无效
原因:使用了错误的整数值或字符串值
解决方案:
现象:返回的选项集标签与预期不符
原因:可能未考虑用户语言设置
解决方案:
Accept-Language
字段$expand
查询特定语言的标签现象:之前工作的API突然失败
原因:选项集定义被修改或删除
解决方案:
// 查询账户的类别选项集
var query = "accounts(00000000-0000-0000-0000-000000000001)?$select=accountcategorycode";
// 创建使用选项集的新记录
var newAccount = new JObject
{
["name"] = "新客户",
["accountcategorycode"] = 1 // 使用正确的选项集值
};
通过Web API操作选项集时,务必确保使用正确的选项集值和格式,并考虑多语言环境下的标签显示问题。
没有搜到相关的文章