इसके माध्यम से साझा किया गया


अनुकूलन सर्वोत्तम प्रथाएँ

प्रदर्शन, प्रयोज्यता और समर्थन संबंधी समस्याओं से बचने के लिए इन सर्वोत्तम प्रथाओं का पालन करें। Dynamics 365 Field Service

प्रपत्रों पर कस्टम फ़ील्ड्स को छोटा करें

सिस्टम कस्टमाइज़र अपने उद्योग और व्यवसाय के लिए विशिष्ट जानकारी कैप्चर करने, व्यावसायिक प्रक्रियाओं को चलाने और रिपोर्ट करने के लिए जानकारी एकत्र करने के लिए एंटिटी प्रपत्रों में कस्टम फ़ील्ड जोड़ते हैं. हालाँकि, किसी प्रपत्र पर बहुत अधिक कस्टम फ़ील्ड प्रदर्शन समस्याएँ पैदा कर सकते हैं.

प्रदर्शन समस्याओं से बचने के लिए:

  • सभी प्रपत्रों पर कस्टम फ़ील्ड्स की संख्या कम करें. वर्क ऑर्डर फॉर्म से शुरू करना एक अच्छा विचार है यदि यह फील्ड सर्विस ऐप में आपका सबसे अधिक उपयोग किया जाने वाला फॉर्म है।
  • कस्टम फ़ील्ड के बीच, लुकअप प्रकार फ़ील्ड और सबग्रिड को कम करने से लोड समय की तरह फ़ॉर्म प्रदर्शन पर सबसे बड़ा प्रभाव पड़ता है।
  • कस्टम फ़ील्ड्स (विशेष रूप से लुकअप और सबग्रिड्स) को पहले प्रपत्र टैब से अन्य प्रपत्र टैब में ले जाएँ.
  • प्रपत्र पर डिफ़ॉल्ट रूप से कम उपयोग किए गए फ़ील्ड्स छुपाएँ.

आउट-ऑफ-बॉक्स वेब संसाधन, विकल्प सेट, सुरक्षा भूमिकाएँ या वर्कफ़्लोज़ परिवर्तित न करें

आउट-ऑफ-बॉक्स वेब संसाधनों, विकल्प सेट, सुरक्षा भूमिकाएँ, या वर्कफ़्लोज़ को अनुकूलित करना, निर्भरतालेना, या कस्टम आह्वान समर्थित नहीं है और इसके परिणामस्वरूप अनपेक्षित सिस्टम व्यवहार हो सकता है.

इन घटकों को अनुकूलित करने वाले संगठन तुरंत अपने वातावरण में समस्याएँ नहीं देख सकते हैं। हालाँकि, जैसे ही Microsoft अनुकूलित आउट-ऑफ-बॉक्स घटकों में परिवर्तन जारी करता है, ये परिवर्तन उस घटक की शीर्ष परत पर लागू नहीं होते हैं. विशिष्ट अनुकूलित परत भविष्य के सभी परिवर्तनों को ओवरराइड करती है, जो अंततः अप्रत्याशित त्रुटियों और व्यवहार का कारण बनती है।

दिनांक फ़ील्ड ्स या सिस्टम स्थिति को संशोधित, संपादित या हटाएँ नहीं

दिनांक फ़ील्ड ्स और स्थितियों को संशोधित करना, संपादित करना या हटाना व्यावसायिक तर्क को प्रभावित कर सकता है और समाधान अद्यतनों के साथ समस्याएँ उत्पन्न कर सकता है. वर्क ऑर्डर की तारीख के उदाहरण वादे से समय और वादा किए गए समय हैं स्थिति फ़ील्ड के उदाहरणों में कार्य आदेश प्रणाली स्थिति और अनुबंध प्रणाली स्थिति शामिल हैं.

प्रपत्रों से आउट-ऑफ-बॉक्स फ़ील्ड संपादित न करें या निकालें

ग्राहक अपनी व्यावसायिक आवश्यकताओं को समायोजित करने के लिए आउट-ऑफ-द-बॉक्स फ़ील्ड संपादित करते हैं। हालाँकि, आउट-ऑफ-द-बॉक्स फ़ील्ड संपादित करने से त्रुटियाँ हो सकती हैं, खासकर जब प्रक्रियाएँ उन फ़ील्ड मानों पर निर्भर करती हैं.

