zoukankan      html  css  js  c++  java
  • QualifyLead PlugIn(转)

    QualifyLead PlugIn

    Supposing you needed some custom logic to happen immediately after a lead was qualified. You can achieve this by registering a Plug-in on the QualifyLead Post Operation stage. From within this Plug-in you can easily get a reference to the newly created Account, Contact and Opportunity and make any changes you need.

    Inside the PlugIn you need the following code:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    IOrganizationService service = localContext.OrganizationService;
    // Get the qualified lead
    EntityReference leadid = (EntityReference) localContext.PluginExecutionContext.InputParameters["LeadId"];
    Lead lead = (Lead)service.Retrieve(leadid.LogicalName, leadid.Id,new ColumnSet(LeadAttributes.crm_AccountType));
     
    // Get the newly created account, contact, opportunity
    Contact contact = null;
    Opportunity opportunity = null;
    Account account = null;
    foreach (EntityReference created in (IEnumerable<object>) localContext.PluginExecutionContext.OutputParameters["CreatedEntities"])
    {
        switch (created.LogicalName)
        {
            case Contact.EntityLogicalName:
                contact = (Contact)service.Retrieve(Contact.EntityLogicalName, created.Id, new ColumnSet(true));
                break;
            case Account.EntityLogicalName:
                account = (Account)service.Retrieve(Account.EntityLogicalName, created.Id, new ColumnSet(true));
                break;
            case Opportunity.EntityLogicalName:
                opportunity = (Opportunity)service.Retrieve(Opportunity.EntityLogicalName, created.Id, new ColumnSet(true));
                break;
     
        }
    }

    If you need to make any changes to the created records, you can simply use:

    1
    2
    contact.LastName = "some change";
    service.Update(contact);

    Hope this helps.

  • 相关阅读:
    kubernetes之StatefulSet详解
    kubernetes调度之污点(taint)和容忍(toleration)
    Kubernetes调度之亲和与反亲和
    kubernetes调度之 PriorityClass
    kubernetes里的各种port解惑
    # kubernetes调度之nodeName与NodeSelector
    kubectl rollout回滚和autoscale自动扩容
    Kubernetes基本概念之Label
    kubernetes之多容器pod以及通信
    设计模式-装饰模式
  • 原文地址:https://www.cnblogs.com/janmson/p/2880032.html
Copyright © 2011-2022 走看看