Aracılığıyla paylaş


Hızlı hesaplamalar

Power Fx ifadeleri güçlüdür ve sizin için otomatik olarak birçok arka plan hesaplaması yapar. Power Fx sizin için birçok şeyi otomatikleştirirken, hesaplamalarınızı mümkün olduğunca hızlı bir şekilde ince ayar yapmak mümkündür.

Veri alma

Açık sütun seçimini kullanma

Açık Sütun Seçimi (ECS) özelliği, tüm yeni uygulamalar için varsayılan olarak etkindir. Uygulamanız için etkin değilse etkinleştirmeniz gerekir. ECS, alınan sütun sayısını otomatik olarak yalnızca uygulamada kullanılanlara azaltır. ECS etkinleştirilmemişse ihtiyacınız olandan daha fazla veri alıyor olabilirsiniz ve bu da performansı etkileyebilir. Bazen, bir uygulama koleksiyonlar aracılığıyla veri aldığında, bir sütunun orijinal kökeni veya kaynağı kaybolabilir. Kullanılıp kullanılmadığını bilmiyoruz ve ECS'yi kullanarak bırakırız. ECS'yi genellikle bir koleksiyon başvurusundan sonra PowerFx ifadesi ShowColumns'u kullanarak veya bir denetimde kullanarak eksik bir sütun için çalışmaya zorlayabilirsiniz.

Galerilerdeki, tablolardaki ve formlardaki resimleri dikkatli kullanın

Galeriler ve tablolar için resimlerin Dataverse küçük resim sürümlerini kullanın. Dataverse küçük resimleri yaklaşık 1 kilobayt küçüklüktedir ve kaydın bir parçası olarak satır içi olarak depolanır ve koleksiyonları gösteren denetimlerde görüntülenmek için kullanışlı ve hızlıdır. Tüm SharePoint resimleri de dahil olmak üzere diğer tüm resim referansları ayrı bir çağrı gerektirir ve bir galeriye veya tabloya yerleştirilmemelidir. Ayrı bir çağrı gerektiren görüntüleri ayrıntı formlarına yerleştirin. Varsayılan olarak hiçbir zaman tam bir resim göstermemeyi düşünün. Tam ayrıntılı görüntüler, kullanıcılar için yararlı ve önemli olabilir. Ancak bu görüntüleri, bir düğme veya ayrı bir sayfaya gitme gibi açık bir kullanıcı eylemi aracılığıyla kullanıcıların kullanımına sunabilirsiniz. SharePoint tam görüntüden kısa bir formda kullanmak için kullanabileceğiniz bir dizi orta boyutlu görüntüye sahiptir. Dataverse'te yalnızca iki boyut vardır: Küçük resim ve Tam.

Hesaplamalar

App.formula ile formülleri bölme

App.formulas'ın ve adlandırılmış formüllerin kullanımı, Power Fx'in bir formülün ne zaman değerlendirileceğine karar vermesine izin verdiğinden, uygulama yükleme ve sayfada gezinme hızına yardımcı olabilir. Bu, başlangıçta mutlaka değerlendirmesi gerekmediği anlamına gelir. Ek olarak, adlandırılmış formüller de genellikle hıza yardımcı olabilir. Özellikle, uzun bir komut dosyanız varsa onu adlandırılmış formüllere bölmek, daha verimli hesaplamalara olanak tanır çünkü Power Fx işi planlayabilir ve yeniden kullanıma olanak tanır. Daha fazla bilgi için bkz. Uygulama formülleri.

Eşzamanlı kullanım

Formüllerin aynı anda yürütülmesine izin vermek için Eşzamanlı işlevini kullanın. Eşzamanlı işlevinin nerede kullanılacağını dikkatlice seçin. Biraz küçük hızlanmalar sağlayabilir ancak birbirine bağlı öğeleri çalıştırıyorsanız zamanlama ve kısıtlama sorunlarına neden olabilir.

Engellemeyen kullanıcı arabirimi adımına yönelik önemli güncelleştirmeleri erteleme

Bir veri kaynağında yapılan büyük güncelleştirmelerin tamamlanması biraz zaman alabilir. Ancak kullanıcılar, kullanıcı arayüzünün kontrolü kendilerine hızlı bir şekilde geri vermesini bekler. Görevler, kullanıcının başka bir eylem gerçekleştirebilmesi için güncelleştirmenin bitmesi gereken sıralı veya zaman uyumsuz (güncelleştirme, kullanıcı eylemlerinden ayrı olarak tamamlanabilir) olabilir.

