Se produce un tiempo de espera al importar grandes archivos de personalización en Microsoft Dynamics CRM

Seleccione idioma Seleccione idioma
Id. de artículo: 918609
Importante Este artículo contiene información acerca de cómo modificar el registro. Asegúrese de hacer copia de seguridad del registro antes de modificarlo. Asegúrese de que sabe cómo restaurarlo si surge algún problema. Para obtener más información acerca de cómo hacer copia de seguridad, restaurar y modificar el registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
256986 Descripción del registro de Microsoft Windows
Expandir todo | Contraer todo

En esta página

Síntomas

Al importar grandes archivos de personalización en Microsoft Dynamics CRM, puede producirse un tiempo de espera. Además, puede recibir uno de los siguientes mensajes de error.
Mensaje de error 1
Error de tiempo de espera de importación.
Mensaje de error 2
Longitud de solicitud máximo superada.
Mensaje de error 3
No se pudo cargar el archivo o no se pudo importar
Mensaje de error 4
No es un archivo de personalización válido. Utilice una.Archivo XML generado por la exportación de personalizaciones.


Si el valor DevErrors se establece en "On" en el archivo Web.config, recibirá el siguiente mensaje de error:
Informe de errores de la plataforma de Microsoft CRM:
Descripción del error: tiempo de espera agotado
Error: detalles sobre este error no se han proporcionado por la plataforma.
Número de error: 0x80040E31


Además, cuando se actualiza una gran base de datos de Microsoft CRM de Microsoft Business Solutions - CRM 1.2 a Microsoft Dynamics 3.0 o de Microsoft Dynamics CRM 3.0 a Microsoft Dynamics CRM 4.0, puede aparecer el siguiente mensaje de error:
09:54:25| Error| Instale la excepción.System.Exception: Error en la acción Microsoft.Crm.Setup.Server.InstallDatabaseAction. ---> System.Data.SqlClient.SqlException: tiempo de espera agotado. Transcurrido el período de tiempo de espera antes de la finalización de la operación o el servidor no responde. en System.Data.SqlClient.SqlCommand.ExecuteNonQuery() en Microsoft.Crm.Setup.DatabaseInstaller.DatabaseUtility.ExecuteSql (InstallDatabase de base de datos, sql String, Int32 timeout) en Microsoft.Crm.Setup.DatabaseInstaller.SqlScriptAction.Execute() en Microsoft.Crm.Setup.DatabaseInstaller.DatabaseInstaller.Install (Int32 códigoIdioma, archivo de cadena, booleano actualización) en Microsoft.Crm.Setup.Server.InstallDatabaseAction.Do (parámetros IDictionary) en Microsoft.Crm.Setup.Common.Action.ExecuteAction (acción, parámetros IDictionary, deshacer booleano)---extremo del seguimiento de pila de la excepción interna---en Microsoft.Crm.Setup.Common.Action.ExecuteAction (acción, parámetros IDictionary, deshacer booleano) en Microsoft.Crm.Setup.Common.Installer.Install (IDictionary stateSaver) en Microsoft.Crm.Setup.Server.DatabaseInstaller.Install (IDictionary stateSaver) en Microsoft.Crm.Setup.Common.ComposedInstaller.InternalInstall (IDictionary stateSaver) en Microsoft.Crm.Setup.Common.ComposedInstaller.Install (IDictionary stateSaver) en Microsoft.Crm.Setup.Server.ServerSetup.Upgrade (datos IDictionary) en Microsoft.Crm.Setup.Server.ServerSetup.Run()

Causa

Este problema se produce porque una de las siguientes condiciones es verdadera:
  • El tiempo que se utiliza para importar los archivos de personalización o para la actualización de Microsoft Business Solutions - CRM supera el valor de OLEDBTimeout predeterminado en Microsoft Dynamics CRM para el equipo que está ejecutando Microsoft SQL Server.
  • El tiempo que se utiliza para importar los archivos de personalización o para actualizar Microsoft CRM supera el valor de ExtendedTimeout que se utiliza para operaciones de larga duración.

    Nota La entrada de registro ExtendedTimeout en el servidor de Microsoft Dynamics CRM no debe establecerse en un valor mayor que 2.147.483.647. Que es el valor máximo que se puede utilizar la entrada de registro ExtendedTimout.

    Nota Importación de archivos de personalización puede ser una operación de larga duración.
  • El tamaño del archivo Customization.xml es superior a 7,5 megabytes (MB).

    Notas
    • El archivo Customization.xml se crea al exportar entidades personalizadas.
    • De forma predeterminada, Microsoft ASP.NET limita el tamaño de la solicitud HTTP a 8 MB.

Solución

Para resolver este problema, utilice uno o varios de los métodos siguientes.

Método 1: Agregar theOLEDBTimeout y las subclaves del registro de ExtendedTimeout para incrementar los valores de tiempo de espera

