Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel

Kaydın oluşturulmadan önce, belirlenen kurallara uygun olup olmadığının kontrol işlemidir. Bir alan için boş geçilemez tanımı yapılır ve ilgili kaydın kaydedilmemesi sağlanır. Aynı zamanda ilgili alana girilen değerin belirli bir rakama göre kontrolü de yapılması sağlanır. Oluşturulmuş bir kaydı silerken, kullanıcıya uyarı verme işlemi de Validasyon tanımı ile yapılır.

Validasyon Kuralları Tanımlama

Logo CRM uygulamasının kurulu olduğu klasör içerisinde, ModelEditor klasörü açılır ve ModelEditor.bat uygulaması çalıştırılır.

Soldaki ağaç menüsünden Validation> Rules'a sağ tıklanır ve istenen kural türü tanımlanır.

Tip
titleBilgilendirme

Aşağıdaki örneklerde Logo CRM ürün kurulum yapıldıktan sonra, sistemde var olan Validasyon örnekleri gösterilmiştir.

Logo CRM üzerinde var olan bazı validasyonlar;

Expand
title1- Belirlenen Validasyona göre kayıtların uygunluğunun kontrolü

Firma kartında Unvan alanı boş bırakılarak kaydedilmek istenildiğinde, "Boş Olmamalıdır" şeklinde uyarı vermektedir. (Model Editör üzerinde "required_FirmTitleIsRequired" adıyla tanımlama yapılmıştır.)

Firma kodu alanı benzersiz (unique) değere sahiptir. Sistemde bulunan firma kodu tekrar eklenmek istendiğinde, kural devreye girer ve kaydetmeyi durdurur. (Model Editör üzerinde "unique_FirmCodeUnique" adıyla tanımlama yapılmıştır.)

Expand
title2- Tanımlı Validasyona göre, uyarı mekanizmasının devreye girip uyarı vermesi

Uyarı, kullanıcının seçimine bırakılır. "Uyarıları Yok say" seçeneği ile kaydetme işlemine devam edilir.

Kaydedilmiş bir Fırsat kaydının içerisinde, İlişkili Kayıtlar> Teklifler/Sözleşmeler ekranından Yeni Teklif oluşturulur. Fırsat kaydı silinmek istenildiğinde, tanımlanmış validasyondan dolayı bir uyarı vermektedir. Kullanıcı isterse, "Uyarıları yok say" seçerek işlemine devam edebilir. (Model Editör üzerinde "delete_OpportunityIncludesProposals" adıyla tanımlama yapılmıştır.)

Validasyon Çeşitleri

Expand
title1.Zorunlu Alan Kuralı Tanımlama (RuleRequiredField)

Örnek: Firma kayıt işleminde Vergi Dairesi girişi yapılmış ise, Vergi No alanının zorunlu alan yapılması.

  • Model Editör üzerinden Validasyon tanımlama işleminin detayları aşağıda yer almaktadır.

  • InvertResult: Yapılacak validasyonu terse çevirir. Ön değeri False seçeneğidir.
  • Result Type: Kayıt yapılıp yapılmayacağını kontrol eder. Seçenekler listesinde Error, Warning, Information yer almaktadır.
    • Error: İşlemin kaydedilmesini önler. Kaydedilmek istendiğinde, kırmızı bir bölümde neden kaydedilmediği yazılır.
    • Warning: Kaydedilir, Uyarıyı Yok Say butonu seçildiğinde, devam edilir.
    • Information: Kaydedilir, sadece belirlenen alanın yanında mavi-beyaz bir ünlem işareti çıkar.
  • SkipNullorEmptyValues: Alanın null veya boş değere sahip olmasının dikkate alınmamasını gösterir.
  • TargetContextIDs: Oluşturulan validasyonun, işlemi kaydedilirken mi yoksa silinirken mi devreye gireceğini seçer.
  • TargetCriteria: Zorunlu alandır ve burada belirlenen kriter olduğunda validasyon devreye girer. Bunun için öncelikle TargetType alanından hangi bölüm için uygulanacağı seçilir.
  • TargetType: Validasyonun uygulanacağı bölüm seçilir.
  • TargetPropertyName: Validasyonun uygulanacağı alanın adı tanımlanır.
  • Format: Bu alan ön değerde belirli tanımlarla gelir. İstenirse bu alanlar kullanılmayıp farklı bir mesaj gösterimi sağlanır. Bu da CustomMessageTemplate alanına yazılarak yapılabilir.
  • Id,Name: Aynı isimde olabilir ya da yeni isim verilebilir.  Boşluk, nokta gibi işaretler kullanılmamalıdır. Boşluk kullanılmak isteniyorsa da kelimeler arasına "_ "(alt tire) kullanılmalıdır.
