المهلة عند استيراد ملفات التخصيص كبير إلى Microsoft Dynamics CRM

ينطبق على: Microsoft Dynamics CRM 2011Dynamics CRM 4.0

هام: تتضمن هذه المقالة معلومات حول كيفية تعديل التسجيل. تأكد من النسخ الاحتياطي للسجل قبل تعديله. تأكد من معرفة كيفية استعادته في حالة حدوث مشكلة. لمزيد من المعلومات حول كيفية عمل نسخة احتياطية واستعادة وتعديل السجل، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
وصف 256986 تسجيل Microsoft Windows

الأعراض


عندما تقوم باستيراد ملفات التخصيص الكبيرة في Microsoft Dynamics CRM 3.0 أو في Microsoft Dynamics CRM 4.0، المهلة. بالإضافة إلى ذلك، تتلقى إحدى رسائل الخطأ التالية.
رسالة الخطأ 1
استيراد خطأ المهلة.


رسالة الخطأ 2
تجاوز الطلب الحد الأقصى طول.
رسالة الخطأ الثالثة
تعذر تحميل الملف أو فشل الاستيراد
رسالة الخطأ 4
هذا الملف ليس ملف تخصيص صالحة. الرجاء استخدام. ملف XML الذي تم إنشاؤه بواسطة عملية تصدير التخصيصات.
إذا تم تعيين قيمة DevErrors إلى "على" في الملف Web.config، تتلقى رسالة الخطأ التالية:
تقرير خطأ النظام الأساسي Microsoft CRM:


وصف الخطأ: انتهت مهلة


تفاصيل الخطأ: تفاصيل حول هذا الخطأ عدم توفيره من قبل النظام الأساسي.


رقم الخطأ: 0x80040E31
بالإضافة إلى ذلك، عندما تقوم بترقية قاعدة بيانات Microsoft CRM كبيرة من Microsoft Business Solutions-1.2 CRM لبرنامج Microsoft Dynamics 3.0 أو من Microsoft Dynamics CRM 3.0 إلى Microsoft Dynamics CRM 4.0، قد تتلقى رسالة الخطأ التالية:
09:54:25 | خطأ | تثبيت الاستثناء. System.Exception: فشل إجراء Microsoft.Crm.Setup.Server.InstallDatabaseAction. ---> System.Data.SqlClient.SqlException: انتهت المهلة. انقضت فترة المهلة قبل إكمال العملية أو الملقم لا يستجيب. في System.Data.SqlClient.SqlCommand.ExecuteNonQuery() في Microsoft.Crm.Setup.DatabaseInstaller.DatabaseUtility.ExecuteSql (قاعدة بيانات إينستالداتاباسي، سلسلة sql، مهلة Int32) في Microsoft.Crm.Setup.DatabaseInstaller.SqlScriptAction.Execute() في Microsoft.Crm.Setup.DatabaseInstaller.DatabaseInstaller.Install (رمز اللغة Int32 ملف السلسلة، ترقية منطقية) في Microsoft.Crm.Setup.Server.InstallDatabaseAction.Do (IDictionary معلمات) في Microsoft.Crm.Setup.Common.Action.ExecuteAction (عمل، معلمات IDictionary، تراجع منطقية)---إنهاء تتبع مكدس الذاكرة المؤقتة الاستثناء الداخلي---في Microsoft.Crm.Setup.Common.Action.ExecuteAction (الإجراء الإجراء معلمات IDictionary، تراجع منطقية) في Microsoft.Crm.Setup.Common.Installer.Install (IDictionary ستاتيسافير) في Microsoft.Crm.Setup.Server.DatabaseInstaller.Install (IDictionary ستاتيسافير) في Microsoft.Crm.Setup.Common.ComposedInstaller.InternalInstall (IDictionary ستاتيسافير) في Microsoft.Crm.Setup.Common.ComposedInstaller.Install (IDictionary ستاتيسافير) في Microsoft.Crm.Setup.Server.ServerSetup.Upgrade (IDictionary بيانات) في Microsoft.Crm.Setup.Server.ServerSetup.Run()

