Cengiz ATİLLA

Microsoft Dynamics CRM

Dynamics CRM 365 - Xrm.Page.data.entity.attributes

Merhaba Arkadaşlar

Dynamics crm içerisinde formları tasarlarken sıklıkla javascript ile forma müdahale etmemiz datalar üzerinde kıyaslama yapmamız veya kullanıcılarımızı yönlendirmemiz gerekir. Bu makalemizde Xrm.Page.data.entity.attributes ( Xrm.Page.getAttribute  )   altında bulunan başlıklar ile inceleyeceğiz.

  • getInitialValue
  • getOption
  • getOptions
  • getSelectedOption
  • getText
  • controls
  • getAttributeType
  • getFormat
  • getIsDirty
  • getMaxLength
  • getName
  • getUserPrivilege
  • getMax
  • getMin
  • getPrecision
  • OnChange - addOnChange
  • OnChange - remove
  • OnChange OnChange - fireOnChange
  • RequiredLevel - getRequiredLevel
  • RequiredLevel - setRequiredLevel
  • Value - getValue
  • Value - setValue
  • Value - Set Lookup Attribute Value

getInitialValue

Form üzerindeki picklist veya boolean alanlar için geçerli olan bir fonksiyondur. Form açıldığı zaman fonksiyon içerisinde belirtilmiş olan alanın default değerini bize verir. 

Örnek Kullanım 

Xrm.Page.getAttribute(alan_adı).getInitialValue();

getOption

Form üzerinde bulunan picklist alanlar için geçerli bir fonksiyondur. Parametre olarak verilen value değeri ilgili picklist içerisinde bulunursa geriye bir nesne üzerinde text ve value değerini döner , herhangi bir değer ile eşleşemez ise geriye null olarak dönüş yapar.

Örnek Kullanım

Xrm.Page.getAttribute(alan_adı).getOption(deger);

getOptions

Form üzerinde bulunan picklist alanlar için geçerli bir fonksiyondur. Belirtilen picklist içerisindeki tüm değerleri object[] olarak geri verir.

Örnek Kullanım

Xrm.Page.getAttribute(alan_adı).getOptions();

getSelectedOption

Form üzerinde bulunan picklist alanlar için geçerli bir fonksiyondur. Picklist in seçilen değerini bir nesne üzerinde text ve value değerini döner.

Örnek Kullanım

Xrm.Page.getAttribute(alan_adı).getSelectedOption();

getText

Form üzerinde bulunan picklist alanlar için geçerli bir fonksiyondur. Picklist in seçilen değerinin text bilgisini bize geri döner.

Örnek Kullanım

Xrm.Page.getAttribute(alan_adı).getText();

controls

Form üzerinde bulunan alanların listesini control tipinde bize geri döner. Liste içerisinde bulunan alanların üzerinde işlemler yapabilmemizi sağlar . 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).controls

Form üzerinde bulunan tüm alanları gizlemek için    : SDK.Sample.hideAllAttributeControls(varlık_adı);
Form üzerinde bulunan tüm alanları göstermek için : SDK.Sample.showAllAttributeControls(varlık_adı);

getAttributeType

Form üzerinde olan tüm alanlar için geçerlidir. parametre olarak verilen alanın sistemsel tipini bize string tipinde geri döndürür. 
Veri tipleri : boolean - datetime - decimal - double - integer - lookup - memo - money - optionset - string 

Örnek Kullanım

Xrm.Page.getAttribute(varlık_adı).getAttributeType()

getFormat

Form üzerinde bulunan alanın sahip olduğu format bilgisini string olarak geri döner. 
Veri tipleri : date - datetime - duration - email - language - none - phone - text - textarea - tickersymbol - timezone - url 

Örnek Kullanımı 

Xrm.Page.getAttribute(varlık_adı).getFormat()

getIsDirty

Form üzerinde bulunan alanın üzerinde veri girişi yapılıp yapılmadığının bilgisini bize true / false olarak döner . Tüm alanlar için geçerlidir. 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).getIsDirty()