त्रुटियों से बचने के लिए:

  • किसी प्रपत्र से अवांछित फ़ील्डछुपाएँ.
  • अवांछित फ़ील्ड्स को किसी अन्य प्रपत्र टैब पर ले जाएँ.

यहां सिर्फ एक उदाहरण दिया गया है: फ़ील्ड सेवा प्रक्रियाएं बुककरने योग्य संसाधन बुकिंग रिकॉर्ड पर अनुमानित आगमन समय फ़ील्ड मान की गणना करती हैं ताकि यह इंगित किया जा सके कि किसी फ्रंटलाइन कार्यकर्ता के साइट पर कब आने की उम्मीद है। यदि आपके संगठन को इस फ़ील्ड की आवश्यकता नहीं है, तो इसे निकालने के बजाय इसे प्रपत्र पर छुपाएँ.

अधिक जानकारी के लिए, इन आलेखों को देखें:

विकल्प सेट (पसंद) मानों को संपादित न करें

आउट-ऑफ-द-बॉक्स फ़ील्ड के विकल्प सेट मानों को संपादित करने से त्रुटियाँ हो सकती हैं, खासकर जब प्रक्रियाएँ उन फ़ील्ड मानों पर या नवीनीकरण के दौरान निर्भर करती हैं।

त्रुटियों से बचने के लिए:

  • केवल विकल्प सेट labels and never edit विकल्प सेट मान आउट-ऑफ़-द-बॉक्स फ़ील्ड संपादित करें।
  • किसी भी विकल्प सेट विकल्प को न हटाएं।
  • कोई विकल्प सेट विकल्प न जोड़ें।