Expand
title2. Belirli Bir Kritere Göre Validasyon (RuleCriteria)

Örnek: Firma kartlarında Şahıs Şirketi seçimi ve Firma Rolü alanından Toptancı seçimi yapıldığında, uyarı verilmesinin sağlanması.



  • Model Editör üzerinden Validasyon tanımlama işleminin detayları aşağıda yer almaktadır.

  • Burada dikkat edilmesi gereken ilk nokta; verilecek kriterin doğru çalışabilmesi için InvertResult değerinin True seçilmesidir. Sadece RuleCriteria seçiminde bu şekilde tanımlama yapılmalıdır.
  • Bu validasyon tipinde farklı olan, Criteria bölümüdür. Kriter belirlemek için kırmızı ok ile gösterilen üç noktadan seçim yapılır.

  • CustomMessageTemplate alanına da gösterilmesi istenilen mesaj yazılır.
  • Firma kartında, şahıs şirketi seçilip firma rolü toptancı seçildiğinde resimdeki gibi uyarı verilir. Uyarıyı Yok Say mesajının nedeni, ResultType=Warning değerinin seçilmiş olmasıdır. Eğer Error değeri seçilirse, kaydedilmesine izin verilmez.
Expand
title3.Tekil (Unique) Kural Tanımlama (RuleUniqueValue)

Örnek: Firma detay ekranında aynı Vergi No ile kayıt oluşturma işleminde uyarı vermesi.

  • Model Editör üzerinden Validasyon tanımlama işleminin detayları aşağıda yer almaktadır.

  • TargetPropertyName alanına, unique alanın tanımlaması yapılır.
  • ResultType alanında Error seçiliyse, kayıt işlemi engellenir.
Expand
title4.Birden Fazla Alanın Tekil (Unique) Kontrolü (RuleCombinationPropertiesIsUnique)

Örnek: Firma kartında hem Vergi Dairesi hem de Vergi Numarası aynıysa kaydetme işleminin engellenmesi.

  • Model Editör üzerinden Validasyon tanımlama işleminin detayları aşağıda yer almaktadır.

  • TargetProperties alanında birden fazla alan ekleyebilmek için, alan isimlerinin arasına ";" (noktalı virgül) koyuyoruz.
Expand
title5.Boolean Alana Bağlı Validasyon Oluşturma (RuleFromBoolProperty)

Örnek: Firma kaydedildiğinde, Aktif Ziyaret alanını seçilmesinin zorunlu olması.

  • Model Editör üzerinden Validasyon tanımlama işleminin detayları aşağıda yer almaktadır.

Expand
title6. İki Değer Arasında Validasyon Kuralı Tanımlama (RuleRange)

Örnek: Firma kaydedildiğinde, Aylık Ziyaret alanına belirlenen değer aralığında değer girilmesinin sağlanması.

Image Added

  • Model Editör üzerinden Validasyon tanımlama işleminin detayları aşağıda yer almaktadır.

  • Bu tanımlamada dikkat edilmesi gereken MaximumValue ve MinimumValue alanlarına istenilen değer aralıkları bilgisinin girilmesidir.

...