แนวทางปฏิบัติในการปรับแต่ง
ปฏิบัติตามแนวทางปฏิบัติเหล่านี้เพื่อหลีกเลี่ยงปัญหาด้านประสิทธิภาพ การใช้งาน และการสนับสนุน ด้วย Dynamics 365 Field Service
ลดฟิลด์ที่กำหนดเองบนฟอร์ม
ผู้ปรับแต่งระบบจะเพิ่มฟิลด์ที่กำหนดเองในแบบฟอร์มองค์กรเพื่อรวบรวมข้อมูลที่เฉพาะเจาะจงกับอุตสาหกรรมและธุรกิจของตน เพื่อรันกระบวนการทางธุรกิจ และเพื่อรวบรวมข้อมูลสำหรับสร้างรายงาน อย่างไรก็ตาม ฟิลด์ที่กำหนดเองมากเกินไปในฟอร์มอาจทำให้เกิดปัญหาด้านประสิทธิภาพได้
เพื่อหลีกเลี่ยงปัญหาด้านประสิทธิภาพ ให้ปฏิบัติดังนี้
- ลดจำนวนของฟิลด์ที่กำหนดเองบนฟอร์มทั้งหมด หากแบบฟอร์ม ใบสั่งงาน เป็นแบบฟอร์มที่คุณใช้บ่อยที่สุดในแอป Field Service การเริ่มต้นด้วยแบบฟอร์มนั้นก็เป็นโอกาสดี
- ลดจำนวนฟิลด์ประเภทการค้นหาและซับกริดระหว่างฟิลด์ที่กำหนดเอง
- ย้ายฟิลด์ที่กำหนดเอง (โดยเฉพาะ การค้นหา และกริดย่อย) จากแท็บแรกของฟอร์มไปยังแท็บอื่นของฟอร์ม
- ซ่อนฟิลด์ที่ใช้น้อยบนแบบฟอร์มตามค่าเริ่มต้น
อย่าเปลี่ยนทรัพยากรบนเว็บแบบสำเร็จรูป ชุดตัวเลือก บทบาทความปลอดภัย หรือเวิร์กโฟลว์
อย่าเปลี่ยนแปลงหรือปรับแต่งทรัพยากรบนเว็บแบบสำเร็จรูป ชุดตัวเลือก บทบาทความปลอดภัย หรือเวิร์กโฟลว์ มิฉะนั้น คุณอาจทำให้เกิดพฤติกรรมระบบที่ไม่พึงประสงค์ได้
องค์กรที่ปรับแต่งส่วนประกอบเหล่านี้อาจไม่ประสบปัญหาในสภาพแวดล้อมของตนทันที อย่างไรก็ตาม การเปลี่ยนแปลงที่ Microsoft เผยแพร่ต่อคอมโพเนนต์ที่กำหนดเองแบบพร้อมใช้งานจะไม่ถูกนำไปใช้กับคอมโพเนนต์อันดับต้นๆ ของ ไอเดีย เหล่านั้น อย่างไรก็ตาม การตั้งค่า เลเยอร์ ที่กำหนดเองนั้นจะแทนที่การเปลี่ยนแปลงทั้งหมดในอนาคต และการแทนที่เหล่านี้อาจทำให้เกิดข้อผิดพลาดและพฤติกรรมที่ไม่อาจคาดเดาได้ในที่สุด
อย่าปรับเปลี่ยน แก้ไข หรือลบฟิลด์วันที่หรือสถานะของระบบ
การปรับเปลี่ยน การแก้ไข หรือการลบฟิลด์และสถานะของวันที่อาจมีผลต่อตรรกะทางธุรกิจ และอาจขัดขวางการอัปเดตโซลูชัน ตัวอย่างของช่องวันที่ เลเยอร์ ได้แก่ เวลาเริ่มที่สัญญา และ เวลาสิ้นสุดที่สัญญา ตัวอย่างของฟิลด์สถานะได้แก่ สถานะระบบ สำหรับ ใบสั่งงาน และ สถานะระบบ สำหรับข้อตกลง
อย่าแก้ไขฟิลด์ที่ไม่อยู่ในกรอบหรือลบออกจากแบบฟอร์ม
ลูกค้าสามารถแก้ไขฟิลด์นอกกรอบเพื่อรองรับความต้องการทางธุรกิจของตน อย่างไรก็ตาม การแก้ไขฟิลด์ที่ไม่อยู่ในกรอบอาจทำให้เกิดข้อผิดพลาด โดยเฉพาะเมื่อกระบวนการขึ้นอยู่กับค่าของฟิลด์เหล่านั้น
เพื่อหลีกเลี่ยงข้อผิดพลาด:
- ซ่อนฟิลด์ที่ไม่ต้องการในแบบฟอร์ม
- ย้ายฟิลด์ที่ไม่ต้องการไปยังแท็บฟอร์มอื่น
ตัวอย่างเช่น กระบวนการ Field Service จะคำนวณค่าของฟิลด์ เวลาที่มาถึงโดยประมาณ ในบันทึก การจองทรัพยากรที่จองได้ เพื่อระบุว่าพนักงานแนวหน้าคาดว่าจะมาถึงสถานที่เมื่อใด หากองค์กรของคุณไม่จำเป็นต้องมีฟิลด์นี้ ให้ซ่อนไว้ในแบบฟอร์ม แทนที่จะลบออก
อย่าแก้ไขค่าชุดตัวเลือก (ตัวเลือก)
การแก้ไขค่า ชุดตัวเลือก ของฟิลด์ที่ใช้งานได้ทันทีอาจทำให้เกิดข้อผิดพลาดได้ โดยเฉพาะเมื่อกระบวนการขึ้นอยู่กับค่าของฟิลด์เหล่านั้นหรือในระหว่างการอัปเกรด
เพื่อหลีกเลี่ยงข้อผิดพลาด:
- แก้ไขเฉพาะ ชุดตัวเลือก ป้ายกำกับ ของฟิลด์นอกกรอบเท่านั้น อย่าแก้ไขค่า ชุดตัวเลือก ของฟิลด์เหล่านี้
- อย่าลบตัวเลือกของชุดตัวเลือกใดๆ
- อย่าเพิ่มตัวเลือกของชุดตัวเลือกใดๆ
ตัวอย่างเช่น Field Service ใบสั่งงาน จะมีฟิลด์ สถานะระบบ ตามค่าเริ่มต้น ฟิลด์นี้เป็น ชุดตัวเลือก (ของประเภท ตัวเลือก ) และมีตัวเลือกต่างๆ เช่น ไม่ได้กำหนดเวลา, กำหนดเวลา, กำลังดำเนินการ, เสร็จสมบูรณ์ และ ยกเลิก แต่ละตัวเลือกจะมีป้ายกำกับและค่าตัวเลขที่เกี่ยวข้อง ผู้ดูแลระบบสามารถแก้ไขป้ายกำกับของชุดตัวเลือก (เช่น ไม่ได้กำหนดตารางเวลา ) แต่จะไม่สามารถแก้ไขค่าตัวเลขที่เชื่อมโยงกับป้ายกำกับได้
ใช้สคริปต์ที่กำหนดเองน้อยลง และปฏิบัติตามแนวทางปฏิบัติ
ผู้ปรับแต่งระบบเขียนสคริปต์ โดยทั่วไปคือทรัพยากรบนเว็บที่ใช้ JavaScript เพื่อรันตรรกะทางธุรกิจ อย่างไรก็ตาม สคริปต์ที่กำหนดเองอาจทำให้เกิดปัญหาด้านประสิทธิภาพ ข้อผิดพลาด และความซับซ้อนระหว่างการอัปเกรด
เพื่อหลีกเลี่ยงปัญหาเหล่านี้ ให้ปฏิบัติดังนี้
- ลดจำนวนสคริปต์ที่ทำงานขณะโหลดให้น้อยที่สุด
- อย่าเขียนสคริปต์ที่เรียกข้อมูลจำนวนมาก และอย่าเขียนสคริปต์หลายชุดที่เรียกข้อมูลเดียวกัน
หัวข้อย่อยต่อไปนี้จะอธิบายแนวทางปฏิบัติที่ดีที่สุด นอกจากนี้ ให้ปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดของสคริปต์แบบฟอร์มใน แนวทางปฏิบัติที่ดีที่สุดสำหรับการพัฒนาด้วย Dynamics 365 Customer Engagement
ลดจำนวนคำขอเครือข่ายและจำนวนข้อมูลที่ร้องขอในเหตุการณ์ OnLoad
ยิ่งมีการร้องขอเครือข่ายเกิดขึ้นในระหว่างการโหลดแบบฟอร์มมากขึ้น และยิ่งมีการดาวน์โหลดข้อมูลจากการร้องขอเหล่านั้นมากขึ้น เวลาในการโหลดแบบฟอร์มก็จะนานขึ้นตามไปด้วย ขอเพียงข้อมูลตามจำนวนขั้นต่ำที่จำเป็น นอกจากนี้ ควรพิจารณาการแคชข้อมูลเมื่อทำได้ เพื่อหลีกเลี่ยงการร้องขอข้อมูลที่ไม่จำเป็นในระหว่างการโหลดแบบฟอร์มในอนาคต
หลีกเลี่ยงการใช้คำขอเครือข่ายซิงโครนัส
คำขอเครือข่ายแบบซิงโครนัสอาจทำให้การโหลดหน้าเว็บช้าและรูปแบบที่ไม่ตอบสนอง ใช้คำขอแบบอะซิงโครนัสแทน โพสต์บล็อกต่อไปนี้ให้ตัวอย่างเพิ่มเติม: เร่งการทำงานของแอปที่ขับเคลื่อนโดยโมเดลของคุณด้วยการเปลี่ยนจากคำขอแบบซิงโครนัส นอกจากนี้ ควรพิจารณาใช้ "async และรอ" ในสถานการณ์ใดๆ ที่จำเป็นต้องมีการเรียกใช้เครือข่ายหลายครั้งสำหรับเอนทิตีและบันทึกเดียวกัน เรียนรู้เพิ่มเติมเกี่ยวกับ async และ await
หลีกเลี่ยงการรวมไลบรารีทรัพยากรบนเว็บ JavaScript ที่ไม่จำเป็น
ยิ่งคุณเพิ่มสคริปต์ลงในแบบฟอร์มมากเท่าไร เวลาในการดาวน์โหลดก็จะนานขึ้นเท่านั้น โดยปกติสคริปต์จะถูกแคชไว้ในเบราว์เซอร์ของคุณหลังจากที่โหลดครั้งแรก อย่างไรก็ตาม การแสดงผลเมื่อดูแบบฟอร์มครั้งแรกมักจะสร้างความประทับใจอย่างมาก
หลีกเลี่ยงการบรรจุสคริปต์ทั้งหมดในเหตุการณ์เมื่อมีการโหลด
หากคุณมีโค้ดที่รองรับเฉพาะเหตุการณ์ OnChange
สำหรับคอลัมน์ หรือเฉพาะเหตุการณ์ OnSave
โปรดแน่ใจว่าได้ตั้งค่าไลบรารีสคริปต์ด้วยตัวจัดการเหตุการณ์สำหรับเหตุการณ์เหล่านั้นแทนเหตุการณ์ OnLoad
วิธีนี้ช่วยให้สามารถเลื่อนการโหลดไลบรารีเหล่านั้นได้ และประสิทธิภาพจะเพิ่มขึ้นเมื่อโหลดแบบฟอร์ม
ใช้แท็บที่ยุบลงเพื่อชะลอการโหลดทรัพยากรเว็บ
ทรัพยากรเว็บหรือส่วนประกอบที่รวมอยู่ในส่วนต่างๆ ของแท็บแบบยุบได้จะไม่โหลดถ้าแท็บถูกยุบ iFrame จะถูกโหลดเมื่อแท็บขยายเท่านั้น เมื่อสถานะแท็บเปลี่ยนแปลง เหตุการณ์ TabStateChange
จะเกิดขึ้น โค้ดใดๆ ที่จำเป็นต่อการรองรับทรัพยากรเว็บหรือ iFrames บนแท็บที่ยุบลงสามารถใช้ตัวจัดการเหตุการณ์สำหรับเหตุการณ์ TabStateChange
และลดโค้ดที่อาจต้องเกิดขึ้นในเหตุการณ์ OnLoad
ได้
หลีกเลี่ยงคำขอเครือข่ายที่ซ้ำกันในโค้ดฝั่งไคลเอ็นต์
คำขอเครือข่ายหลายรายการหรือซ้ำกันอาจทำให้เว็บเบราว์เซอร์หยุดทำงาน และส่งผลต่อเวลาในการโหลดฟอร์ม การลดจำนวนคำขอสามารถปรับปรุงประสิทธิภาพได้ อีกทางเลือกหนึ่งคือการรวมคำขอเครือข่ายและแคชค่าของคำขอนี้ นอกจากนี้ ให้พิจารณาคำขอเครือข่ายแบบอะซิงโครนัส ดังที่ได้กล่าวไว้ก่อนหน้านี้
หลีกเลี่ยงการใช้บทบาทและการเรียกเฉพาะผู้ใช้ระบบหากมีข้อมูลที่เกี่ยวข้องอยู่ใน XRM API
ใช้ XRM API เพื่อหลีกเลี่ยงการร้องขอจากเครือข่ายเพื่อรับข้อมูลสิทธิ์ของผู้ใช้ เรียนรู้เพิ่มเติมเกี่ยวกับวิธีการเปลี่ยนจากคำขอแบบซิงโครนัส - นอกจากนี้ หลีกเลี่ยงการโทรของผู้ใช้ระบบหากข้อมูลจาก XRM API ตรงตามความต้องการของคุณ
ตั้งค่าตัวเลือกการแสดงผลเริ่มต้น
ในเหตุการณ์ OnLoad
หลีกเลี่ยงการใช้สคริปต์ฟอร์มที่ซ่อนองค์ประกอบฟอร์ม สำหรับองค์ประกอบแบบฟอร์มที่อาจถูกซ่อนอยู่ ให้ตั้งค่าตัวเลือกการมองเห็นเริ่มต้นเพื่อให้องค์ประกอบต่างๆ จะถูกซ่อนไว้ตามค่าเริ่มต้นเมื่อโหลดแบบฟอร์ม จากนั้นใช้สคริปต์ในเหตุการณ์ OnLoad
เพื่อแสดงองค์ประกอบแบบฟอร์มที่คุณต้องการให้มองเห็นได้
เรียนรู้เพิ่มเติมในทรัพยากรต่อไปนี้:
เรียกใช้ตัวตรวจสอบโซลูชันบนสคริปต์ของคุณ
ตัวตรวจสอบโซลูชัน Power Apps เป็นเครื่องมือที่มีประโยชน์จาก Microsoft ที่ตรวจสอบโซลูชัน Power Apps สำหรับปัญหา และแนะนำแนวทางปฏิบัติที่ดีที่สุด ปัญหาเหล่านี้รวมถึงปัญหาเกี่ยวกับ JavaScript, HTML, ปลั๊กอิน และกิจกรรมเวิร์กโฟลว์แบบกำหนดเอง
เรียนรู้เพิ่มเติมในทรัพยากรต่อไปนี้:
- ปรับปรุงประสิทธิภาพ ความเสถียร และความน่าเชื่อถือของส่วนประกอบด้วยตัวตรวจสอบโซลูชัน
- วิธีการเรียกใช้และใช้งานตัวตรวจสอบโซลูชัน Power Apps
- Dataverse ตัวตรวจสอบโซลูชัน
ใช้เวิร์กโฟลว์แบบอะซิงโครนัสแทนเวิร์กโฟลว์แบบซิงโครนัส
ผู้ปรับแต่งระบบมักจะเขียนเวิร์กโฟลว์แบบซิงโครนัสเพื่อดำเนินการตรรกะทางธุรกิจแบบเรียลไทม์ที่ทำงานเมื่อมีการเปลี่ยนแปลงข้อมูลใน Field Service อย่างไรก็ตาม การเรียกใช้เวิร์กโฟลว์แบบซิงโครนัสจะลดประสิทธิภาพการทำงาน เพื่อหลีกเลี่ยงปัญหาด้านประสิทธิภาพ ควรรันเวิร์กโฟลว์แบบอะซิงโครนัสแทน
เริ่มการใช้งานกระบวนการแบบสำเร็จรูปของ Field Service และการจัดกำหนดการทรัพยากร
การกำหนดตารางการบริการภาคสนามและทรัพยากรประกอบด้วยกระบวนการต่างๆ มากมายที่ดำเนินตามตรรกะทางธุรกิจที่จำเป็น กระบวนการที่ปิดใช้งานอาจทำให้เกิดข้อผิดพลาดได้ เพื่อหลีกเลี่ยงปัญหา ตรวจสอบให้แน่ใจว่ากระบวนการ Field Service และ Resource Scheduling ทั้งหมดอยู่ในสถานะใช้งานอยู่ หากต้องการระบุว่ากระบวนการอยู่ในสถานะปิดใช้งานหรือไม่ ให้เรียกใช้ Field Service ฮับสถานภาพโซลูชัน เป็นประจำ
เรียกใช้ ฮับสถานภาพโซลูชัน เพื่อตรวจจับปัญหา
ฮับสถานภาพโซลูชัน ช่วยให้คุณมองเห็นภาพรวมของสถานะของสภาพแวดล้อมของคุณและตรวจจับปัญหาที่เกิดขึ้นกับสภาพแวดล้อม Dynamics 365 ของคุณได้ชัดเจนยิ่งขึ้น การกำหนดค่าสภาพแวดล้อมอาจเปลี่ยนแปลงไปตามกาลเวลาผ่านการทำงานของระบบตามธรรมชาติ ฮับสถานภาพโซลูชัน รันกฎภายในอินสแตนซ์เพื่อตรวจสอบการกำหนดค่าของสภาพแวดล้อม กฎบางข้อมีเฉพาะสำหรับ Field Service และคุณสามารถเรียกใช้กฎเหล่านี้ได้ตามต้องการเมื่อพบปัญหา กฎบางข้อจะถูกเรียกใช้โดยอัตโนมัติเมื่อมีการติดตั้งหรืออัปเดต Field Service
เพื่อตรวจสอบสุขภาพของสภาพแวดล้อมของคุณ ให้ รันชุดกฎ ฮับสถานภาพโซลูชัน เป็นประจำ
ข้อควรพิจารณาเกี่ยวกับประสิทธิภาพของแอปสำหรับอุปกรณ์เคลื่อนที่
การปรับแต่งแอปมือถือสามารถส่งผลต่อประสิทธิภาพการทำงาน เรียนรู้เพิ่มเติมได้ที่ ข้อควรพิจารณาด้านประสิทธิภาพเมื่อปรับแต่งแอปมือถือ