السبب


تحدث هذه المشكلة بسبب تحقق أحد الشروط التالية:
  • الوقت الذي يستخدم لاستيراد ملفات التخصيص أو ترقية Microsoft Business Solutions-يتجاوز CRM oledbtimeout، تكون القيمة الافتراضية في Microsoft Dynamics CRM للكمبيوتر الذي يقوم بتشغيل Microsoft SQL Server.
  • الوقت الذي يتم استخدامه لاستيراد ملفات التخصيص أو ترقية Microsoft CRM تتجاوز القيمة اكستينديدتيميوت المستخدمة لعمليات طويلة الأمد.

    ملاحظة: يجب عدم تعيين إدخال التسجيل اكستينديدتيميوت على خادم Microsoft Dynamics CRM إلى قيمة أكبر من 2147483647. وهذا الحد الأقصى القيمة التي يمكن استخدام إدخال التسجيل اكستينديدتيموت.

    ملاحظة: يمكن استيراد ملفات تخصيص عملية طويلة الأمد.
  • حجم الملف Customization.xml أكبر من 7.5 ميغا بايت (MB).

    ملاحظات
    • يتم إنشاء ملف Customization.xml عندما تقوم بتصدير الكيانات المخصصة.
    • بشكل افتراضي، يحدد Microsoft ASP.NET حجم طلب HTTP إلى 8 ميغابايت.

الحل


لحل هذه المشكلة، استخدم واحد أو أكثر من الطرق التالية.

الطريقة الأولى: إضافة في oledbtimeout، ومفاتيح التسجيل الفرعية اكستينديدتيميوت لزيادة قيم المهلة

تحذير قد تحدث مشكلات خطيرة إذا قمت بتعديل التسجيل بشكل غير صحيح باستخدام "محرر التسجيل" أو باستخدام طريقة أخرى. قد تتطلب هذه المشكلات إعادة تثبيت نظام التشغيل. لا تضمن Microsoft أن تتمكن من حل هذه المشاكل. تعديل التسجيل على مسؤوليتك الشخصية.
  1. انقر فوق ابدأ، ثم انقر فوق تشغيل، اكتب regedit، وثم انقر فوق موافق.
  2. حدد موقع مفتاح التسجيل الفرعي التالي:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM
  3. انقر نقراً مزدوجاً فوق MSCRMوالإشارة إلى جديدثم انقر فوق قيمة DWORD لإنشاء قيمة DWORD جديدة.
  4. إعادة تسمية القيمة DWORD بالقيمة التالية:
    OLEDBTimeout

    ملاحظة: هذه القيمة حساسة لحالة الأحرف
  5. زر الماوس الأيمن فوق قيمة DWORD ومن ثم انقر فوق تعديل.
  6. في مربع الحوار تحرير قيمة DWORD ، اكتب 86400 في المربع بيانات القيمة انقر فوق عشري في الخيار الأساسي ومن ثم انقر فوق موافق.


    ملاحظة: وفقا لمتطلبات جهاز الكمبيوتر الذي يقوم بتشغيل SQL server وعدد ملفات التخصيص، يمكن أن تكون القيمة أكبر من 86400. يساوي قيمة 86400 24 ساعة. وهذا يجب أن فقط يمكن القيام بشكل مؤقت أو كخطوة لاستكشاف الأخطاء وإصلاحها. القيمة الموصى بها لهذا ما بين 30 و 300. قد يتسبب ترك هذا الإعداد مرتفع جداً في مشاكل الأداء.
  7. انقر نقراً مزدوجاً فوق MSCRMوالإشارة إلى جديدثم انقر فوق قيمة DWORD لإنشاء قيمة DWORD جديدة.
  8. إعادة تسمية القيمة DWORD بالقيمة التالية:
    اكستينديدتيميوت
  9. زر الماوس الأيمن فوق قيمة DWORD ومن ثم انقر فوق تعديل.
  10. في مربع الحوار تحرير قيمة DWORD ، اكتب 1000000 في المربع بيانات القيمة ومن ثم انقر فوق موافق.

    ملاحظات
    • في المربع " بيانات القيمة "، يمكنك كتابة قيمة أكبر من 1000000. ومع ذلك، لا تكتب قيمة أكبر من 2147483647. هذا هو 0x7FFFFFFF الست عشري.
    • هام: إذا كان هذا المفتاح موجوداً مسبقاً، لاحظ القيمة الحالية. بعد إكمال عملية الاستيراد أو الترقية ل Microsoft Dynamics CRM، تعيين قيمة هذا المفتاح إلى قيمتها الأصلية أو حذف المفتاح إذا لم تكن موجودة مسبقاً. قيمة OLEDBTimeout الافتراضي 30 ثانية.

