Özelleştirme en iyi uygulamaları
Dynamics 365 Field Service ile ilgili performans, kullanılabilirlik ve desteklenebilirlik sorunlarını önlemek için bu en iyi uygulamaları izleyin.
Formlarda özel alanları en aza indirme
Sistem özelleştiricileri, sektörlerine ve işlerine özgü bilgileri yakalamak, iş süreçlerini çalıştırmak ve raporlamak üzere bilgi toplamak için varlık formlarına özel alanlar ekler. Ancak formda çok sayıda özel alan, performans sorunlarına neden olabilir.
Performans sorunlarını önlemek için:
- Tüm formlarda özel alanların sayısını en aza indirin. İş emri formu, Field Service uygulamasında en çok kullandığınız formsa, bu formla başlamak iyi bir fikir olacaktır.
- Özel alanlar arasındaki arama türü alanların ve alt ızgaraların sayısını en aza indirin.
- Özel alanları (özellikle aramalar ve alt ızgaralar) ilk form sekmesinden diğer form sekmelerine taşıyın.
- Varsayılan olarak, formda daha az kullanılan alanları gizleyin.
Kullanıma hazır web kaynaklarını, seçenek kümelerini, güvenlik rollerini veya iş akışlarını değiştirmeyin
Kullanıma hazır web kaynaklarını, seçenek kümelerini, güvenlik rollerini veya iş akışlarını değiştirmeyin veya özelleştirmeyin. Aksi takdirde, istenmeyen sistem davranışlarına neden olabilirsiniz.
Bu bileşenleri özelleştiren kuruluşlar, ortamlarında hemen sorunlarla karşılaşmayabilir. Ancak, Microsoft'un özelleştirilmiş kullanıma hazır bileşenlerde yayımladığı değişiklikler bu bileşenlerin en üst katmanına uygulanmaz. Bunun yerine, belirli özelleştirilmiş katman gelecekteki tüm değişiklikleri geçersiz kılar ve bu geçersiz kılmalar sonunda öngörülemeyen hatalara ve davranışlara neden olur.
Tarih alanlarını veya sistem durumlarını değiştirmeyin, düzenlemeyin veya silmeyin
Tarih alanlarını ve durumları değiştirmek, düzenlemek veya silmek iş mantığını etkileyebilir ve çözüm yükseltmeleriyle ilgili sorunlara neden olabilir. İş emri tarih alanlarına örnek olarak Vaat Edilen Süre ve Vaat Edilen Süre verilebilir . Durum alanlarına örnek olarak iş emri için Sistem Durumu ve sözleşme için Sistem Durumu verilebilir .
Kullanıma hazır alanları düzenlemeyin veya formlardan kaldırmayın
Müşteriler, iş gereksinimlerini karşılamak için kullanıma hazır alanları düzenler. Ancak, kullanıma hazır alanları düzenlemek, özellikle işlemler bu alanların değerlerine bağlı olduğunda hatalara neden olabilir.
Hataları önlemek için:
- Formda istenmeyen alanları gizleyin.
- İstenmeyen alanları başka bir form sekmesine taşıyın.
Örneğin, Field Service işlemleri, bir ön cephe çalışanının tesise ne zaman varmasının beklendiğini belirtmek için Ayrılabilir Kaynak Ayırma kaydındaki Tahmini Varış Zamanı alanının değerini hesaplar. Kuruluşunuz bu alana ihtiyaç duymuyorsa, kaldırmak yerine formda gizleyin.
Seçenek kümesi (seçim) değerlerini düzenleme
Kullanıma hazır alanların seçenek kümesi değerlerini düzenlemek, özellikle işlemler bu alanların değerlerine bağlı olduğunda veya yükseltmeler sırasında hatalara neden olabilir.
Hataları önlemek için:
- Yalnızca kullanıma hazır alanların seçenek kümesi etiketlerini düzenleyin. Bu alanların seçenek kümesi değerlerini hiçbir zaman düzenlemeyin.
- Hiçbir seçenek kümesi seçeneğini kaldırmayın.
- Hiçbir seçenek kümesi seçeneği eklemeyin.
Örneğin, Field Service iş emri varsayılan olarak bir Sistem Durumu alanı içerir. Bu alan bir seçenek kümesidir (seçim türünde ) ve Zamanlanmamış , Zamanlanmış , Devam Ediyor, Tamamlandı ve İptal Edildi gibi seçeneklere sahiptir. Her seçeneğin bir etiketi ve ilişkili bir sayısal değeri vardır. Sistem yöneticileri seçenek kümelerinin etiketlerini (Zamanlanmamış gibi) düzenleyebilir, ancak etiketle ilişkilendirilmiş sayısal değeri hiçbir zaman düzenleyemezler.
Daha az özel komut dosyası kullanın ve en iyi uygulamaları izleyin
Sistem özelleştiricileri, iş mantığını çalıştırmak için genellikle JavaScript web kaynakları olan komut dosyaları yazar. Ancak, özel komut dosyaları yükseltmeler sırasında performans sorunlarına, hatalara ve komplikasyonlara neden olabilir.
Bu sorunları önlemek için:
- Yükte çalışan betik sayısını en aza indirin.
- Çok fazla veri çağıran komut dosyaları yazmayın ve aynı verileri çağıran birden çok komut dosyası yazmayın.
Aşağıdaki alt bölümlerde en iyi yöntemler açıklanmaktadır. Ayrıca, Dynamics 365 Customer Engagement ile geliştirme için en iyi yöntemler bölümündekiform komut dosyası en iyi yöntemlerini izleyin.
Yüklendiğinde olayında istenen ağ isteği sayısını ve veri miktarını en aza indirmek için
Form yüklemesi sırasında ne kadar çok ağ isteği yapılırsa ve bu isteklerden ne kadar çok veri indirilirse, formun yüklenmesi o kadar uzun sürer. Yalnızca gereken en düşük miktarda veri isteyin. Ayrıca, gelecekteki form yüklemeleri sırasında gereksiz yere veri istemekten kaçınmak için mümkün olduğunda verileri önbelleğe almayı göz önünde bulundurun.
Zaman uyumlu ağ istekleri kullanmaktan kaçının
Eşzamanlı ağ istekleri, yavaş sayfa yükleri ve yanıt vermeyen formlara neden olabilir. Bunun yerine eşzamansız istekler kullanın . Aşağıdaki blog gönderisinde daha fazla örnek verilmiştir: Zaman uyumlu isteklerden geçiş yaparak model yönetimli uygulamalarınızı hızlandırın. Ayrıca, aynı varlık ve kayıt için birden çok ağ çağrısının gerekli olduğu herhangi bir senaryoda "zaman uyumsuz ve bekle" kullanmayı göz önünde bulundurun. Async ve await hakkında daha fazla bilgi edinin.
Gereksiz JavaScript web kaynağı kitaplıklarını dahil etmekten kaçının
Bir forma ne kadar çok komut dosyası eklerseniz, bunları indirmek için o kadar çok zaman harcarsınız. Genellikle, komut dosyaları ilk kez yüklendikten sonra tarayıcınızda önbelleğe alınır. Bununla birlikte, bir form ilk kez görüntülendiğinde ortaya çıkan performans genellikle önemli bir izlenim yaratır.
Onload olayı içindeki tüm komut dosyalarının yüklenmesinden kaçının
Yalnızca OnChange
sütunlar için olayları veya yalnızca OnSave
olayı destekleyen kodunuz varsa, betik kitaplığını olay yerine OnLoad
bu olaylar için olay işleyicisiyle ayarladığınızdan emin olun. Bu şekilde, bu kitaplıkların yüklenmesi ertelenebilir ve form yüklendiğinde performans artar.
Web kaynaklarının yüklenmesini ertelemek için daraltılmış sekmeleri kullanma
Daraltılabilir bir sekmedeki bölümlere dahil edilen Web kaynakları veya iFrame bileşenler, sekme daraltılmışsa yüklenmez. Yalnızca sekme genişletildiğinde yüklenirler. Sekme durumu değiştiğinde TabStateChange
olay gerçekleşir. Daraltılmış sekmelerde web kaynaklarını veya iFrame'leri desteklemek için gereken herhangi bir kod, olay için TabStateChange
olay işleyicilerini kullanabilir ve aksi takdirde olayda OnLoad
oluşması gerekebilecek kodu azaltabilir.
İstemci tarafı kodundaki ağ isteklerini çoğaltmaktan kaçının
Birden çok veya yinelenen ağ istekleri, web tarayıcısının form yükleme süresini durdurup etkilemesine neden olabilir. İsteklerin sayısını azaltmak, performansı iyileştirebilir. Alternatif olarak, ağ isteklerini birleştirmek ve isteklerin değerini önbelleğe almak gerekir. Ek olarak, daha önce de belirtildiği gibi eşzamansız ağ isteklerini göz önünde bulundurun.
İlgili bilgiler XRM API'lerinde mevcutsa rolleri ve sistem kullanıcısına özel çağrıları kullanmaktan kaçının
Kullanıcı ayrıcalığı bilgilerini almak için ağ isteklerini önlemek için XRM API'lerini kullanın. Zaman uyumlu isteklerden nasıl geçiş yapılacağı hakkında daha fazla bilgi edinin. Ayrıca, XRM API'lerinden gelen bilgiler gereksinimlerinizi karşılıyorsa sistem kullanıcı çağrılarından kaçının.
Varsayılan görünürlük seçeneklerini ayarlama
OnLoad
Bu durumda, form öğelerini gizleyen form komut dosyalarını kullanmaktan kaçının. Bunun yerine, gizlenmiş olabilecek form öğeleri için, varsayılan görünürlük seçeneklerini, form yüklendiğinde öğelerin varsayılan olarak gizleneceği şekilde ayarlayın. Ardından, görünür olmasını istediğiniz form öğelerini göstermek için etkinlikte OnLoad
komut dosyaları kullanın.
Aşağıdaki kaynaklarda daha fazla bilgi edinin:
Betiklerinizde çözüm denetleyicisini çalıştırın
Power Apps çözüm denetleyicisi, sorunlar için Power Apps çözümlerini denetleyen ve en iyi uygulamaları öneren, Microsoft'un kullanıma sunduğu kullanışlı bir araçtır. Bu sorunlar JavaScript, HTML, eklentiler ve özel iş akışı etkinlikleriyle ilgili sorunları içerir.
Aşağıdaki kaynaklarda daha fazla bilgi edinin:
- Çözüm denetleyicisi ile bileşen performansını, kararlılığını ve güvenilirliğini artırın
- Çözüm Denetleyicisi Nasıl Çalıştırılır Power Apps ve Kullanılır
- Dataverse Çözüm Denetleyicisi
Zaman uyumlu iş akışları yerine zaman uyumsuz iş akışları kullanma
Sistem özelleştiricileri, Field Service'te veriler değiştirildiğinde çalışan iş mantığını gerçek zamanlı olarak gerçekleştirmek için genellikle zaman uyumlu iş akışları yazar. Ancak, iş akışlarının eşzamanlı olarak çalıştırılması performansı düşürür. Performans sorunlarından kaçınmak için iş akışlarını zaman uyumsuz olarak çalıştırın.
Field Service ve Kaynak Zamanlama kullanıma hazır işlemlerini etkinleştirme
Field Service ve Resource Scheduling, gerekli iş mantığını gerçekleştiren birçok süreci içerir. Devre dışı bırakılmış işlemler hatalara yol açabilir. Sorunları önlemek için, tüm Field Service ve Resource Scheduling işlemlerinin etkin durumda olduğundan emin olun. İşlemlerin devre dışı bırakılmış durumda olup olmadığını belirlemek için Field Service Çözüm Durumu Merkezi'ni düzenli olarakçalıştırın.
Sorunları algılamak için Çözüm Durumu Merkezi'ni çalıştırın
Çözüm Durumu Merkezi, ortamınızın durumunu daha iyi anlamanıza ve Dynamics 365 ortamınızla ilgili sorunları algılamanıza yardımcı olur. Bir ortamın yapılandırması, doğal sistem işlemleri aracılığıyla zaman içinde değişebilir. Çözüm Durumu Merkezi, ortamın yapılandırmasını doğrulamak için bir örnek içinde kurallar çalıştırır. Kurallardan bazıları Field Service'e özgüdür ve bir sorunla karşılaştığınızda bunları isteğe bağlı olarak çalıştırabilirsiniz. Bazı kurallar, Field Service yüklendiğinde veya güncelleştirildiğinde otomatik olarak tetiklenir.
Ortamınızın sistem durumunu izlemek için Çözüm Durumu Merkezi kural kümesini düzenli olarakçalıştırın.
Mobil uygulama performansıyla ilgili önemli noktalar
Mobil uygulamanın özelleştirilmesi performansı etkileyebilir. Mobil uygulamayı özelleştirirken performansla ilgili dikkat edilmesi gerekenler bölümündedaha fazla bilgi edinin.