Forum

InfoPath de gizlene...
 
Bildirimler
Hepsini Temizle

InfoPath de gizlenen bir kontrolün "cannot be blank" şartını kaldırma

2 Yazılar
2 Üyeler
0 Reactions
412 Görüntüleme
(@mustafaunlu)
Gönderiler: 8
Active Member
Konu başlatıcı
 

 

Merhaba arkadaşlar;

SharePoint için InfoPath de form tasarlarken karşılaştığım bir problem olan disable edilmiş kontrolün "cannot be blank"  kontrolünün nasıl kaldırılabileceği üzerine bir çözüm sunacağım.

Bu sorun ile karşılaşmanıza sebep olabilecek muhtemel senaryo şu şekilde.

* Bir drop-down box a bağlı A, B, C seçenekleri olsun

* Bu seçeneklerden A seçildiğinde A ya bağlı kontroller gözüksün diğerleri gizlensin

* Ve her halükarda seçime bağlı bütün kontroller "cannot be blank" yani doldurulması zorunlu olsun.

            Şimdi formu tasarlayıp publish ederek doldurmaya çalıştığınızı düşünün. Drop-down box dan A yı seçip zorunlu alanları doldurduğunuzda formu gönderemeyeceksiniz çünkü B veya C ye bağlı olupta gizlenmiş olan kontroller gizlenmiş olsalar da boş olmak istemeyeceklerdir.

            Bu noktada ilk akla gelen bir kural oluşturarak "cannot be blank" fonksiyonunu kaldırmak olacaktır fakat bunu denediğinizde infopath in buna müsaade etmediğini göreceksiniz.

            Benim bu noktada ki çözümüm tüm kontrollerin zorunlu olmaması yönünde. Yani olayı tersten okumak gerekiyor. Seçime bağlı bütün kontroller zorunlu olsun sadece kullanılmayacak kontroller zorunlu olmasın şeklinde düşünmek yerine; kontrollerin hiçbiri zorunlu olmasın sadece drop-down box da seçilen seçeneğin getirdiği kontroller zorunlu olsun şeklinde düşünmek daha faydalı olacaktır. Peki bunu nasıl yapacağız?

            Aslında bundan sonrası tamamen validation kuralı yazmakla alakalı. Yani drop-down box dan A seçildiğinde A seçeneği ile alakalı tüm kontrollere bir validation rule ekleyip şu 2 kuralı giriyorsunuz;

Eğer DropDownBox eşittir A ise ve

A seçeneği boş ise

            Show Screen Tips: "Burası Boş Kalamaz"

            Benim bulduğum en pratik çözüm buydu.

Hepinize kolay gelsin.

 
Gönderildi : 18/02/2013 21:49

(@serkankonak)
Gönderiler: 1339
Noble Member
 

Paylaşım için teşekkürler.

 
Gönderildi : 23/02/2013 01:10

Paylaş: