【发布时间】:2018-07-11 17:24:48
【问题描述】:
我有一个名为项目分配的自定义实体,我在 LastUpdatedOn 字段的更新后触发了一个插件。
插件更新同一实体上的可用数量字段,没有其他字段。
我不明白为什么它会导致无限循环。我收到以下错误:
此工作流作业已取消,因为启动它的工作流包含无限循环。
任何帮助将不胜感激。这是我的代码。
Entity entItemAllocation = (Entity)context.InputParameters["Target"];
if (context.PostEntityImages.Contains("PostImage") && context.PostEntityImages["PostImage"] is Entity)
{
//get PostImageEntity
Entity postImageEntity = context.PostEntityImages["PostImage"];
int qtyAvailable = 0;
if (postImageEntity.Attributes.Contains("wo_lotnumber"))
lotNum = postImageEntity.Attributes["wo_lotnumber"].ToString();
if (postImageEntity.Attributes.Contains("wo_itemnumber"))
itemNum = ((EntityReference)postImageEntity.Attributes["wo_itemnumber"]).Id;
if (postImageEntity.Attributes.Contains("wo_qtyavailable"))
qtyAvailable = Convert.ToInt32(postImageEntity.Attributes["wo_qtyavailable"]);
if (dictAssignLotQty.ContainsKey($"{lotNum}|{itemNum}"))
{
decimal assignLotQty = dictAssignLotQty[$"{lotNum}|{itemNum}"];
qtyAvailable -= Convert.ToInt32(assignLotQty);
entItemAllocation["wo_qtyavailable"] = qtyAvailable;
service.Update(entItemAllocation);
}
}
【问题讨论】:
标签: c# plugins dynamics-crm