我有一个注册更新、订购、后期操作的插件。在插件中,我对salesorderdetail 执行retrievemultiple。我遇到的问题是订单中有 3 种产品,但我从检索操作中返回了 5 行。我在测试过程中多次添加和删除相同的产品,我不确定这是否是导致问题的原因。我在想,从订单中删除产品后,它可能会设置一个标志并在之后被删除,但我没有看到状态代码或状态代码作为属性。为什么它会返回太多行?
这是我的代码...
// Set the properties of the QueryExpression object.
orderDetailQuery.EntityName = "salesorderdetail";
orderDetailQuery.ColumnSet = orderDetailColumnSet;
EntityCollection salesOrderDetail = service.RetrieveMultiple(orderDetailQuery);
orderProductQuery.EntityName = "product";
orderProductQuery.ColumnSet = orderProductColumnSet;
foreach (var orderDetail in salesOrderDetail.Entities)
{
if(orderDetail.Attributes.Contains("productid"))
{
productGuid = ((EntityReference)orderDetail["productid"]).Id;
Entity product = service.Retrieve("product", productGuid, orderProductColumnSet);
}
}
感谢您的帮助!!