Salesforce Apex – Liste

Salesforce Apex Liste



Salesforce Apex List, Salesforce veritabanına aynı anda daha fazla veri yüklemeye yardımcı olan bir veri yapısıdır. Bu yazımızda Apex programlama dilinde “List” koleksiyonunu ve metotlarını ele alacağız. Bunların dışında, insert DML deyimini kullanarak, uygulamalar bölümündeki listeyi kullanarak Salesforce nesnelerine verilerin nasıl ekleneceğini de ele alacağız.

  1. Salesforce ile tanışın
  2. tepe noktası
  3. Liste ve Yöntemleri
  4. Başvuruları Listele

Salesforce ile tanışın

Bildiğimiz gibi Salesforce, web tabanlı bir şirket ve yazılımı hizmet olarak sunan OneCRM Platformudur. Salesforce, müşteri ilişkilerini sürdürerek üretkenliğini günden güne artırıyor. Salesforce'a verileri içinde depolayan ve bize daha iyi bir şekilde manipülasyon sağlayan bir bulut diyebiliriz. Diğer bulut platformları gibi Salesforce da bize 'Apex' olarak bilinen müşterilerle ve satış ekibiyle kolayca iletişim kuran bir dil sunuyor. Önce Apex hakkında konuşalım.







tepe noktası

Apex, güçlü bir şekilde yazılan ve Nesne Yönelimli Kavramları destekleyen programlama dilidir. Sözdizimi Java'ya daha yakındır ve koşullu ifadeleri, kontrol yapılarını ve Java'ya benzer diğer değişkenleri ve veri türlerini destekler. Apex ayrıca SQL gibi saklı yordamları da korur. Üç koleksiyonu destekler - 'Liste', 'Harita' ve 'Küme'.



Liste ve Yöntemleri

Temel olarak “Liste”, diğer programlama dillerindeki bir diziye benzeyen ve öğeleri/öğeleri sıralı bir şekilde depolayan bir koleksiyondur. Ayrıca 'Hesap', 'İlgili Kişi', 'Fırsat' ve 'Diğer Özel' nesneler gibi Salesforce nesnelerini (sObjects) depolayabilir. İç içe geçmiş listelerin ve bir listedeki öğelerin çoğaltılması mümkün olabilir.



“Liste” ile işe başlamadan önce kodlarımızın çalışabilmesi için bir kod ortamına ihtiyacımız var.





Bunun için tarayıcınıza aşağıdaki URL'yi yazarak Salesforce Hesabına giriş yapalım: https://login.salesforce.com/ . (Hesabınız yoksa aynı linki açarak kayıt olabilirsiniz)

Adımlar:

1. Profilinizin sağına gidin. Dişli simgesine tıklayın.



2. 'Hizmet Kurulumu'nun altındaki 'Geliştirici Konsolu'na tıklayın. Hemen “Konsol” diyebileceğimiz yeni bir pencere açılıyor.

3. 'Hata Ayıklama'ya tıklayın ve 'Anonim Yürütme Penceresini Aç'ı seçin.

4. Anında Apex sınıflarını ve ifadelerini yürütmek için kullanılan bir düzenleyici açılacaktır.

5. Kodu yazdıktan sonra çalıştırmak istediğimiz Apex deyimlerini seçip “Execute Highlighted” butonuna tıklayabiliriz. Tüm kodun yürütülmesini istiyorsanız, 'Yürüt' düğmesine tıklamanız yeterlidir.

6. Günlüğü açmak için 'Günlüğü Aç' onay kutusunu işaretlediğinizden emin olun. Günlüğü yalnızca seçerek görebilirsiniz.

Aşağıdaki komutu kullanarak bir “Merhaba” mesajı görüntüleyelim:

system.debug('Merhaba Linuxhint');

7. Son olarak, yalnızca geçerli kod çıktısını görmek için 'Yalnızca Hata Ayıklama' seçeneğini işaretleyin.

Liste Oluşturma

