标签: dynamics-crm-2016

使用WebAPI设置CRM查找值

谁已完成CRM Web API调用,以使用来自其他实体的Lookup值更新CRM实体.

我正在尝试使用WebAPI,CRM 2016将查找值设置为CRM中的另一个实体.如果我禁用查找值但是一旦启用查找值,我就会收到错误请求.

下面是我在LinqPad中的代码,所以它确实有效.

void Main()
{   
using(var webClient = new WebClient()){
    webClient.Credentials = new NetworkCredential("Username", "Password", "Domain");
    webClient.Headers.Add("OData-MaxVersion", "4.0");
    webClient.Headers.Add("OData-Version", "4.0");
    webClient.Headers.Add("accept", "application/json");
    webClient.Headers.Add("Content-Type","application/json");
    webClient.Headers.Add("Prefer", "odata.include-annotations=*");         

    webClient.BaseAddress = "http://dev.company.com/DEV2016/api/data/v8.0/";

    var JO = new JObject();
    JO.Add("col_name","My Name");
    //JO.Add("col_contactid@odata.bind","/contacts(7266f26b-7105-e611-811e-005056b61789)");
    var dataString = JO.ToString();

    var responseString = webClient.UploadString("col_advisors", "POST", dataString);

    Console.WriteLine(webClient.ResponseHeaders.Get("OData-EntityId"));
}
}
Run Code Online (Sandbox Code Playgroud)

dynamics-crm-2016

3
推荐指数
2
解决办法
5245
查看次数

来自iFrame的postMessage不再适用于CRM 2016内部部署

我一直在使用postMessage从iFrame到CRM进行一段时间的通信.它在CRM 2011和CRM 2015中有效,但它不再适用于CRM 2016.

iFrame javascript代码:

    var pass_data = {
        'refresh': 'false',
        'expand': 'true'
    };        
    window.parent.postMessage(JSON.stringify(pass_data), 'crm url');
Run Code Online (Sandbox Code Playgroud)

CRM javascript:

function setListener() {

  if (window.XMLHttpRequest) {
    //for browsers other than ie
    window.addEventListener("message", receivePostMessage, false);

  } else {
    //ie
    window.attachEvent('onmessage',receivePostMessage);

  }
} 

function receivePostMessage(event) {
   //do something with event.data
   var pass_data = JSON.parse(event.data);
   alert(pass_data);
  }
Run Code Online (Sandbox Code Playgroud)

setListener()在页面加载时被调用,我已经确认它正被调用.我已经尝试使用"*"作为目标原点,它仍然无法正常工作.

有谁知道这在CRM 2016中是否仍然是一个可行的选择?

javascript iframe postmessage dynamics-crm dynamics-crm-2016

3
推荐指数
1
解决办法
1217
查看次数

Dynamics CRM 2016.Web API Auth.我有令牌,现在是什么?

使用ADAL libs for java我设法使用我的office365凭证获取Access,Refresh和ID Tokens.

现在我的意图是使用REST Web API,我的目的是创建一个实体,作为概念的证明.根据我与其他供应商和REST API的经验,一旦您拥有有效的令牌,您只需将其添加为授权标头,如:

Authorization=Bearer 709709JHKLJHKJLhHKHKJHKH...etc
Run Code Online (Sandbox Code Playgroud)

在Dynamic CRM 2016中有类似的东西吗?

这里这里是关于组成一个POST HTTP请求不错的信息,但我缺少授权部分...任何想法家伙?

java authentication dynamics-crm adal dynamics-crm-2016

3
推荐指数
1
解决办法
1028
查看次数

如何检查 Dynamics CRM 2016 中是否加载了 Web 资源控件

必须从另一个 webresource 控件访问 Webresource 控件使用以下 javascript,

  var webResource = $(window.parent.Xrm.Page.getControl(webResourceName).getObject().contentWindow.window.document.getElementById(dropDownName));
Run Code Online (Sandbox Code Playgroud)

但有时它工作正常,有时它返回空值。

因此可以检查网络资源是否已加载。

crm dynamics-crm-2016

3
推荐指数
1
解决办法
3550
查看次数

我们可以在MS CRM中的"发布"或"发布所有自定义"按钮上编写事件/功能

实际上,我希望每次开发人员发布自定义项时都执行一项功能.因此,我们可以在点击"发布实体"或"发布所有自定义"按钮时编写任何自定义逻辑.OOB还是不受支持的方式?