getMaxLength

Form üzerinde bulunan string ve memo alanlar için geçerlidir. Belirtilen alanın maximum alabileceği değeri bize bildirir. 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).getMaxLength()

getName

Form üzerinde bulunan alanın sistemsel adını almak için kullanılır. Tüm alanlar için geçerlidir. 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).getName()

getUserPrivilege

Form üzerinde belirtilen alan için mevcut crm kullanıcısının yetkilerini bize object olarak geri döner. Gelen değer ile alan üzerinde kullanıcının okuma yazma oluşturma işlemleri yapıp yapamadığı bilgisini almış oluruz. 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).getUserPrivilege()

getMax

Form üzerinde belirtilen alanın maximum değerini bize iletir. money - decimal - integer- double tipindeki alanlar için çalışır. 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).getMax()

getMin

Form üzerinde belirtilen alanın minimum değerini bize iletir. money - decimal - integer- double tipindeki alanlar için çalışır. 

Örnek Kullanım 

Xrm.Page.getAttribute(varlık_adı).getMin()

getPrecision

Form üzerindeki Number alanlar için geçerlidir , belirtilen alanın izin verdiği ondalık rakamları ile birlikte verir. 

Örnek Kullanım 

Xrm.Page.getAttribute(arg).getPrecision()

OnChange - addOnChange

Form üzerinde belirtilen alanın onchange olayını ayarlar . addOnChange içerisine hazırlamış olduğumuz function vererek çalışmasını sağlayabiliriz. Genelde runtime da bir alana onchange olayı atamak istersek kullanılır. 

Örnek Kullanım

 Xrm.Page.getAttribute(arg).addOnChange(function)

OnChange - removeOnChange

Form üzerinde belirtilen alanın üzerinde bulunan onchange olayını kaldırmak için kullanılır , removeonChange içerisinde verilen funtion alan üzerinden ( on change olayından ) kaldırılır. 

Örnek Kullanım 

Xrm.Page.getAttribute(arg).removeOnChange(function)

RequiredLevel - getRequiredLevel 

Form üzerinde belirtilen alanın bize gereklilik bilgisini string olarak döner . Geri dönüş değeri string tipindendir. Tüm crm alanları için geçerlidir. 

  • none : Gereklilik düzeyi yok 
  • required : Zorunlu alan 
  • recommended : Önerilen alan 

Örnek Kullanım 

Xrm.Page.getAttribute(arg).getRequiredLevel()

RequiredLevel - setRequiredLevel 

Form üzerinde belirtilen alanın gereklilik düzeyini ayarlamamıza yarar. Tüm crm alanları için geçerlidir. 

setRequiredLevel() alacağı değerler 

  • none : Gereklilik düzeyi yok 
  • required : Zorunlu alan 
  • recommended : Önerilen alan 

Örnek Kullanım 

Xrm.Page.getAttribute(alan_adı).setRequiredLevel(requirementLevel)

Value - getValue

Form üzerinde belirtilen alanın üzerindeki değeri verir. Tüm crm alanlar için geçerlidir 

Örnek Kullanım 

Xrm.Page.getAttribute(alan_adı).getValue()

Value - setValue

Form üzerinde belirtilen alana değer ataması yapmamıza yarar. Lookup nesnesi haricinde olan alanlar için geçerlidir. 

Örnek Kullanım 

Xrm.Page.getAttribute(alan_adı).setValue()

Set Lookup Attribute Value

Form üzerinde bulunan lookup nesnelerine değer atamak için aşağıdaki function kullanılır. 

function setSimpleLookupValue(LookupId, Type, Id, Name) {
var lookupReference = [];
lookupReference[0] = {};
lookupReference[0].id = Id;
lookupReference[0].entityType = Type;
lookupReference[0].name = Name;
Xrm.Page.getAttribute(LookupId).setValue(lookupReference);
}