我有一个长时间运行的进程,可以在整个持续时间内保持打开一个事务.
我无法控制执行方式.
由于事务在整个持续时间内保持打开状态,因此当事务日志填满时,SQL Server无法增加日志文件的大小.
因此该过程因错误而失败"The transaction log for database 'xxx' is full"
.
我试图通过增加数据库属性中的事务日志文件的大小来防止这种情况,但我得到了相同的错误.
不确定我接下来应该尝试什么.这个过程持续了几个小时,因此不容易进行反复试验.
有任何想法吗?
如果有人感兴趣,该过程是组织导入 Microsoft Dynamics CRM 4.0.
有足够的磁盘空间,我们有简单的日志记录模式,并在启动进程之前备份了日志.
- = - = - = - = - UPDATE - = - = - = - = -
感谢所有评论到目前为止.以下是让我相信日志因开放交易而不会增长的原因:
我收到以下错误...
Import Organization (Name=xxx, Id=560d04e7-98ed-e211-9759-0050569d6d39) failed with Exception:
System.Data.SqlClient.SqlException: The transaction log for database 'xxx' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases
Run Code Online (Sandbox Code Playgroud)
所以按照这个建议,我去了" log_reuse_wait_desc column …
我参与开发沙盒式Microsoft Dynamics CRM 2011 Online插件并拥有一组测试,我可以从本地计算机上的xUnit前端驱动,因为我右键单击Package并选择Deploy选项(并求助于当不起作用时使用插件加载器示例).
我希望能够在我的CI装备上自动运行我的测试,我需要它在每次运行时上传一个新的二进制文件.
我们已经看过http://pluginregcrm2011.codeplex.com/,但它有阻止它在网上工作的错误,简而言之,它不再被维护,我不想热衷于拥有应该是什么平台/生态系统应该拥有的工具.
是否有人以非交互方式使用该工具或其他插件上传器?我错过了什么吗?
continuous-integration acceptance-testing dynamics-crm dynamics-crm-2011 dynamics-crm-online
一直在用几个墙撞到我的头上,所以希望一些CRM/Dynamics专家可以帮我一臂之力!
我正在尝试以编程方式从我们的Dynamics CRM实例中获取数据,在Node支持的Express应用程序中使用一组管理凭据.此Express应用程序托管在托管CRM的网络之外的单独服务器上.然后,应用程序将请求,处理并将CRM数据提供给任何已访问的用户(由应用程序中的角色/权限控制),这意味着最终用户只需登录Express应用程序,而无需登录通过ADFS,以便应用程序访问CRM实例.
我们的CRM设置是一个配置为面向互联网(IFD)的内部部署服务器.这使用Active Directory联合身份验证服务.我们的Web应用程序代理服务器在网络的外围运行联合服务,与内部网络上的ADFS服务器进行通信.ADFS对从网络外部(从Internet)连接到内部AD的用户进行身份验证.经过身份验证后,代理允许用户连接到CRM.
我们的本地活动目录与Azure AD同步,因为我们有混合部署.任何O365服务(在线交换,共享点等)都在后台使用Azure AD.我们同步Active目录,因此我们只需要在一个地方管理用户.
CRM有一个端点,例如https://my.crm.endpoint
,我在Azure门户中注册了一个应用程序(称为CRM App),主页设置为CRM端点https://my.crm.endpoint
.
问题是否将应用程序的主页设置为https://my.crm.endpoint
足以将其"链接"到我们的内部CRM实例?
我编写了一个脚本(crm.js),它使用它的应用程序ID 成功请求在Azure门户中注册的CRM应用程序的访问令牌.
示例令牌
eyJ0dWNyIjoiMSIsImlkcCI6Imh0dHBzOi8vc3RzLndpbmRvd3MubmV0LzE5ZTk1...
Run Code Online (Sandbox Code Playgroud)
然后,我使用持票令牌尝试通过通常的端点从Dynamics获取一些联系人:https://my.crm.endpoint/api/data/v8.2/contacts?$ select = fullname,contactid
这失败了,我收到一条401 Unauthorised
错误消息.
问题任何人都可以建议问题是什么?和/或提供有关如何连接Web应用程序(在我的案例中为Express)的详细信息,以便对使用ADFS的内部部署服务器(IFD)上运行的Dynamics CRM进行身份验证请求?
crm.js
let util = require('util');
let request = require("request");
let test = {
username: '<my.email@address.com>',
password: '<my_password>',
app_id: '<app_id>',
secret: '<secret>',
authenticate_url: 'https://login.microsoftonline.com/<tenant_id>/oauth2/token',
crm_url: 'https://<my.crm.endpoint>'
};
function CRM() { }
CRM.prototype.authenticate = function () {
return new Promise((resolve, reject) => { …
Run Code Online (Sandbox Code Playgroud) microsoft-dynamics adfs dynamics-crm node.js azure-active-directory
我们在2016年使用odata v8.1端点成功模仿用户.
请注意,预期的请求流程是:邮递员 - > LocalHost微服务 - > CRM
来自Postman的工作请求示例- > CRM (直接,无需通过微服务)
Accept:application/json
Content-Type:application/json; charset=utf-8
OData-MaxVersion:4.0
OData-Version:4.0
MSCRMCallerID:d994d6ff-5531-e711-9422-00155dc0d345
Cache-Control:no-cache
Run Code Online (Sandbox Code Playgroud)
反对odata终点: ..../api/data/v8.1/leads
请注意,仅当通过邮递员直接针对odata v8.1端点发出此选项时才会成功.
当试图做同样的事情,让本地运行的服务(邮差 - > LocalHost服务 - > CRM),这失败了,只是忽略??? MSCRMCallerID标头.
在检查从Postman传递给LocalHost微服务的头时,请求,由VS 2017中的调试器检查:
{Method: POST, RequestUri: 'https://.../api/data/v8.1/leads', Version: 1.1, Content: System.Net.Http.StringContent, Headers:
{
OData-Version: 4.0
OData-MaxVersion: 4.0
MSCRMCallerID: D994D6FF-5531-E711-9422-00155DC0D345
Cache-Control: no-cache
Accept: application/json
Content-Type: application/json; charset=utf-8
}}
Run Code Online (Sandbox Code Playgroud)
记录是成功创建的,但是在CreatedBy字段上是服务用户名而不是MSCRMCallerID用户名(d994d6ff-5531-e711-9422-00155dc0d345),并且CreatedOnBehalf字段为空.
我们做错了什么?
我们如何通过我们的服务来模拟这种模仿?
编辑+更多信息
请注意,我相信我已经包含了所有相关信息,但如果我没有,请告诉我在此问题上应该提供的其他输入.
我试过了什么?
c# dynamics-crm azure-service-fabric dynamics-crm-2016 dynamics-crm-webapi
我的客户有问题.他有一个Microsoft CRM开发人员,他离开了.现在项目仍未完成.我已经下载了自定义应用程序的源代码,我不想继续开发.我已经尝试过ClickOne部署,它会弹出一个与myapp_TemporaryKey.pfx相关的密码输入框.我试图在网络上的计算机上安装并以调试模式启动,我遇到了同样的问题,它说:
"无法导入以下密钥文件:.密钥文件可能受密码保护.要解决此问题,请尝试再次导入证书或手动将证书导入当前用户的个人证书存储区."
第二个错误是:"导入密钥文件"myapp_TemporaryKey.pfx"已取消
你知道怎么做才能解决这个问题吗?我有.PFX文件,但没有密码.
运行Dynamics CRM 2011部署3.需要定期更新数百万个客户记录(增量更新).使用标准更新(逐个)需要几周时间.此外,我们不想直接触摸数据库,因为它可能在将来破坏数据.
我们可以使用Dynamics CRM 2011 webservice/REST API中的批量更新方法吗?(WhatWhereHow)
我已经下载了CRM Dynamics SDK并将其保存在本地目录中.在我的代码中,我正在使用EntityCollection
(与Xrm名称空间相关的其他类),这意味着我需要添加using Microsoft.Xrm.Sdk;
.
问题是在编译期间我得到错误说:
命名空间"Microsoft"中不存在类型或命名空间名称"Xrm"(您是否缺少程序集引用?)
所以,我仔细检查参考已经作出,非常准确,我看microsoft.xrm.sdk
的确就是我的列表中.只是为了确定,我已经删除它并通过指向具有相同名称的DLL再次添加它.但无济于事......令人讨厌的事情是,我的同事使用相同的代码并在机器上编译(唯一的区别是他在Win 7上,我在Win 8上).
我们如何解决这个问题?
此问题与我通过API调用的Microsoft Dynamics CRM 2015有关.
我创建联系实体:
POST [organization URI]/api/data/contacts
Content-Type: application/json; charset=utf-8
Accept: application/json
{
"emailaddress1": "myemail@example.com",
}
Run Code Online (Sandbox Code Playgroud)
登录面板后,我看到了新的记录.我可以通过API调用它:
[organization URI]/api/data/contacts(f76e4e7c-ea61-e511-80fd-3863bb342b00)
{
"@odata.context":"[organization URI]/api/data/$metadata#contacts/$entity",
"@odata.etag":"W/\"460199\"",
...
"contactid":"f76e4e7c-ea61-e511-80fd-3863bb342b00",
"emailaddress1":"myemail@example.com",
....
}
Run Code Online (Sandbox Code Playgroud)
我想做的下一件事是添加与该联系人关联的注释记录.按照指南我打电话:
POST [organization URI]/api/data/annotations
Content-Type: application/json; charset=utf-8
Accept: application/json
{
"notetext": "TEST",
'contact@odata.bind': 'contacts(f76e4e7c-ea61-e511-80fd-3863bb342b00)'
}
Run Code Online (Sandbox Code Playgroud)
但它返回400错误:
未声明的属性"contact",其在有效内容中仅包含属性注释,但在有效内容中未找到属性值.在OData中,只有声明的导航属性和声明的命名流可以表示为没有值的属性.
我打电话的时候:
POST [organization URI]/api/data/annotations
Content-Type: application/json; charset=utf-8
Accept: application/json
{
"notetext": "TEST",
}
Run Code Online (Sandbox Code Playgroud)
创建了新实体,但没有与联系人的关系.
如何正确撰写此POST请求?我在这里错过了什么?我猜想,那contact@odata.bind
应该呈现有些不同,我试过contactid@odata.bind
,object@odata.bind
,objectid@odata.bind
-但没有效果.
有任何想法吗?
microsoft-dynamics dynamics-crm odata dynamics-crm-webapi microsoft-dynamics-webapi
我们希望客户端能够发布到端点,例如:
[Route("Account", Name = "CreateAccount", Order = 1)]
[HttpPost]
public Account CreateAccount([FromBody] Account account)
{
var newAccount = _accountService.CreateAccountEntity(account);
return newAccount;
}
Run Code Online (Sandbox Code Playgroud)
我们知道这可以做到:
POST [Organization URI]/api/data/v8.2/accounts HTTP/1.1
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0
Accept: application/json
{
"name": "Sample Account",
"creditonhold": false,
"address1_latitude": 47.639583,
"description": "This is the description of the sample account",
"revenue": 5000000,
"accountcategorycode": 1
}
Run Code Online (Sandbox Code Playgroud)
我们如何向消费者展示每个帖子/放置的要求?
要用不同的词来表达它,如果我需要使用CRM 2016提供的Web API更新自定义或基本实体上的记录,我如何知道创建或更新实体所需的字段?
dynamics-crm ×10
c# ×5
.net ×1
adfs ×1
azure ×1
bulkinsert ×1
javascript ×1
node.js ×1
odata ×1
pfx ×1
sql ×1
sql-server ×1
xrm ×1