यहां सिर्फ एक उदाहरण दिया गया है: फ़ील्ड सेवा कार्य क्रम में डिफ़ॉल्ट रूप से "सिस्टम स्थिति" नामक एक फ़ील्ड शामिल है। यह फ़ील्ड एक विकल्प सेट ("पसंद"प्रकार") है जिसमें अनिर्धारित, अनुसूचित, प्रगति में, पूर्ण, रद्द आदि जैसे विकल्प हैं। इनमें से प्रत्येक विकल्प में एक लेबल और एक संबद्ध संख्यात्मक मान होता है। सिस्टम व्यवस्थापक विकल्प सेट (जैसे "अशेड्यूल्ड") के लेबल संपादित कर सकते हैं, लेकिन लेबल के संबद्ध सांख्यिक मान को कभी संपादित नहीं कर सकते.

कम कस्टम स्क्रिप्ट का उपयोग करें और सर्वोत्तम प्रथाओं का पालन करें

सिस्टम कस्टमाइज़र व्यावसायिक तर्क को निष्पादित करने के लिए स्क्रिप्ट, आमतौर पर जावास्क्रिप्ट वेब संसाधन लिखते हैं। हालाँकि, कस्टम स्क्रिप्ट नवीनीकरण करते समय प्रदर्शन समस्याएँ, त्रुटियाँ और जटिलताएं पैदा कर सकती हैं.

इन समस्याओं से बचने के लिए:

  • लोड पर चल रही स्क्रिप्ट को छोटा करें.
  • ऐसी स्क्रिप्ट न लिखें जो बहुत सारे डेटा को कॉल करती हैं या एक ही डेटा को कॉल करने वाली कई स्क्रिप्ट लिखें।

नीचे दी गई सर्वोत्तम प्रक्रियाओं सहित फ़ॉर्म स्क्रिप्ट की सर्वोत्तम प्रक्रियाओं का पालन करें:

नेटवर्क अनुरोधों की संख्या और OnLoad इवेंट में अनुरोधित डेटा की मात्रा कम करें

किसी प्रपत्र लोड के दौरान किए गए नेटवर्क अनुरोधों की संख्या जितनी अधिक होगी, और उन अनुरोधों से डाउनलोड किए गए डेटा की अधिक मात्रा होगी, प्रपत्र को लोड होने में उतना ही अधिक समय लगेगा. सिर्फ़ आवश्यक डेटा की न्यूनतम मात्रा का अनुरोध करें. इसके अलावा, भविष्य के पेज लोड पर गैर- आवश्यक डेटा अनुरोध से बचने के लिए डेटा कैशिंग करने पर विचार करें.

सिंक्रोनस नेटवर्क अनुरोधों का उपयोग करने से बचें

तुल्यकालिक डेटा अनुरोध धीमे पेज लोड और गैर- जिम्मेदार फ़ॉर्म का कारण बन सकते हैं. इसके बजाय अतुल्यकालिक अनुरोधों का उपयोग करें। अधिक उदाहरणों के लिए यह ब्लॉग पोस्ट देखें। इसके अलावा, किसी भी परिदृश्य में "एसिंक और प्रतीक्षा करें" का उपयोग करने पर विचार करें जहां एक ही इकाई और रिकॉर्ड के लिए कई नेटवर्क कॉल की आवश्यकता होती है; अधिक जानकारी यहाँ प्राप्त करें.

अनावश्यक जावास्क्रिप्ट वेब संसाधन पुस्तकालयों को शामिल करने से बचें

जितनी अधिक स्क्रिप्ट आप फ़ॉर्म में जोड़ते हैं, उन्हें डाउनलोड करने में उतना ही अधिक समय लगता है। आमतौर पर स्क्रिप्ट को पहली बार लोड होने के बाद आपके ब्राउज़र में कैश किया जाता है, लेकिन पहली बार किसी फॉर्म को देखे जाने पर प्रदर्शन अक्सर एक महत्वपूर्ण प्रभाव पैदा करता है।

ऑनलोड इवेंट में सभी स्क्रिप्ट लोड करने से बचें

यदि आपके पास कोड है जो केवल स्तंभों या OnSave ईवेंट के लिए OnChange ईवेंट का समर्थन करता है, तो स्क्रिप्ट लायब्रेरी को OnLoad ईवेंट के बजाय उन ईवेंट के लिए इवेंट हैंडलर के साथ सेट करना सुनिश्चित करें. इस तरह उन लायब्रेरी को लोड करना स्थगित किया जा सकता है और प्रपत्र के लोड किए जाने पर प्रदर्शन सुधारा जा सकता है.

वेब संसाधनों को लोड करने से रोकने के लिए ध्वस्त टैब का उपयोग करें

जब वेब संसाधन या आईफ़्रेम घटक ों को एक ध्वस्त टैब के अंदर अनुभागों में शामिल किया जाता है, तो टैब के ढह जाने पर वे लोड नहीं होते हैं। टैब का विस्तार होने पर वे लोड होते हैं। जब टैब स्थिति बदलती है, तो TabStateChange इवेंट होता है। ध्वस्त टैब के भीतर वेब संसाधनों या iframe का समर्थन करने के लिए आवश्यक कोई भी कोड TabStateChange ईवेंट के लिए इवेंट हैंडलर का उपयोग कर सकता है और उस कोड को कम कर सकता है जो अन्यथा OnLoad इवेंट में हो सकता है।

क्लाइंट-साइड कोड में डुप्लिकेट नेटवर्क अनुरोधों से बचें

एकाधिक या डुप्लिकेट नेटवर्क अनुरोध वेब ब्राउज़र को रोकने और प्रपत्र लोड समय को प्रभावित करने का कारण बन सकते हैं. अनुरोधों की संख्या कम करने से प्रदर्शन में सुधार हो सकता है। एक विकल्प नेटवर्क अनुरोधों को समेकित करना और अनुरोधों के मूल्य को कैश करना है। इसके अलावा अतुल्यकालिक नेटवर्क अनुरोधों पर विचार करें जैसा कि पहले उल्लेख किया गया है।

यदि XRM API में प्रासंगिक जानकारी उपलब्ध है, तो भूमिकाओं और सिस्टम उपयोगकर्ता विशिष्ट कॉल का उपयोग करने से बचें

उपयोगकर्ता विशेषाधिकार जानकारी प्राप्त करने के लिए नेटवर्क अनुरोधों से बचने के लिए XRM API का उपयोग करें। तुल्यकालिक अनुरोधों से दूर संक्रमण पर निम्नलिखित लेखदेखें। इसी तरह यदि XRM API से जानकारी आपकी आवश्यकताओं को पूरा करती है तो सिस्टम उपयोगकर्ता कॉल से बचें।

डिफ़ॉल्ट दृश्यता विकल्प सेट करें

प्रपत्र तत्वों को छिपाने वाले ऑनलोड इवेंट में प्रपत्र स्क्रिप्ट का उपयोग करने से बचें. इसके बजाय उन प्रपत्र तत्वों के लिए डिफ़ॉल्ट दृश्यता विकल्प सेट करें जो प्रपत्र के लोड किए जाने पर डिफ़ॉल्ट रूप से दिखाई न देने के लिए छुपे हुए हो सकते हैं. उसके बाद, उन प्रपत्र तत्वों को दिखाने के लिए OnLoad इवेंट में स्क्रिप्ट का उपयोग करें जिन्हें आप प्रदर्शित करना चाहते हैं.

अधिक जानकारी के लिए, इन संसाधनों को देखें:

अपनी स्क्रिप्ट पर समाधान परीक्षक चलाएँ

Power Apps सॉल्यूशन चेकर Microsoft का एक उपयोगी टूल है जो समस्याओं के लिए Power Apps समाधानों की जांच करता है और सर्वोत्तम अभ्यासों की सिफारिश करता है। इन समस्याओं में JavaScript, HTML, प्लगइन्स, और कस्टम वर्कफ़्लो गतिविधियों के साथ समस्याएँ शामिल हैं।

अधिक जानकारी के लिए, इन संसाधनों को देखें:

सिंक्रोनस के बजाय अतुल्यकालिक वर्कफ़्लोज़ का उपयोग करें

सिस्टम कस्टमाइज़र अक्सर वास्तविक समय में व्यावसायिक तर्क करने के लिए सिंक्रोनस वर्कफ़्लोलिखते हैं जो फ़ील्ड सेवा में डेटा बदलने पर निष्पादित होता है। हालाँकि, समकालिक रूप से वर्कफ़्लोज़ चलाने से कार्यक्षमता कम हो जाती है.

प्रदर्शन समस्याओं से बचने के लिए, वर्कफ़्लोज़ को अतुल्यकालिक रूप से चलाएँ.

फ़ील्ड सेवा और संसाधन शेड्यूलिंग आउट-ऑफ-द-बॉक्स प्रक्रियाओं को सक्रिय करें

फ़ील्ड सेवा और संसाधन शेड्यूलिंग जहाज कई प्रक्रियाओं के साथ जो आवश्यक व्यावसायिक तर्क करते हैं।

निष्क्रिय प्रक्रियाओं से त्रुटियां हो सकती हैं।

समस्याओं से बचने के लिए, सुनिश्चित करें कि सभी फ़ील्ड सेवा और संसाधन शेड्यूलिंग प्रक्रियाएँ सक्रिय स्थिति में हैं. यह पहचानने के लिए नियमित रूप से Field Service Solution Health Hub चलें कि क्या प्रक्रियाएँ निष्क्रिय स्थिति में हैं.

समस्याओं का पता लगाने के लिए समाधान स्वास्थ्य हब चलाएँ

समाधान हेल्थ हब आपको अपने परिवेश की स्थिति की बेहतर तस्वीर प्राप्त करने और अपने Dynamics 365 वातावरण के साथ समस्याओं का पता लगाने की अनुमति देता है. समाधान हेल्थ हब परिवेश के विन्यास को मान्य करने के लिए एक उदाहरण के भीतर नियम चलाता है, जो समय के साथ प्राकृतिक प्रणाली के संचालन में बदल सकता है. कुछ नियम Dynamics 365 Field Service के लिए विशिष्ट हैं और जब आप किसी समस्या का सामना करते हैं, तो आप नियमों को माँग पर चला सकते हैं. Field Service स्थापित या अद्यतन किए जाने पर कुछ नियम स्वचालित रूप से सामने आ जाते हैं.

नियमित रूप से Field Service Solution Health Hub अपने पर्यावरण के स्वास्थ्य की निगरानी के लिए नियम निर्धारित करें।

मोबाइल एप्लिकेशन प्रदर्शन पर विचार

मोबाइल ऐप को कस्टमाइज़ करना भी प्रदर्शन को प्रभावित कर सकता है। अधिक जानकारी के लिए, यह लेख देखें: मोबाइल ऐप को अनुकूलित करते समय प्रदर्शन संबंधी विचार