Skip to end of metadata
Go to start of metadata

Netigma Form Olayları Nasıl Kodlanır?

Giriş

Netigma 3.7+ ile gelen INetigmaFormEventServiceProvider arayüzü sayesinde api kullanıcılarının;

  • Bilgi formu yüklenmeden önce, kaydet işlemi gerçekleşmeden önce ve gerçekleştirdikten sonra araya girebilmeleri,
  • Girilen form değerlerinin sunucu tarafında özel doğrulama (validasyon) fonksiyonlarından geçirebilmeleri,
  • Gerektiğinde form kaydını engelleyebilmeleri,
  • Formun altına ve üstüne (yalnızca ilgili forma özel) web kontrolleri ekleyebilmeleri

sağlanmıştır.

Belge İçeriği

Icon

INetigmaFormEventServiceProvider arayüzünü gerçekleyen sınıflar Netigma TypeManager içerisine girerler. (bkz: Dikkat Edilmesi Gereken İşlemler.) Yazılan INetigmaFormEventServiceProvider sınıfı arasındaki ikişki netigma meta yönetim sayfalarından sağlanabilir. (Bkz: Form Olay Dinleyicisi özelliği PYS Örnek Olaylar olarak ayarlanmış. Bu isim arayüz gerçekleştirmesindeki DisplayName özelliğinden gelir)

 

Dikkat Edilmesi Gereken İşlemler

Icon

ITask gerçekleştirimi sırasında , "TypeManager(Factory) kullanan sınıflarda dikkat edilmesi gereken kurallar" dokümanı dikkate alınmalıdır.

 

 

INetigmaFormEventServiceProvider Üyeleri

onPreLoadData(FormEventArgs e)

Form içerisindeki editör değerleri DataRow dan doldurulmadan önce bu metod çalışır. Editör değerleri değiştirilebilir. Aşağıdaki örnekte metot önceki yıla ait Freight değerleri toplamı 20000 i geçtiği için freight değerini 2 olarak değiştirmiştir.

onPreSave(FormEventArgs e)

Form kaydet butonuna bastıktan sonra, değerler veri tabanına kaydedilmeden önce çalışır. e.Cancel = true; denilmişse form kaydedilmez. e.Message ile gönderilen mesaj metni bilgi formu sayfasında gösterilir. Aşağıdaki örnekte metod içerisinde freight değeri kontrol edilmiş ve kayıt engellenmiştir.

OnSaveCompleted(FormEventArgs e)

Form bilgileri veri tabanına kaydedildikten sonra çalışır. aşağıdaki örnekte metod Test tablosuna formdan girilen freight değerini tarih bilgisi ile kaydetmiştir. 

GetHeaderControl(FormEventArgs e)

Formun üstüne forma özel web kontrol ya da kontrollerinin eklenmesin olanak sağlar. Aşağıdaki örnekte metod formun üstüne geçen yıllara ait sipariş toplamlarını not olarak gösteren bir label kontrolünü formun üzerine eklemiştir. İstenirse burada LiteralControl içerisinde script de register edilebilir. Örneğin register edilen script içerisinde  freightClientInstance.SetValue(1); gibi bir ifade kullanılırsa freight bilgisinin gösterildiği editörün değeri 1 olarak istemci tarafında ayarlanır. Böylelikle arayüzün bu metodu editör değerlerinin değiştirilmesi ya da ilk değerlerinin verilmesi amacı ile de kullanılabilir. preLoadData dan farklı olarak değişikli istemci tarafında yapılmış olur. Aşağıdaki resimde formun üzerine eklenen etiket görülebilir.

GetFooterControl(FormEventArgs e)

GetHeaderControl gibi kullanılır. Farklı olarak bu metod kontrolü formun altına ekler. Örnekde değer null döndürülmüştür. Bu durumda forma herhangi bir kontrol eklenmez. Yine buradan dönen kontrol içerisinde sayafa script register edilebilir. bu scriptler içerisinde formların istemci işlem desteklerinden faydalanılabilir. categoryname.SetEnabled(false);

FormEventArgs Sınıfı

 

Örnek Uygulama

 

 

Ayrıca Bakınız

 

www.netcad.com.tr/NCDNFiles/netigma/apidoc/topic597.html