在尝试创建设备记录时,业务单元Id不能设置为空
本文关键字:Id 单元 业务 不能 设置 创建 记录 | 更新日期: 2024-09-24 16:07:27
我试图用以下代码创建一个设施/设备,但我收到一个错误,说"业务单元id不能设置为NULL"
我在我的crm 2016中只创建了一个业务部门这是我的代码:
string fetchBU = @"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>
<entity name='businessunit'>
<attribute name='name' />
<attribute name='address1_telephone1' />
<attribute name='websiteurl' />
<attribute name='parentbusinessunitid' />
<attribute name='businessunitid' />
<order attribute='name' descending='false' />
</entity>
</fetch>";
EntityCollection resultequipments = _orgService.RetrieveMultiple(new FetchExpression(fetchBU));
if (resultequipments.Entities.Count > 0)
{
Guid BuId;
BuId = (Guid)resultequipments.Entities[0]["businessunitid"];
Entity equipment = new Entity("equipment");
equipment["name"] = "test";
equipment["businessunitid"] = BuId;
_orgService.Create(equipment);
Console.WriteLine("Facility successfully created");
}
提前谢谢。
查询结果中的businessunitid
属性是主键,即Guid
类型。
equipment
实体中的businessunitid
属性是一个查找,由EntityReference
对象表示。
不能将Guid
指定给EntityReference
属性。修改你的代码类似于:
EntityCollection businessUnits = _orgService.RetrieveMultiple(new FetchExpression(fetchBU));
if (businessUnits.Entities.Count > 0)
{
Entity equipment = new Entity("equipment");
equipment["name"] = "test";
equipment["businessunitid"] = new EntityReference("businessunit", businessUnits.Entities[0].Id);
_orgService.Create(equipment);
Console.WriteLine("Facility successfully created");
}