我有两个系统实体:发票和InvicedEtail。
在系统中存在协会1:n -invoice_details(父:发票,孩子:invoicedetail)。
我转到发票详细信息,接下来转到产品部分(Invoicedetail)并添加新产品。现在,该产品和发票是关联的,但我的插件未触发;/
我在Associate上注册了我的插件(插件注册工具中的父和子实体是空的,执行是操作后的)。
代码:
if(context.Message == "Associate")
{
//but plugin not go here - it's not trigger on associate ;/
if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is EntityReference)
{
entityRef = (EntityReference)context.InputParameters["Target"];
entity = service.Retrieve("invoice", entityRef.Id, new Microsoft.Xrm.Sdk.Query.ColumnSet("invoiceid", "numberOfSomething"));
}
else
{
throw new Exception("excep");
}
}
我相信许多人用于许多人。尝试在更新中注册插件并创建InvoicedEtail。您可能希望将过滤属性添加到更新中,因此仅在发票查找发票更改时才触发。然后在设置发票查找时仅执行您的逻辑。