Уменьшите время запуска автосохранения на MS CRM

Я довольно новичок в MS CRM и должен уменьшить время запуска atuo-save с 30 секунд до 15. Я нашел инструкции в Интернете, но не знаю достаточно о системе, чтобы знать, как их реализовать. Инструкции следующие:

Вам нужно будет изменить значение "AutoSaveInterval" в таблице "DeploymentProperties" в базе данных "MSCRM_CONFIG" SQL Server. Значение указывается в секундах.

Получение времени триггера автоматического сохранения функции

1 SELECT IntColumn FROM DeploymentProperties 

2 WHERE ColumnName = 'AutoSaveInterval'

Изменение времени триггера автоматического сохранения функции

1 UPDATE DeploymentProperties

2 SET IntColumn = 100

3 WHERE ColumnName = 'AutoSaveInterval'

Это единственные инструкции, которые я нашел в Интернете. Они повторяются через Интернет.

Любая помощь будет принята с благодарностью. Спасибо!

2 ответа

Вы можете изменить интервал автосохранения в локальных развертываниях с помощью приведенного ниже оператора Update, который будет работать в SQL Server Management Studio, даже если для контекста базы данных задано значение, отличное от базы данных MSCRM_CONFIG. ** Обратите внимание, что это не поддерживается, поскольку это не задокументировано в официальной документации Microsoft CRM. **

Еще одно замечание, касающееся этого, заключается в том, что я не видел, чтобы это вступило в силу до запуска сброса IIS после выполнения оператора обновления SQL, поэтому я добавил это в качестве шага, поскольку я проверил и проверил, что это работает. Также обратите внимание, что это также увеличит нагрузку на ваш сервер Microsoft CRM и Microsoft SQL Server, поскольку вы фактически сказали платформе CRM, что вы хотите сохранять записи в два раза чаще, если обнаруживаются какие-либо изменения, поэтому если вы видите отрицательное влияние на производительность от это было бы хорошо, чтобы вернуться к настройке по умолчанию CRM.

  1. Запустите приведенный ниже оператор обновления на сервере SQL, содержащем базы данных Microsoft CRM (оператор select позволяет увидеть существующий параметр).

  2. Запустите IISReset на сервере Microsoft Dynamics CRM, чтобы изменения, приведенные выше, вступили в силу (в идеале это следует делать после обычных рабочих часов).

    ВЫБЕРИТЕ IntColumn из MSCRM_CONFIG.dbo.DeploymentProperties WHERE ColumnName = 'AutoSaveInterval'

    --Default = 30 (в секундах) ОБНОВЛЕНИЕ MSCRM_CONFIG.dbo.DeploymentProperties SET IntColumn = 15 WHERE ColumnName = 'AutoSaveInterval'

Управление автосохранением- хорошая статья о том, как управлять автосохранением, и показывает шаги по ее отключению.

"(Настройки - Администрирование - Системные настройки - Выберите" Нет "для параметра" Включить автосохранение для всех форм "). Обратите внимание, что вы также можете отключить его для определенного объекта, добавив код в событие OnSave для объекта в CRM. Пользовательские настройки и добавление следующей функции предотвратим AutoSave к веб-ресурсу события onSave, отметив опцию "Передавать контекст выполнения в качестве первого параметра" этой функции (статья подробно описывает эти шаги).

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

Прежде всего, нет поддерживаемого способа уменьшения интервала автосохранения; можно вообще отключить, но не уменьшать. Предлагаемое решение, которое вы нашли, является неподдерживаемым изменением и будет применимо только к локальным развертываниям.

Я сам не пробовал этот подход, но вам нужно будет запустить оператор update в базе данных конфигурации CRM - MSCRM_CONFIG и это, вероятно, повлияет на все организации в развертывании.

Другие вопросы по тегам