它不是业务需求,更多的是团队中简化的代码开发过程.

dynamics-crm dynamics-crm-2011 dynamics-crm-online dynamics-crm-2013 dynamics-crm-2016

3
推荐指数
2
解决办法
142
查看次数

3
推荐指数
1
解决办法
308
查看次数

开发时将单个文件部署到Dynamics 365(例如Web资源)

我正在开发Dynamics 365中的第一个简单应用程序,其中一个主要部分是一个涉及大量调整 - 保存 - 测试 - 重复工作流程的Web资源.到目前为止,每次我对我的网络资源进行微小的更改时,我一直在部署它,打开解决方案自定义设置,导航到我的特定Web资源,打开它,单击"文本编辑器"按钮,粘贴到我的更新了Javascript代码,并保存/发布更改.

这个过程很繁琐,我想找到一种自动化方法.我一直在研究Dynamics 365部署工具,我已经找到了CRM Package Deployer工具,但是我发现它需要我设置一个完整的部署包(一个巨大的XML文件),包括我的整个定制,而不是单个我目前正在处理的文件.有没有办法使用这些(或其他)工具自动部署单个文件?或者是否可以使用ONLY A SINGLE FILE部署一个包,而不是每次只更改一个文件时重新部署整个解决方案的包?

microsoft-dynamics dynamics-crm dynamics-crm-2016

3
推荐指数
1
解决办法
543
查看次数

向 Dynamics CRM 解决方案添加独特的实体子组件

我正在开发一个实用程序,在其中我根据提供的目标解决方案创建回滚解决方案。截至目前,该实用程序运行良好,它读取要在目标组织上部署的解决方案,并在目标组织上创建一个新的回滚解决方案,其中包含来自目标的所有必要组件,如实体、Web 资源、SDK 步骤、安全角色、工作流等组织。我已经使用SDK的AddSolutionComponentRequest类来实现这一点。

当实用程序检测到解决方案中的实体时,它只需添加整个实体以及所有元数据,例如所有字段、视图、表单等。

CRM 2016引入了解决方案细分的功能,通过该功能我们可以专门添加那些发生变化的实体组件。

我如何在我的实用程序中利用此功能,因为我还没有找到任何允许我向解决方案添加特定实体组件的 API 方法。

c# dynamics-crm dynamics-crm-2016 dynamics-crm-365

3
推荐指数
1
解决办法
641
查看次数

Dynamics CRM插件注册工具无法登录 - 无错误消息

我的CRM版本

Microsoft Dynamics 365 Version 1612 (9.0.0.3172) (DB 9.0.0.3172) online
Run Code Online (Sandbox Code Playgroud)

最近从微软网站(版本8.2.1.1)下载的SDK.

https://www.microsoft.com/en-gb/download/details.aspx?id=50032

问题

我没有收到任何错误消息,它只返回登录屏幕.

microsoft-dynamics dynamics-crm dynamics-crm-2016

3
推荐指数
1
解决办法
1216
查看次数

排除连接到CRM的LINQ表达式中的数组

我正在尝试运行一个LINQ查询,该查询获取特定类型的所有对象[new_contact],但过滤掉那些在列表[excludeIdentifiers]中匹配的特定字段值[new_identifier]的查询.

public static List<new_placement>ActivityCounter(Account account, CRM2011DataContext CRMcontext)
{
    int[] excludedIdentifiers = { 6, 7, 8, 9, 13, 14, 19, 20, 38, 39, 40, 41, 42, 43, 44, 45 };
    var myActivities = (from a in CRMcontext.new_placementSet
                             where
                             !(a.new_entity_identifier.Value.Equals(excludedIdentifiers))
                                 select new new_placement() { ActivityId = a.ActivityId }).ToList();
        return myActivities;
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

System.ServiceModel.FaultException`1 occurred
  HResult=0x80131501
  Message=Condition for attribute 'new_placement.new_entity_identifier': expected argument(s) of type 'System.Int32' but received 'System.Int32[]'.
  Source=<Cannot evaluate the exception source>
StackTrace:<Cannot evaluate the exception stack trace>
Run Code Online (Sandbox Code Playgroud)

我确定错误是由第五行引起的(因为没有它就会运行正常):

!(a.new_entity_identifier.Value.Equals(excludedIdentifiers))
Run Code Online (Sandbox Code Playgroud)

我在内部和Windows …

c# linq dynamics-crm-2016 visual-studio-2017

2
推荐指数
1
解决办法
204
查看次数