【问题标题】:Dynamics CRM Web API Add Marketing List to Campaign ""Association cannot be performed between an entity of type campaign and an entity of type list.""Dynamics CRM Web API 将营销列表添加到营销活动“”活动类型的实体和列表类型的实体之间无法执行关联。”
【发布时间】:2019-08-30 04:31:28
【问题描述】:

我收到错误消息“无法在活动类型的实体和列表类型的实体之间执行关联。”当我尝试使用 Dynamics CRM Online Web API 在营销活动和营销列表之间建立连接时。

我使用的是V9.0的api

方法一:深度插入

发布: {{webapiurl}}广告系列

主体:

 {
    "name": "test 2",

    "campaignlist_association": [

    {
        "listname":"test3", 
        "createdfromcode":2
    }

]

}

回应: {

“错误”:{ “代码”:“0x80040203”,

"message": "campaign 类型的实体和 list 类型的实体之间不能进行关联。", “内部错误”:{ "message": "campaign 类型的实体和 list 类型的实体之间不能进行关联。", "type": "Microsoft.Dynamics.Solution.Common.CrmNotSupportedException", } } }

方法 2:关联 邮政: …/campaigns(000000000xxxxxx)/campaignlist_association/$ref

主体:

{  
"@odata.id":"{{webapiurl}}/lists(11111111xxxxxxxx)"  
}

回复:

{ “错误”: { “代码”:“0x80040203”,

"message": "campaign 类型的实体和 list 类型的实体之间不能进行关联。",

“内部错误”:{ "message": "campaign 类型的实体和 list 类型的实体之间不能进行关联。", "type": "Microsoft.Dynamics.Solution.Common.CrmNotSupportedException", } } }

结果 两种方法都会产生相同的错误消息:“无法在活动类型的实体和列表类型的实体之间执行关联。”但是,如果我在 Dynamics CRM UI 中关联它们并查询活动,如果我通过 Web api 展开“campaignlist_association”属性,我会准确地看到分配给活动的列表。

【问题讨论】:

    标签: dynamics-crm microsoft-dynamics dynamics-crm-webapi


    【解决方案1】:

    试试这个。我从我的邮递员那里导出了这个。将 {} 替换为您的值。

    curl --location --request POST 'https://{YOUR_ORGANIZATION_URL_HERE}/api/data/v9.0/lists({MARKETING_LIST_UUID})/Microsoft.Dynamics.CRM.AddItemCampaign' \
    --header 'Authorization: Bearer {AUTHENTICATION_TOKEN}' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "Campaign": {
            "campaignid": "{CAMPAIGN_ID}",
            "@odata.type": "Microsoft.Dynamics.CRM.campaign"
        }
    }'
    

    这是一个例子:



    您可以看到,在动态中,数据是在我的广告系列中正确创建的



    【讨论】:

      【解决方案2】:

      许多原生 N-N 关系需要调用操作而不是关联 POST 请求来关联多条记录。您可以查看可用的开箱即用 Web API 操作列表here

      在您的具体情况下,您需要在 POST 请求中调用 Microsoft.Dynamics.CRM.AddItemCampaign 操作,如下所示:

      网址:

      [Organization URI]/lists(YourMarketingListGUID)/Microsoft.Dynamics.CRM.AddItemCampaign
      

      正文:

      {
          "Campaign": {
              "campaignid": "YourCampaignGUID"
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2014-07-15
        • 2016-06-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多