Makale Özeti

Oluşturduğumuz Dinamik il ve ilçe lookuplarını My Entity nize ekleme

Makale

Merhaba Arkadaşlar bir önceki konumuzda oluşturduğumuz il ve ilçe entitylerini lookup olarak, custom oluşturacağınız bir entitye nasıl eklendiğiniz göreceğiz.

MYEntity isminde formumuzu create ediyoruz.

Daha sonra N:1 ilişkilerden ilk ekliyeceğimiz lookup olan iller entitymizi ilişkilendiriyoruz.

Diğer ilişkimiz olan N:1 ilçeler entitymizi lookup olarak ilişkilendirip kaydediyoruz.

Yaratmış olduğumuz lookupları form ve views sekmesinden form desing açarak Add Fields sekmesinden yaratmış olduğumuz il ve ilçe lookuplarımızı ekliyoruz.

Lookuplarımızı ekledikten sonra artık geriye javascriptlerimiz yazarak lookuplar arasındaki ilişkiyi sağlıyacağız.

Form Proporties den Onloaduna;

document.FilterLookup = function(source, target)
{
    if (IsNull(source) || IsNull(target)) { return; }
    var name = IsNull(source.DataValue) ? '' : source.DataValue[0].name;
    target.additionalparams = 'search=' + name;
}

if (crmForm.FormType==1)
{
crmForm.all.mcs_cityid.setAttribute("readonly", true);
}

if(crmForm.FormType==2)
{
document.FilterLookup(crmForm.all.mcs_stateid, crmForm.all.mcs_cityid);
}

var lookupItem = crmForm.all.mcs_cityid;
if(lookupItem == null)
{
crmForm.all.mcs_cityid.DataValue=null;
crmForm.all.mcs_cityid.setAttribute("readonly", true);
}

Ekliyoruz. Daha sonra il lookupmızı form üzerinde çift tıklıyarak onchange eventına ise;

document.FilterLookup(crmForm.all.mcs_stateid, crmForm.all.mcs_cityid);
crmForm.all.mcs_cityid.setAttribute("readonly", false);

kodlarımızı yazdıktan sonra formumuzu save edip, publish ediyoruz.

şimdi formumuzda test yarak il ve ilçe lookuplarının çalışıp çalışmadığını kotrol edelim.

MYEntity mize gidip yen bir kayıt oluşturuyoruz.

İsim olarak ben şimdilik test diyerek kaydı oluşturuyorum. Gördüğünüz üzere il seçilmeden ilçe lookupı aktif değildir.

il lookupımızdan il olarak istanbulu seçiyorum. Artık il lookupımızda yaptığım seçim doğrultusunda ilçe lookupımız seçilir hale gelmiş haldedir.

ilçeler lookupımızı tıkladığımda ise karşıma istanbulda bulunan 40 adet tüm ilçeleri lookup ekranımızda getirmiş bulunmaktadır. Burdanda bir ilçe seçerek ok butonuna basıyorum.

Daha sonra formumuzu kaydedip artık oluşturmuş olduğumuz dinamic entityler olan il ve ilçelerimizi, custom oluşturduğumuz bir form üzerinde lookup olarak başarılı bir şekilde çalıştırılmış bulunmaktayız. bir başka makalemde görüşmek dileğiyle hoşçakalın.