Salesforce Apex – Hartă

Salesforce Apex Harta



Harta Salesforce Apex este o structură de date care este utilizată în principal în scenariile de declanșare și ajută la încărcarea mai multor date simultan în baza de date Salesforce, ca o listă. Dar stochează și organizează datele în formatul de pereche {key:value}. Vom discuta despre colecția de hărți în limbajul de programare Apex și despre metodele acesteia. Aici, vom folosi obiectul standard Cont din Salesforce pentru toate exemplele. Să ne aprofundăm rapid în acest tutorial.

Hartă

Harta preia datele perechii {key:value} ca intrare și le stochează în obiectele standard sau personalizate Salesforce. Poate lua sObject ca cheie sau valoare.







Creare hartă

Prin specificarea tipurilor de date ale cheii și valorii împreună cu numele obiectului, harta poate fi creată. Aici, un nou cuvânt cheie este folosit pentru a-l crea. Poate fi opțional să treceți elementele în timpul creării.



Sintaxă de hartă goală:

Hartă map_obj = hartă nouă():

Sintaxă generică:

Hartă map_obj = hartă nouă{

Cheie => valoare,....};

Sintaxa sObject:

Map map_obj = new Map{

Cheie => valoare,....};

Aici, sObject poate fi un obiect standard sau personalizat. În întregul articol, ne vom ocupa doar de harta cu obiectul „Cont”.



Să vedem metodele care sunt acceptate de colecția de „hărți” Apex una câte una.





Configurarea mediului

1. Conectați-vă rapid la Salesforce și deschideți „Consola pentru dezvoltatori” făcând clic pe pictograma roată.



2. Apoi, deschideți „Ferestrea anonimă” făcând clic pe „Depanare” și „Deschideți o fereastră de executare anonimă”.

Exemplu generic:

În primul rând, vom vedea crearea hărții generice prin crearea unei hărți cu două subiecte: „subject_id” care acționează ca o cheie și „valoare” ca nume de subiect.

Map programing=new Map {1=> 'Linux',2=> 'Python'};

system.debug(programare);

Ieșire:

  1. Faceți clic pe „Execute”.
  2. Verificați opțiunea „Numai depanare”. Puteți vedea rezultatul în „Jurnalul de execuție”.

Metode de hartă

Mai întâi, creăm o hartă din obiectul „Cont”. Creăm trei conturi cu nume unul câte unul. Apoi, declarăm o hartă cu cheia și valoarea ca tastați și treceți pe hartă cele trei conturi anterioare furnizând niște valori.

// Creați 3 conturi cu Nume

Account account1 = cont nou (Nume='Linux Hint');

cont cont2 = cont nou (Nume='Salesforce');

cont cont3 = cont nou (Nume='Python');

// Adăugați conturile de mai sus ca chei la map_obj

Hartă map_obj = nou Hartă{

cont1 => 1000,cont2 => 2000,cont3 => 3000};

System.debug(map_obj);

Ieșire:

Puteți vedea că „map_obj” stochează trei conturi.

1. Map.values()

Pentru a returna numai valorile din harta dată, putem folosi metoda values(). Nu va lua niciun parametru. Pur și simplu returnează lista de valori separate prin virgulă.

Sintaxă:

map_object.values()

Exemplu:

Să returnăm toate valorile de pe harta anterioară. Asigurați-vă că trebuie să executați exemplul de cod anterior (creați o hartă cu trei conturi). În caz contrar, veți primi o eroare. Codul ar trebui să existe și în consolă.

// Returnează valori pentru toate cheile folosind values()

System.debug(map_obj.values());

Ieșire:

Există doar trei perechi cheie:valoare în map_obj. Valorile sunt: ​​1000, 2000 și 3000.

2. Map.keySet()

Returnează cheile sunt prezente în obiectul hartă. Similar cu values(), nu este nevoie să treceți niciun parametru acestei metode.

Sintaxă:

map_object.keySet()

Exemplu:

Să returnăm toate cheile de pe harta anterioară. Asigurați-vă că executați exemplul de cod anterior (creați o hartă cu trei conturi). În caz contrar, veți primi o eroare. Codul ar trebui să existe și în consolă.