Advertencia Pueden producirse problemas graves si modifica incorrectamente el registro mediante el Editor del registro o con cualquier otro método. Estos problemas pueden requerir la reinstalación del sistema operativo. Microsoft no puede garantizar que estos problemas puedan resolverse. Modifique el registro bajo su responsabilidad.
  1. Haga clic en Inicio, haga clic en Ejecutar, tipo Regedity, a continuación, haga clic en Aceptar.
  2. Busque la siguiente subclave del registro:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM
  3. Haga clic en MSCRM, elija nuevoy, a continuación, haga clic en Valor DWORD para crear un nuevo valor DWORD.
  4. Cambiar el nombre del valor DWORD en el valor siguiente:
    OLEDBTimeout

    NOTA:Este valor distingue mayúsculas de minúsculas
  5. Haga clic en el valor DWORD y, a continuación, haga clic en Modificar.
  6. En el cuadro de diálogo Editar valor DWORD , escriba 86400 en el cuadro información del valor , haga clic en Decimal en la opción de Base y, a continuación, haga clic en Aceptar.

    NotaSegún el requisito del equipo que está ejecutando el servidor SQL y el número de archivos de personalización, el valor puede ser mayor que 86400. El valor de 86400 equivale a 24 horas.Este valor es en segundos. Esto deberíasólo hacerse temporalmente o como un paso de solución de problemas. El valor recomendado de esto es entre 30 y 300. Dejar este valor demasiado alto puede provocar problemas de rendimiento.
  7. Haga clic en MSCRM, elija nuevoy, a continuación, haga clic en Valor DWORD para crear un nuevo valor DWORD.
  8. Cambiar el nombre del valor DWORD en el valor siguiente:
    ExtendedTimeout
  9. Haga clic en el valor DWORD y, a continuación, haga clic en Modificar.
  10. En el cuadro de diálogo Editar valor DWORD , escriba 1000000 en los datos del valor y a continuación, haga clic en Aceptar. Este valor está en milisegundos.

    Notas
    • En el cuadro información del valor, puede escribir un valor que sea mayor de 1.000.000. Sin embargo, no escriba un valor que es mayor que 2.147.483.647. Éste es el hexadecimal 0x7FFFFFFF.
    • Importante: Si ya existe esta clave, observe el valor actual. Después de completar la importación o la actualización de Microsoft Dynamics CRM, establezca el valor de esta clave al valor original o eliminar la clave, si no existe previamente. El valor de defaultOLEDBTimeout es 30 segundos.

Método 2: modificar los parámetros en dos archivos Web.config

  1. Haga clic en Inicio, seleccione Todos los programas, haga clic en Herramientas administrativasy, a continuación, haga clic en Administrador de servicios de Internet Information Server (IIS).
  2. Expanda el nombre del servidor y, a continuación, expanda sitios Web.
  3. Haga clic en el sitio Web de Microsoft CRM y, a continuación, haga clic en Explorar.
  4. Haga clic en el archivo Web.config, haga clic en Abrir cony, a continuación, haga clic en Bloc de notas.
  5. En el Bloc de notas, busque la línea siguiente.
    <httpRuntime executionTimeout="300" maxRequestLength="8192"/>
  6. Cambiar executionTimeout = "3600" y cambiar maxRequestLength = "20000".
  7. Guarde y cierre el archivo Web.config.
  8. En el directorio en que se abrió el archivo Web.config, abra la carpeta MSCRMServices.
  9. Haga clic en el archivo Web.config, haga clic en Abrir cony, a continuación, haga clic en Bloc de notas.
  10. En el Bloc de notas, busque la línea siguiente.
    <httpRuntime maxRequestLength="8192"/>
  11. Cambiar maxRequestLength = "20000".
  12. Guarde y cierre el archivo Web.config.
    • Importante: Después de completar la acción que deberá realizar los cambios anteriores en el archivo web.config, estos parámetros deben restablecerse a sus valores predeterminados.

Más información

El valor de OLEDBTimeout

La unidad del valor OLEDBTimeout es segundos. De forma predeterminada, theOLEDBTimeoutvalue es 30 segundos. El valor de OLEDBTimeout controla el valor de tiempo de espera SQL que se utiliza para una sola consulta SQL. El valor de increasedOLEDBTimeout es útil cuando el servidor SQL está sobrecargado. Además, la consulta tarda más tiempo en procesar.

El valor de ExtendedTimeout

La unidad del valor ExtendedTimeout es milisegundos. De manera predeterminada, el valor de ExtendedTimeout es 1000000 milisegundos. El valor de ExtendedTimeout controla el valor de tiempo de espera ASP.NET que se utiliza para las solicitudes de importación. El valor de tiempo de espera debe ser mayor que el tiempo para finalizar el proceso de importación todo. El mayor valor de ExtendedTimeout es útil cuando el proceso de importación tarda mucho tiempo.

Nota Cuando el rendimiento del servidor SQL es lento o cuando hay muchos archivos de personalización para importar, el proceso de importación tarda mucho tiempo.

Propiedades

Id. de artículo: 918609 - Última revisión: jueves, 02 de enero de 2014 - Versión: 4.0
Palabras clave: 
kbmbscrm40 kbmbscustomization kberrmsg kbtshoot kbmbsmigrate kbprb kbsurveynew kbmt KB918609 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 918609

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com