使用Microsoft Dynamics CRM中的插件将数字值添加到帐户实体的sales rep属性

时间:2011-06-14 15:07:05

标签: dynamics-crm dynamics-crm-4

我已经在类库中编写了代码,之后我构建了代码并将代码复制到了 C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly

我试图模拟这项工作。它没有填充表单中的值。

任何人都可以帮我解决这个问题吗?

public void Execute(IPluginExecutionContext context)
{
    DynamicEntity entity = null;

    if (context.InputParameters.Properties.Contains("Target") &&
        context.InputParameters.Properties["Target"] is DynamicEntity)
    {
        entity = (DynamicEntity)context.InputParameters.Properties["Target"];
        if (entity.Name != EntityName.account.ToString()) { return; }
    }
    else
    {
        return;
    }

    try
    {
        // DynamicEntity followup = new DynamicEntity();
        CrmNumber gcs_numb = new CrmNumber();
        gcs_numb.Value = 10;
        //follow.Properties = new PropertyCollection();
        entity.Properties.Add(new CrmNumberProperty("gcs_numberofsalesreps", gcs_numb));
    }
    catch (System.Web.Services.Protocols.SoapException ex)
    {
        throw new InvalidPluginExecutionException(
                "An error occurred in the Account plug-in.", ex);
    }
}

1 个答案:

答案 0 :(得分:1)

这可能是一些事情,我会请求更多信息:

您是如何注册插件的?通常,您希望在事件前同步注册,即创建。使用Plugin Registration Tool

您是否忽略了对 ICrmService.Update 的调用?

ICrmService service = context.CreateCrmService(true);
service.Update(entity);

您是否已创建自定义字段并正确发布? * gcs_numberofsalesreps *必须作为帐户实体上的有效数字字段存在。