Nesne adı ile birlikte veri türü belirtilerek “Liste” oluşturulabilir. Burada, onu oluşturmak için new anahtar kelimesi kullanılır. Öğeleri oluşturma sırasında geçirmek isteğe bağlı olabilir.

Sözdizimi:

List list_object = new List(){elements…};

1. Liste.add()

Bu yöntemi kullanarak, liste nesnesine her seferinde bir öğeyi doğrudan ekleyebiliriz.

Dizini birinci parametre olarak ve eklenecek bir öğeyi ikinci parametre olarak belirterek belirli bir dizin konumuna bir öğe eklemek de mümkün olabilir.

Sözdizimi:

list_object.add(öğe)

list_object.add(dizin_konumu,öğe)

Örnek:

3 maddelik bir liste oluşturalım ve bazı maddeleri tek tek add() metodunu kullanarak ekleyelim.

// Bir Liste Oluştur - 3 öğeli mobilya.

List mobilya = new List{'Masa','Sandalyeler','Diğerleri'};

system.debug('Gerçek Öğeler: ');

system.debug(mobilya);



// add() yöntemini kullanarak 3 öğeyi birer birer ekleyin.

mobilya.add('ahşap');

mobilya.add(2,'tabak');

mobilya.add(2,'Yataklar');



system.debug('Son Öğeler: ');

system.debug(mobilya);

Çıktı:

İlk önce “ahşap” ekliyoruz. Ardından, ikinci indeks konumuna “plakalar” ekliyoruz. İkinci konuma da “Yataklar” ekliyoruz. Son olarak, liste öğeleri şu sırayla tutar: [Masa, Sandalyeler, Yataklar, tabaklar, Diğerleri, ahşap].

2. List.addAll()

Önceki yöntem, liste nesnesine her seferinde yalnızca bir öğe ekler. Bu yöntemi kullanarak, bir listeden birden çok öğeyi yeni listeye ekleyebiliriz. İlk parametre olarak indeksi belirterek ve ikinci parametre olarak bir eleman ekleyerek belirli bir indeks konumuna bir eleman eklemek de mümkün olabilir. Her iki listenin de aynı türde olduğundan emin olun.

Sözdizimi:

list_object.addAll(list_object_another)

Burada, list_object bizim asıl listemizdir ve list_object_another, list_object'e eklenecek bazı öğeleri içeren listedir.

Örnek:

İlk örneğimize benzer şekilde, “furniture2” adlı başka bir liste oluşturun ve ilk liste olan “mobilya1” i geçin.

// Bir Liste Oluştur - 3 öğeli mobilya1.

List mobilya1 = new List{'Masa','Sandalyeler','Diğerleri'};

system.debug('Liste-1: ');

system.debug(mobilya1);



// Boş Liste Oluştur - mobilya2.

Liste mobilya2 =yeni Liste();

system.debug('Gerçek Liste-2: ');

system.debug(mobilya2);



// addAll() kullanarak mobilya1 öğelerini mobilya2'ye ekleyin.

mobilya2.addAll(mobilya1);

system.debug('Son Liste-2: ');

system.debug(mobilya2);

Çıktı:

İlk liste (mobilya1) üç öğe tutarken, ikinci liste (mobilya2) boştur. 'Mobilya1'den 'mobilya2'ye kadar tüm öğeleri ekliyoruz. Son olarak liste-2 (mobilya2), “mobilya1” ile aynı olan 3 öğeyi tutar.

3. Liste.size()

Bazı senaryolarda, Apex listesinde bulunan toplam öğeleri bilmemiz gerekir. Size(), listede bulunan toplam öğeleri döndüren yöntemdir. Bu yöntem için parametrelere gerek yoktur.

Sözdizimi:

list_object.size()

Örnek:

Bazı sipariş miktarlarını içeren bir Apex listesi oluşturun ve boyutu döndürün.

// Bir Liste Oluştur - 5 miktar için fiyat.

List siparişleri = new List {900,98,98,600,65};

system.debug('Liste: ');

system.debug(siparişler);



// Listenin boyutunu döndürür.

system.debug('Toplam Siparişler: ');