الطريقة الثانية: تعديل المعلمات في ملفات Web.config مختلفة اثنين

  1. انقر فوق ابدأ، انقر فوق كافة البرامج، انقر فوق أدوات إدارية، وثم انقر فوق إدارة خدمات معلومات إنترنت (IIS).
  2. قم بتوسيع اسم الخادم، ثم قم بتوسيع مواقع ويب.
  3. زر الماوس الأيمن فوق موقع ويب Microsoft CRM v3.0 أو موقع ويب الإصدار 4.0 من Microsoft CRM ، ومن ثم انقر فوق فتح.
  4. انقر نقراً مزدوجاً فوق ملف Web.config وانقر فوق فتح باستخدامثم انقر فوق "المفكرة".
  5. في "المفكرة"، حدد موقع السطر التالي.
    <httpRuntime executionTimeout="300" maxRequestLength="8192"/>
  6. تغيير ب executionTimeout = "3600" وتغيير maxRequestLength = "20000".
  7. حفظ وإغلاق ملف Web.config.
  8. في الدليل الذي قمت بفتح ملف Web.config، افتح المجلد مسكرمسيرفيسيس.
  9. انقر نقراً مزدوجاً فوق ملف Web.config وانقر فوق فتح باستخدامثم انقر فوق "المفكرة".
  10. في "المفكرة"، حدد موقع السطر التالي.
    <httpRuntime maxRequestLength="8192"/>
  11. تغيير maxRequestLength = "20000".
  12. حفظ وإغلاق ملف Web.config.
    • هام: بعد إكمال الإجراء الذي يتطلب أعلاه التغييرات إلى ملف web.config، يجب تعيين هذه المعلمات إلى قيمها الافتراضية.

مزيد من المعلومات


قيمة OLEDBTimeout

وحدة قيمة OLEDBTimeout ثانية. بشكل افتراضي، القيمة OLEDBTimeout 30 ثانية. تتحكم قيمة OLEDBTimeout مهلة SQL المستخدمة لاستعلام SQL واحد. زيادة قيمة OLEDBTimeout مفيد عندما تم التحميل الزائد SQL server. بالإضافة إلى ذلك، يستغرق الاستعلام وقتاً أطول لمعالجة.

قيمة اكستينديدتيميوت

وحدة قيمة اكستينديدتيميوت ميلي ثانية. بشكل افتراضي، القيمة اكستينديدتيميوت 1000000 بالمللي ثانية. تتحكم قيمة اكستينديدتيميوت قيمة المهلة ASP.NET التي تستخدم لطلبات الاستيراد. يجب أن تكون قيمة المهلة أكبر من الوقت للانتهاء من عملية الاستيراد الكامل. زيادة قيمة اكستينديدتيميوت مفيد عند عملية الاستيراد وقتاً طويلاً.

ملاحظة: عندما يكون أداء ملقم SQL بطيء أو عندما يكون هناك العديد من ملفات التخصيص لاستيراد، عملية الاستيراد وقتاً طويلاً.