Zaman alan eşzamanlı göreve bir örnek olarak konserde koltuğu onaylamayı gösterebiliriz. Bunun gibi zaman alan eşzamanlı görevlerin çoğu için bir ilerleme çubuğu koymak yaygındır. Bu kullanıcı arabirimi aslında kullanıcıyı engeller ancak diğer kullanıcı arabirimi öğeleri güncelleştirilmeden önce görevin tamamlanmasını sağlar. Bu yaklaşım uygulamanız için işe yaramayabilir. İşletmeler normalde daha uzun sıralı adımları açık bir iş adımı olarak ele alır. Bir iş süreci sinyali aracılığıyla bir sonraki adıma geçmek için onaylandınız. Onay işlemini örnek verebiliriz. Onay hızlı bir şekilde gelebilir veya gecikebilir. Kullanıcı arabiriminde, işlemin tamamlandığını birkaç şekilde belirtebilirsiniz. Bir düğmeyi etkinleştirebilir, ileti gösterebilir, e-posta gönderebilir veya menü öğesi gibi kullanıcı arabiriminin bir bölümünü etkinleştirebilirsiniz.

Zaman uyumsuz göreve örnek olarak bir siparişin tamamlanması verilebilir. Müşteri bir sipariş sepetini güncelleştirir, siparişi üzerinde çalışır ve ardından siparişi verir. Ancak müşteriye onaylanmış bir sevkiyat tarihi verilmeden önce birkaç güncelleştirme yapılmalıdır. Bu örnekte, Sevkiyat Tarihi hemen kolayca sağlayabileceğiniz bir veri değildir. , güncelleştirmenin bu bölümünü müşteriye daha sonra gönderilecek bir e-postaya erteleyebilirsiniz.

Zaman uyumlu görevlerde Power Apps'te kodu genellikle kullanıcı arabirimi engelleme görevleri için kullanırsınız. Örneğin, kod bir dönüş değeri alana kadar bekler ve ardından ilerleme çubuğunu serbest bırakır. Bu tür durumları en aza indirmek en iyisidir. Ancak açık bir iş adımı veya zaman uyumsuz görevler kullanan görevlerde, eylemi tamamlamak için Dataverse eylemi, saklı yordam veya Power Automate akışı gibi bir dış hizmet kullanmak yaygındır.

"ForAll" ifadesini uygun şekilde yerleştirme

ForAll ve collect ile aşağıdaki gibi görünen bir ifadeniz varsa:

ForAll(x, Collect(y, { … }))

Ardından, bunu ters çevirin

Collect(y, ForAll(x, { … }))

İlk modelde, y koleksiyonundaki herhangi bir bağımlı kurala değişiklikler bildirilir ve x'in her yinelemesi için değerlendirilir. İkinci modelde, bu kurallar yalnızca bir kez değerlendirilir.

Gallery.AllItems'a başvurulardan kaçınmayı göz önünde bulundurun

Power Apps ile çalışırken, kullanıcı değerlerine ihtiyacınız olmadıkça Gallery.AllItems'a başvurmaktan kaçınmak en iyisidir. Bunun nedeni, AllItems her okunduğunda yeni bir çıkış tablosu oluşturulmasıdır. Bunun yerine, yalnızca kaç öğenin yüklendiğini bilmek istiyorsanız Gallery.AllItemsCount'u kullanın.

Gallery.TemplateSize'ı dikkatli kullanın

Esnek yükseklikteki galerilerin doğru şekilde işlendiğinden emin olmak için makul bir varsayılan boyut ayarlamak önemlidir. Başlangıçta, bu değere göre mümkün olduğunca çok satır oluşturmaya çalışırız. Varsayılan boyutu 0 olarak ayarlarsanız birkaç uç durum dışında her şeyi işlemeye çalışırız. Formül kullanıyorsanız formülün 0 olarak değerlendirilebileceği durumlar için minimum bir değer ayarladığınızdan emin olun. Örneğin, Max (20, varFoo + rectBar.Height) formülünü kullanabilirsiniz. Bu şekilde, varFoo ve rectBar.Height henüz mevcut değilse en azından makul bir değer olan 20'yi kullanırız.

Özellikle arama için DelayOutput'u not alın

Değişikliklerin algılanmasından önce bir saniyelik bir gecikme olur ve bu da her yazma için değişiklikleri algılamak yerine yazmayı tamamlamanıza olanak tanır.