system.debug(orders.size());

Çıktı:

Listemizde 5 sipariş var.

4. List.get()

Listeden öğelere erişmek çok önemlidir. Bunu yapmak için Apex listesi, öğeyi dizin konumuna göre döndüren get() yöntemini destekler. Dizin oluşturma 0'dan başlar. Dizin yoksa aşağıdaki hatayı verir:

Sözdizimi:

list_object.get(index_position)

Örnek:

Bazı sipariş miktarlarıyla bir Apex listesi oluşturun ve bazı öğeleri döndürün.

// Bir Liste Oluştur - 5 miktar için fiyat.

List siparişleri = new List {900,98,98,600,65};

system.debug('Liste: ');

system.debug(siparişler);



// get() yöntemi

system.debug('Birinci Sıra: '+ Orders.get(0));

system.debug('Dördüncü Düzen: '+orders.get(3));

Çıktı:

Listemizde 5 sipariş var. Önce index-0 yani 900'de olan elemana, sonra index-3 yani 600'de olan elemana ulaşıyoruz.

5. List.isEmpty()

Listenin boş olup olmadığını isEmpty() metodunu kullanarak kontrol edebiliriz. Apex listesi boşsa True döndürülür. Aksi takdirde false döndürülür. size() yöntemine benzer şekilde, herhangi bir parametre almaz.

Sözdizimi:

list_object.isEmpty()

Örnek:

Boş bir liste oluşturarak listenin boş olup olmadığını kontrol edin.

// Bir Liste Oluştur - 5 miktar için fiyat.

List siparişleri = new List ();



// isEmpty() yöntemi

system.debug('Liste Boş mu: '+orders.isEmpty());

Çıktı:

Liste boş olduğundan true döndürülür.

6. Liste.temizle()

Bir Apex listesindeki tüm öğeler clear() yöntemi kullanılarak tek seferde silinebilir. Herhangi bir parametre almaz.

Sözdizimi:

list_object.clear()

Örnek:

5 öğrenci adına sahip tüm öğeleri listeden kaldırın.

// Bir Liste Oluştur - öğrenciler

List öğrenciler = new List{'sravan','ram','raghu','raby','honey'};

system.debug('Liste : '+ öğrenciler);



// temizle() yöntemi

öğrenciler.temizle();

system.debug('Liste : '+ öğrenciler);

Çıktı:

clear() yöntemini uyguladıktan sonra 'öğrenciler' listesi boştur.

Başvuruları Listele

1. nesne

Verileri 'Account', 'Contact' vb. gibi Salesforce standart nesnelerine ekleyebiliriz. Bu senaryoda, liste veri türü yerine sObject adını vermemiz gerekir.

Bu örneğe bakalım: Burada sObject tipinde “Account” olarak bir liste oluşturuyoruz. İsmini ekleyip listeye ekliyoruz.

2. DML İşlemi

Listeleri, Salesforce verilerine eklenen kayıtları depolamak için kullanabiliriz. Insert ifadeleri ile kayıtları/kayıtları Salesforce veri tabanına ekleyebiliriz.

Aşağıdaki koda bakın. Buraya sadece bir insert ifadesi ekliyoruz:

Kaydın oluşturulup oluşturulmadığını kontrol edelim.

  1. 'Uygulama Başlatıcı'ya gidin ve 'Hesaplar'ı arayın.
  2. “Hesap Kaydı” detay sayfası açılacaktır. Şimdi, “Linuxhint” hesabını arayın.
  3. 'Hesap Adı' üzerine tıklayın. Ayrıntıları burada görebilirsiniz.

Çözüm

Artık rehberimizin sonuna geldik. Bu kılavuzun bir parçası olarak, Salesforce platformunu ve Apex'i ele aldık. List, Apex programlama dili tarafından desteklenen koleksiyonlardan biridir. Ardından “List” ile desteklenen metotları örnekler ve sözdizimi ile birlikte öğrendik. “Liste” toplama uygulamalarını örneklerle tartışarak bu kılavuzu tamamladık.