Power Apps: Canvas App ile Sharepoint Listelerini Özelleştirme
Sharepoint üzerinde kullandığımız listeleri çeşitli şekillerde, canvas app üzerinde gerçekleştirdiğimiz logiclere benzer şekilde özelleştirmemiz mümkün. Örnek vermek gerekirse, Sharepoint listenizin, canvas uygulamanızda kullandığınız temaya sahip renk şemasına sahip olmasını isteyebilirsiniz veya listelerinizde bulunan bazı kolonların düzenlenmemesini isteyebilirsiniz. Bunları doğrudan canvas app yardımı ile yapmak mümkün. Şimdi, var olan Sharepoint listemizi nasıl özelleştiririz küçük bir örnekle inceleyelim
Listedeki herhangi bir kayda tıkladığımızda, sağ panelde açılan ilgili kaydın detay ekranında Devices listesinin sahip olduğu kolonları görebiliriz. Yapacağımız örnekte bu alanı özelleştirerek arkaplan rengi ve bazı kolonların Form Modu değiştiğinde istediğimiz şekilde göster/gizle vb özelliklere sahip olmasını sağlayacağız.
İlgili listenin detay sayfasının sağ kısmında yer alan Edit Form’un altında yer alan Customize with Power Apps tıkladığımızda, default environmentımız üzerinde bir Canvas Power Apps uygulamasını bizim için otomatik olarak oluşturacaktır.
Canvas App içerisinde, form ekranının altında SharepointForm adında bir komponent açılacak, uygulama içerisinde kullandığımız şekilde benzer davranışları bu form içinde kullanabiliyoruz. Tek farkı Sharepoint üzerinden otomatik olarak bizim için oluşturulması.
Sharepoint listeyi detay ekranında Edit All butonuna tıklayarak, benzer şekilde uygulama içerisinde açtığımız formu da, çeşitli şekilde özelleştirilmesini yapabiliriz. SharepointIntegration propertylerini incelediğimizde bunları görebilirisiniz.
Örnek olarak View modda iken listemizdeki Photo ve Price kolonlarını gizleyelim:
Kolon ismi Photo_DataCard2 form grubunun Visible propertyisine aşağıdaki formülü ekleyelim
If(SharePointForm1.Mode = FormMode.View, true, false)
Bu kod bloğunu gizlemek istediğimiz kolonların Visible propertysine ekleyerek, ilgili kolonu gizleyebiliriz.
Form elementleri grup halinde oldukları için tüm kolonlara benzer formülü yapıştırmak yerine ilgili formülü gizlemek istediğimiz kolonun Visible propertysine aşağıdaki şekilde ekleyelim:
Photo_DataCard2.Visible
Hali hazırda Photo_Data card’ın visible propertysinde SharepointForm1'i refere ettiğimiz için tekrar tekrar aynı kod bloğunu diğer kolonların visible propertysinde kullanmamıza gerek yok.
Formun visible property durumu arasındaki fark ile oluşan form görünümü aşağdaki gibi olacaktır:
Uygulamada yapacağımız değişiklikleri tamamladıktan sonra, normal şekilde Canvas App’imizi kaydedip Publish ettiğimiz şekilde: File -> Publish to Sharepoint diyerek değişikliklerimizi tamamlayalım.
Sharepoint listemizi açıp, ilgili kayda tıkladığımızda detay ekranının canvas app üzerinde tasarladığımız şekilde açılacağını göreceksiniz.
Edit all tıkladığınızda Photo ve Price kolonlarına ait alanların gizlendiğini görebilirsiniz.
Sonuç olarak bu alanda canvas app üzerinde yaptığımız tüm fonksiyonel işlemleri, Sharepoint listelerimizi özelleştirmek için kullanabiliriz.
Son olarak bahsetmek istediğim önemli noktalardan bir tanesi, bazen yaptığınız değişiklikler anında Sharepoint listesi üzerine publish edilmemiş olabilir. Yaptığınız değişiklikleri görüntüleyebilmek için sayfanızı yeniledikten sonra tekrar denemenizi tavsiye edebilirim. Herkese iyi çalışmalar.