减少MS CRM上的自动保存触发时间

时间:2016-04-06 16:03:33

标签: sql crm autosave

我是MS CRM的新手,我应该将atuo-save触发时间从30秒减少到15秒。我在网上找到了说明但我对系统知之甚少不知道如何实施它们。说明如下:

  

您必须修改“AutoSaveInterval”值   “MSCRM_CONFIG”SQL Server中的“DeploymentProperties”表   数据库。该值以秒为单位。

     

检索自动保存功能间隔触发时间

1 SELECT IntColumn FROM DeploymentProperties 

2 WHERE ColumnName = 'AutoSaveInterval'
     

修改自动保存功能间隔触发时间

1 UPDATE DeploymentProperties

2 SET IntColumn = 100

3 WHERE ColumnName = 'AutoSaveInterval'

这些是我在网上找到的唯一说明。他们在互联网上重演。

非常感谢任何帮助。 谢谢!

2 个答案:

答案 0 :(得分:1)

即使您将数据库上下文设置为MSCRM_CONFIG数据库以外的某个数据库,也可以使用下面的SQL语句管理工作室中的更新语句更改本地部署中的自动保存间隔。 **请注意,这不受支持,因为它未在官方Microsoft CRM文档中记录。 **

关于这一点的另一个注意事项是,在运行SQL更新语句之后运行IIS重置之前,我没有看到这种情况生效,因此我已经测试并验证了这是有效的。另请注意,这也会增加Microsoft CRM服务器和Microsoft SQL Server的负载,因为如果检测到任何更改,您有效地告诉CRM平台您希望将记录保存两倍,因此如果您看到负面性能由此产生的影响,最好切换回CRM默认设置。

  1. 在包含Microsoft CRM数据库的SQL Server上运行下面的更新声明(select语句允许您查看现有设置)。

  2. 在Microsoft Dynamics CRM服务器上运行IISReset以使上述更改生效(理想情况下,这应在正常工作时间之后完成)。

    从MSCRM_CONFIG.dbo.DeploymentProperties中选择IntColumn 在哪里ColumnName =' AutoSaveInterval'

    - 默认= 30(以秒为单位) 更新MSCRM_CONFIG.dbo.DeploymentProperties SET IntColumn = 15 在哪里ColumnName =' AutoSaveInterval'

  3. Manage Auto-Save 是一篇关于如何管理自动保存的好文章,并显示了禁用它的步骤

      

    "(设置 - 管理 - 系统设置 - 为选项选择否,"为所有表单启用自动保存")。请注意,您还可以通过向CRM自定义中的实体的OnSave事件添加代码来禁用特定实体,并将以下函数preventAutoSave添加到onSave事件Web资源,并确保标记选项,&#34 ;将执行上下文作为第一个参数"这个功能。 (文章详细介绍了这些步骤)。

    function preventAutoSave(econtext) {
        var eventArgs = econtext.getEventArgs();
        if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) {
            eventArgs.preventDefault();
        }
    }
    

答案 1 :(得分:0)

首先,没有支持的减少自动保存间隔的方法;可以完全禁用它,但不能减少它。您找到的建议解决方案是不受支持的更改,仅适用于内部部署部署。

我自己没有尝试过该方法,但您需要在CRM配置数据库上运行更新语句 - MSCRM_CONFIG,这可能会影响部署中的所有组织。