SharePoint Online: Koşullu Formül kullanarak başka bir Alana dayalı bir Form Alanını Gösterme veya Gizleme
Gereksinim: SharePoint Online liste formundaki başka bir alanın değerine göre bir alanı gösterin veya gizleyin.
SharePoint Online'da Başka Bir Alanı Temel Alan Bir Alanı Nasıl Gösterebilir veya Gizleyebilirim?
Geçmişte bunu jQuery kullanarak başarırdık. jQuery kullanarak Başka Bir Alanın Değerine Göre SharePoint Liste Form Alanlarını Gösterme veya Gizleme. Artık SharePoint Online'da, bu işlevselliğe ulaşmak için kullanıma hazır Koşullu Formüllerimiz var. İstediğimiz şuydu: “Proje Sınıflandırması” alanının yalnızca “Proje Durumu” alanı değeri “Evet” olduğunda gösterilmesi. Aksi takdirde liste formunda gizleyin. SharePoint Online'da, bir sütundaki belirli koşullara göre ne olması gerektiğini belirtmek için koşullu bir formül kullanabilirsiniz. Sütunları diğer sütunlara göre gösterecek/gizleyecek şekilde koşullu formülü nasıl yapılandıracağınız aşağıda açıklanmıştır:
- SharePoint Online listenize gidin >> Listenizdeki “Yeni” düğmesine tıklayarak Yeni Öğe formunu açın.
Yeni öğe sayfasında, aşağıdaki ekranda olduğu gibi “Formu Düzenle” butonuna ve ardından “Sütunları Düzenle” butonuna tıklayın.
Şimdi “Sütunları Düzenle” formunda üç noktaya (:) tıklayın ve menüden “Koşullu formülü Düzenle”yi seçin. Benim durumumda göstermek veya gizlemek istediğim "Proje Sınıflandırması" alanıdır.
Koşullu formülde, alanı gösterecek ve gizleyecek formülü girin. Benim durumumda, "=if([$IsActive] == true, 'true', 'false')" yazdım ve değişikliklerinizi uygulamak için kaydet tuşuna bastım. Görünen ad yerine sütunların Dahili Adlarını kullandığınızdan emin olun.
Artık “Proje Sınıflandırması” alanı yalnızca “IsActive” alanının değeri True olarak ayarlandığında görünecek!
Koşullu formül “=” simgesiyle başlamalı ve ardından “IF” koşulu gelmelidir. Koşul karşılanırsa true değerini döndürür ve bu, alanı gösterir. Aksi halde false değerini döndürür ve alanı gizler.
Bugün itibarıyla koşullu formüllerde tüm sütunların desteklenmediğini lütfen unutmayın. Örneğin, Yönetilen Meta Veri sütunu, Çoklu seçimin etkin olduğu Kişi veya grup/seçim, Para birimi sütunları, Konum, Hesaplanan sütunlar vb. "Desteklenmeyen" listesi altındadır. Ayrıca "Zorunlu" olarak işaretlenen sütunlarda göstermek veya gizlemek için koşullu formüller uygulayamayız (bu çok açık değil mi?). İşte bazı örnekler:
- Column Type
Formül Örneği
- Yes/No (check box) – Boolean
=if([$ProjectStatus]=='tamamlandı','doğru', 'yanlış')
- Number
=if([$Bütçe]>5000,'doğru','yanlış')
- Choice
-
=if([$Departman]=='BT','doğru', 'yanlış')
- Date
=if([$BaşlangıçTarihi]==Tarih('01/01/20221′),'doğru','yanlış')
- Person
=if([$Onaylayan].email=='approver@alaniniz.com','doğru','yanlış')
- Column with calculation
=if([$Column1]+[$Column2]<5000,'true','false')
Koşullu Formülü Ayarlamak için PnP PowerShell
PnP PowerShell kullanarak koşullu formülü nasıl ayarlayacağınız aşağıda açıklanmıştır:
#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/PMO"
$ListName="Projects"
$FieldInternalName = "Project_x0020_Classification"
$Formula = "=if([{0}] == true, 'true', 'false')" -f '$IsActive'
#Connect to the site
Connect-PnPOnline -Url $SiteURL -Interactive
#Get the Field
$Field = Get-PnPField -List $ListName -Identity $FieldInternalName
#Apply conditional formula
$Field.ClientValidationFormula = $Formula
$Field.Update()
Invoke-PnPQuery
SharePoint Çevrimiçi Liste formlarındaki koşullu formüller hakkında daha fazla bilgi: https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/list-form-conditional-show-hide