// Returnează toate cheile folosind keySet()

System.debug(map_obj.keySet());

Ieșire:

Există doar trei perechi cheie:valoare în map_obj. Cheile sunt: ​​{Account:{Name=Linux Hint}, Account:{Name=Python} și Account:{Name=Salesforce}.

3. Mărimea hărții()

În unele scenarii, trebuie să cunoaștem perechile totale de articole (cheie:valoare) care sunt prezente în harta Apex. Size() este metoda care returnează perechile totale (cheie:valoare) care există în map_object. Parametrii nu sunt necesari pentru această metodă.

Sintaxă:

map_object.size()

Exemplu:

Returnează dimensiunea obiectului de hartă anterior.

// Returnează numărul total de perechi folosind size()

System.debug(map_obj.size());

Ieșire:

Deoarece există doar 3 perechi, dimensiunea returnată () este 3.

4. Map.get()

Accesarea valorilor din hartă folosind cheia se face folosind metoda get(). Pentru a face acest lucru, trebuie să transmitem cheia ca parametru la metoda get(). Dacă se transmite o cheie necunoscută, aceasta returnează o eroare.

Sintaxă:

map_object.get(cheie)

Exemplu:

Returnați separat valorile tastei-2 și tastei-1.

// obținem valoarea celei de-a doua chei

System.debug(map_obj.get(account2));

// obțineți valoarea primei chei

System.debug(map_obj.get(account1));

Ieșire:

Aici, 2000 este valoarea cheii „Salesforce” și 1000 este valoarea cheii „Linux Hint”.

5. Map.clear()

Toate perechile dintr-o colecție de hărți Apex pot fi șterse simultan folosind metoda clear(). Nu va lua niciun parametru.

Sintaxă:

map_object.clear()

Exemplu:

Eliminați perechile din „map_obj” anterior.

//Înainte de a șterge()

System.debug(map_obj);

// Eliminați toate perechile folosind clear()

map_obj.clear();

//După ștergere()

System.debug(map_obj);

Ieșire:

Anterior, există 3 perechi cheie-valoare în „map_obj”. După aplicarea metodei clear(), toate cele 3 sunt șterse.

6. Map.equals()

Putem compara două obiecte hartă folosind metoda equals(). Valoarea booleană true este returnată dacă toate cheile și valorile sunt aceleași în ambele obiecte hartă. În timp ce valoarea booleană false este returnată dacă cel puțin o valoare este diferită.

Sintaxă:

map_object1.equals(map_object2)

Exemplu:

Să creăm trei obiecte hartă cu o pereche cheie:valoare, fiecare în raport cu obiectul „Cont”. Comparați aceste obiecte între ele.

// Contul-1

Account account1 = cont nou (Nume='Linux Hint');

Map map_obj1 = hartă nouă{

cont1 => 1000};

System.debug('Harta - 1:' + map_obj1);

// Contul-2

Cont cont2 = cont nou (Nume='Linux Hint');

Map map_obj2 = hartă nouă{

cont2 => 1000};

System.debug('Harta - 2:' + map_obj1);

// Contul-3

cont cont3 = cont nou (Nume='Python');

Map map_obj3 = hartă nouă{

cont3 => 2000};

System.debug('Harta - 3:' + map_obj3);

// este egal()

System.debug('Harta 1 și Harta 2 sunt egale: '+ map_obj1.equals(map_obj2));

System.debug('Harta 1 și Harta 3 sunt egale: '+ map_obj1.equals(map_obj3));

Ieșire:

Primul și al doilea obiect de hartă sunt egale, deoarece ambele chei și valori sunt aceleași în ambele obiecte. Primul și al treilea obiect de hartă nu sunt egale, deoarece cheile și valorile sunt diferite.

7. Map.isEmpty()

Putem verifica dacă harta este goală sau nu folosind metoda isEmpty(). True este returnat dacă colecția de hărți Apex este goală. În caz contrar, se returnează false. Similar cu metoda size(), nu va lua niciun parametru.

Sintaxă:

map_object.isEmpty()

Exemplu:

Să creăm două obiecte hartă care sunt legate de „Cont” și să verificăm dacă acestea două sunt goale sau nu.

// Contul-1

Account account1 = cont nou (Nume='Linux Hint');

Map map_obj1 = hartă nouă{

cont1 => 1000};



// Contul-2

Map map_obj2 = new Map();

// este gol()

System.debug('Harta-1 este goală: '+map_obj1.isEmpty());

System.debug('Harta-2 este goală: '+map_obj2.isEmpty());

Ieșire:

Prima hartă nu este goală, deoarece conține o pereche cheie-valoare. A doua hartă este goală, deoarece nu conține niciuna.

8. Map.remove()

Metoda remove() din colecția de hărți Apex este utilizată pentru a elimina o anumită pereche cheie-valoare bazată pe cheia care este specificată în ea ca parametru. Dacă cheia nu există, apare o eroare.

Sintaxă:

map_object.remove(cheie)

Exemplu:

Să creăm o hartă cu două elemente și să eliminăm primul element.

Account account1 = cont nou (Nume='Linux Hint');

Cont cont2 = cont nou (Nume='Python');

Hartă map_obj = nou Hartă{

cont1 => 1000,cont2 => 4000};

System.debug('Harta existentă'+ map_obj);

//elimina()

map_obj.remove(account1);

System.debug('După eliminarea primului articol:'+map_obj);

Ieșire:

După eliminarea primului element de pe hartă, există un singur element – ​​{Account:{Name=Python}=4000}.

9. Map.put()

Folosind această metodă, putem adăuga direct câte un element la obiectul hărții la un moment dat. Acceptă doi parametri: „cheie” este primul parametru, în timp ce „valoare” este al doilea parametru.

Sintaxă:

map_object.put(cheie,valoare)

Exemplu:

Să creăm o hartă cu o pereche cheie-valoare. Apoi, folosim metoda „put” pentru a introduce „account2”.

// Contul-1

Account account1 = cont nou (Nume='Linux Hint');

Map map_obj1 = hartă nouă{

cont1 => 1000};

System.debug('Harta actuală: '+map_obj1);

// Contul-2

Cont cont2 = cont nou (Nume='Python');

// a pune()

map_obj1.put(account2,2000);

System.debug('Harta finală: '+map_obj1);

Ieșire:

Anterior, există o singură pereche cheie-valoare în hartă, care este {Account:{Name=Linux Hint}=1000}. După adăugarea „account2”, harta finală conține două perechi cheie-valoare care sunt {Account:{Name=Linux Hint}=1000 și Account:{Name=Python}=2000}.

10. Map.putAll()

Folosind această metodă, putem adăuga direct unul sau mai multe elemente la obiectul hărții simultan. Ia ca parametru un obiect de colecție de hărți.

Sintaxă:

map_object1.putAll(map_object2)

Exemplu:

Să creăm o hartă cu două perechi cheie-valoare și să creăm din nou un obiect de hartă gol, fără elemente. Utilizați metoda putAll() pentru a adăuga elementele care sunt disponibile în primul obiect hartă la al doilea obiect hartă.

Account account1 = cont nou (Nume='Linux Hint');

Cont cont2 = cont nou (Nume='Python');

Map map_obj1 = hartă nouă{

cont1 => 1000, cont2 => 2000};

System.debug(map_obj1);

Map map_obj2 = new Map();

//pune tot()

map_obj2.putAll(map_obj1);

System.debug(map_obj2);

Ieșire:

Concluzie

Harta este o structură de date care este utilizată în principal în scenariile de declanșare și ajută la încărcarea mai multor date simultan în baza de date Salesforce, ca o listă. Avem două opțiuni pentru a adăuga elementele în hartă: folosind put() și putAll(). Metoda remove() este folosită pentru a elimina un anumit element din colecția de hărți Apex. Metoda clear() este folosită pentru a șterge toate elementele. De asemenea, am învățat cum să returnăm valorile și cheile folosind metodele values() și keySet().