சேல்ஸ்ஃபோர்ஸ் அபெக்ஸ் - வரைபடம்

Celshpors Apeks Varaipatam



சேல்ஸ்ஃபோர்ஸ் அபெக்ஸ் வரைபடம் என்பது ஒரு தரவு கட்டமைப்பாகும், இது முக்கியமாக தூண்டுதல் சூழ்நிலைகளில் பயன்படுத்தப்படுகிறது மற்றும் ஒரு பட்டியலைப் போல சேல்ஸ்ஃபோர்ஸ் தரவுத்தளத்தில் ஒரு நேரத்தில் அதிக தரவை ஏற்ற உதவுகிறது. ஆனால் இது {key:value} ஜோடி வடிவத்தில் தரவைச் சேமித்து ஒழுங்கமைக்கிறது. அபெக்ஸ் நிரலாக்க மொழி மற்றும் அதன் முறைகளில் வரைபட சேகரிப்பு பற்றி விவாதிப்போம். இங்கே, அனைத்து எடுத்துக்காட்டுகளுக்கும் Salesforce இல் கணக்கு நிலையான பொருளைப் பயன்படுத்துவோம். இந்த டுடோரியலில் விரைவாக நுழைவோம்.

வரைபடம்

வரைபடம் {key:value} ஜோடித் தரவை உள்ளீடாக எடுத்து சேல்ஸ்ஃபோர்ஸ் தரநிலை அல்லது தனிப்பயன் பொருள்களில் சேமிக்கிறது. இது sobject ஐ முக்கிய அல்லது மதிப்பாக எடுத்துக்கொள்ளலாம்.







வரைபடம் உருவாக்கம்

பொருளின் பெயருடன் விசை மற்றும் மதிப்பின் தரவு வகைகளைக் குறிப்பிடுவதன் மூலம், வரைபடத்தை உருவாக்க முடியும். இங்கே, அதை உருவாக்க ஒரு புதிய முக்கிய சொல் பயன்படுத்தப்படுகிறது. உருவாக்கத்தின் போது உறுப்புகளை அனுப்புவது விருப்பமாக இருக்கலாம்.



வெற்று வரைபட தொடரியல்:

வரைபடம் map_obj = புதிய வரைபடம்():

பொதுவான தொடரியல்:

வரைபடம் map_obj = புதிய வரைபடம்{

விசை => மதிப்பு,....};

பொருள் தொடரியல்:

வரைபடம் map_obj = புதிய வரைபடம்{

விசை => மதிப்பு,....};

இங்கே, sobject ஒரு நிலையான அல்லது விருப்பப் பொருளாக இருக்கலாம். இந்த முழுக் கட்டுரையிலும், 'கணக்கு' பொருளுடன் வரைபடத்தை மட்டுமே கையாள்வோம்.



அபெக்ஸ் 'வரைபடம்' சேகரிப்பு மூலம் ஆதரிக்கப்படும் முறைகளை ஒவ்வொன்றாகப் பார்ப்போம்.





சுற்றுச்சூழல் அமைப்பு

1. சேல்ஸ்ஃபோர்ஸில் விரைவாக உள்நுழைந்து கியர் ஐகானைக் கிளிக் செய்வதன் மூலம் 'டெவலப்பர் கன்சோலை' திறக்கவும்.



2. பின்னர், 'Debug' மற்றும் 'Open Execute Anonymous Window' என்பதைக் கிளிக் செய்வதன் மூலம் 'அநாமதேய சாளரத்தை' திறக்கவும்.

பொதுவான உதாரணம்:

முதலில், இரண்டு பாடங்களைக் கொண்ட வரைபடத்தை உருவாக்குவதன் மூலம் பொதுவான வரைபடத்தை உருவாக்குவதைப் பார்ப்போம்: 'subject_id' இது ஒரு முக்கிய மற்றும் 'மதிப்பு' பொருளின் பெயராக செயல்படுகிறது.

Map programming=புதிய வரைபடம் {1=> 'Linux',2=> 'Python'};

system.debug(நிரலாக்கம்);

வெளியீடு:

  1. 'செயல்படுத்து' என்பதைக் கிளிக் செய்யவும்.
  2. 'பிழைத்திருத்த மட்டும்' விருப்பத்தை சரிபார்க்கவும். 'செயல்முறைப் பதிவில்' வெளியீட்டைக் காணலாம்.

வரைபட முறைகள்

முதலில், 'கணக்கு' பொருளிலிருந்து ஒரு வரைபடத்தை உருவாக்குகிறோம். பெயர்களில் ஒன்றன் பின் ஒன்றாக மூன்று கணக்குகளை உருவாக்குகிறோம். பின்னர், விசை மற்றும் மதிப்புடன் ஒரு வரைபடத்தை அறிவிக்கிறோம் சில மதிப்புகளை வழங்குவதன் மூலம் முந்தைய மூன்று கணக்குகளை டைப் செய்து வரைபடத்திற்கு அனுப்பவும்.

// பெயருடன் 3 கணக்குகளை உருவாக்கவும்

கணக்கு1 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

கணக்கு கணக்கு2 = புதிய கணக்கு(பெயர்='சேல்ஸ்ஃபோர்ஸ்');

கணக்கு கணக்கு3 = புதிய கணக்கு(பெயர்='பைதான்');

// மேலே உள்ள கணக்குகளை map_obj க்கு விசைகளாக சேர்க்கவும்

வரைபடம் map_obj = புதிய வரைபடம்{

கணக்கு1 => 1000, கணக்கு2 => 2000, கணக்கு3 => 3000};

System.debug(map_obj);

வெளியீடு:

“map_obj” மூன்று கணக்குகளை சேமித்து வைத்திருப்பதை நீங்கள் பார்க்கலாம்.

1. Map.values()

கொடுக்கப்பட்ட வரைபடத்தில் இருந்து மதிப்புகளை மட்டும் திரும்ப, மதிப்புகள்() முறையைப் பயன்படுத்தலாம். இது எந்த அளவுருக்களையும் எடுக்காது. இது கமாவால் பிரிக்கப்பட்ட மதிப்புகளின் பட்டியலை வழங்குகிறது.

தொடரியல்:

map_object.values()

உதாரணமாக:

முந்தைய வரைபடத்திலிருந்து அனைத்து மதிப்புகளையும் திரும்பப் பெறுவோம். முந்தைய உதாரணக் குறியீட்டை நீங்கள் இயக்க வேண்டும் என்பதை உறுதிப்படுத்தவும் (மூன்று கணக்குகளுடன் வரைபடத்தை உருவாக்கவும்). இல்லையெனில், நீங்கள் ஒரு பிழையைப் பெறுவீர்கள். குறியீடு கன்சோலிலும் இருக்க வேண்டும்.

// மதிப்புகளைப் பயன்படுத்தி அனைத்து விசைகளுக்கும் மதிப்புகளை வழங்கவும்()

System.debug(map_obj.values());

வெளியீடு:

map_obj இல் மூன்று முக்கிய:மதிப்பு ஜோடிகள் மட்டுமே உள்ளன. மதிப்புகள்: 1000, 2000 மற்றும் 3000.

2. Map.keySet()

வரைபடப் பொருளில் விசைகள் உள்ளன. மதிப்புகளைப் போலவே (), இந்த முறைக்கு எந்த அளவுருவையும் அனுப்ப வேண்டிய அவசியமில்லை.

தொடரியல்:

map_object.keySet()

உதாரணமாக:

முந்தைய வரைபடத்திலிருந்து அனைத்து விசைகளையும் திரும்பப் பெறுவோம். முந்தைய உதாரணக் குறியீட்டை (மூன்று கணக்குகளுடன் வரைபடத்தை உருவாக்கவும்) செயல்படுத்துவதை உறுதிப்படுத்திக் கொள்ளுங்கள். இல்லையெனில், நீங்கள் ஒரு பிழையைப் பெறுவீர்கள். குறியீடு கன்சோலிலும் இருக்க வேண்டும்.

// KeySet() ஐப் பயன்படுத்தி அனைத்து விசைகளையும் திரும்பவும்

System.debug(map_obj.keySet());

வெளியீடு:

map_obj இல் மூன்று முக்கிய:மதிப்பு ஜோடிகள் மட்டுமே உள்ளன. விசைகள்: {கணக்கு:{பெயர்=லினக்ஸ் குறிப்பு}, கணக்கு:{பெயர்=பைதான்}, மற்றும் கணக்கு:{பெயர்=சேல்ஸ்ஃபோர்ஸ்}.

3. Map.size()

சில சூழ்நிலைகளில், அபெக்ஸ் வரைபடத்தில் இருக்கும் மொத்த உருப்படிகளின் (முக்கிய:மதிப்பு) ஜோடிகளை நாம் தெரிந்து கொள்ள வேண்டும். Size() என்பது map_object இல் இருக்கும் மொத்த (முக்கிய:மதிப்பு) ஜோடிகளை வழங்கும் முறையாகும். இந்த முறைக்கு அளவுருக்கள் தேவையில்லை.

தொடரியல்:

map_object.size()

உதாரணமாக:

முந்தைய வரைபடப் பொருளின் அளவைத் திரும்பவும்.

// அளவு()ஐப் பயன்படுத்தி மொத்த ஜோடிகளின் எண்ணிக்கையை வழங்கவும்

System.debug(map_obj.size());

வெளியீடு:

3 ஜோடிகள் மட்டுமே இருப்பதால், திரும்பிய அளவு() 3 ஆகும்.

4. Map.get()

விசையைப் பயன்படுத்தி வரைபடத்திலிருந்து மதிப்புகளை அணுகுவது get() முறையைப் பயன்படுத்தி செய்யப்படுகிறது. இதைச் செய்ய, விசையை get() முறைக்கு அளவுருவாக அனுப்ப வேண்டும். தெரியாத விசை அனுப்பப்பட்டால், அது ஒரு பிழையை வழங்குகிறது.

தொடரியல்:

map_object.get(விசை)

உதாரணமாக:

விசை-2 மற்றும் விசை-1 இன் மதிப்புகளைத் தனித்தனியாக வழங்கவும்.

// இரண்டாவது விசையின் மதிப்பைப் பெறவும்

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

// முதல் விசையின் மதிப்பைப் பெறவும்

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

வெளியீடு:

இங்கே, 2000 என்பது “சேல்ஸ்ஃபோர்ஸ்” விசையின் மதிப்பு மற்றும் 1000 என்பது “லினக்ஸ் குறிப்பு” விசையின் மதிப்பு.

5. Map.clear()

அபெக்ஸ் வரைபட சேகரிப்பில் உள்ள அனைத்து ஜோடிகளையும் தெளிவான() முறையைப் பயன்படுத்தி ஒரே நேரத்தில் நீக்கலாம். இது எந்த அளவுருக்களையும் எடுக்காது.

தொடரியல்:

map_object.clear()

உதாரணமாக:

முந்தைய 'map_obj' இல் உள்ள ஜோடிகளை அகற்றவும்.

//தெளிவதற்கு முன்()

System.debug(map_obj);

// தெளிவான()ஐப் பயன்படுத்தி அனைத்து ஜோடிகளையும் அகற்று

map_obj.clear();

//தெளிவான பிறகு()

System.debug(map_obj);

வெளியீடு:

முன்பு, “map_obj” இல் 3 முக்கிய மதிப்பு ஜோடிகள் இருந்தன. clear() முறையைப் பயன்படுத்திய பிறகு, 3 அனைத்தும் நீக்கப்படும்.

6. Map.equals()

சமம்() முறையைப் பயன்படுத்தி இரண்டு வரைபடப் பொருட்களை ஒப்பிடலாம். இரண்டு வரைபடப் பொருட்களிலும் அனைத்து விசைகளும் மதிப்புகளும் ஒரே மாதிரியாக இருந்தால் உண்மையின் பூலியன் மதிப்பு வழங்கப்படும். குறைந்தபட்சம் ஒரு மதிப்பு வித்தியாசமாக இருந்தால் பொய்யின் பூலியன் மதிப்பு வழங்கப்படும்.

தொடரியல்:

map_object1.equals(map_object2)

உதாரணமாக:

ஒரு விசையுடன் மூன்று வரைபடப் பொருட்களை உருவாக்குவோம்: மதிப்பு ஜோடி, ஒவ்வொன்றும் 'கணக்கு' பொருளைப் பொறுத்து. இந்த பொருட்களை அவற்றுடன் ஒப்பிடுக.

// கணக்கு-1

கணக்கு1 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

வரைபடம் map_obj1 = புதிய வரைபடம்{

கணக்கு1 => 1000};

System.debug('வரைபடம் - 1:' + map_obj1);

// கணக்கு-2

கணக்கு கணக்கு2 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

வரைபடம் map_obj2 = புதிய வரைபடம்{

கணக்கு2 => 1000};

System.debug('வரைபடம் - 2:' + map_obj1);

// கணக்கு-3

கணக்கு கணக்கு3 = புதிய கணக்கு(பெயர்='பைதான்');

Map map_obj3 = புதிய வரைபடம்{

கணக்கு3 => 2000};

System.debug('வரைபடம் - 3:' + map_obj3);

// சமம்()

System.debug('வரைபடம் 1 & வரைபடம் 2 சமம்: '+ map_obj1.equals(map_obj2));

System.debug('வரைபடம் 1 & வரைபடம் 3 சமம்: '+ map_obj1.equals(map_obj3));

வெளியீடு:

இரண்டு பொருள்களிலும் விசைகளும் மதிப்புகளும் ஒரே மாதிரியாக இருப்பதால் முதல் மற்றும் இரண்டாவது வரைபடப் பொருள்கள் சமமாக இருக்கும். விசைகளும் மதிப்புகளும் வேறுபட்டிருப்பதால் முதல் மற்றும் மூன்றாவது வரைபடப் பொருள்கள் சமமாக இல்லை.

7. Map.isEmpty()

isEmpty() முறையைப் பயன்படுத்தி வரைபடம் காலியாக உள்ளதா அல்லது இல்லையா என்பதை நாம் சரிபார்க்கலாம். Apex வரைபட சேகரிப்பு காலியாக இருந்தால் True என வழங்கப்படும். இல்லையெனில், தவறானது திரும்பப் பெறப்படும். அளவு () முறையைப் போலவே, இது எந்த அளவுருவையும் எடுக்காது.

தொடரியல்:

map_object.isEmpty()

உதாரணமாக:

“கணக்கு” ​​தொடர்பான இரண்டு வரைபடப் பொருட்களை உருவாக்கி, இவை இரண்டும் காலியாக உள்ளதா இல்லையா என்பதைச் சரிபார்ப்போம்.

// கணக்கு-1

கணக்கு1 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

வரைபடம் map_obj1 = புதிய வரைபடம்{

கணக்கு1 => 1000};



// கணக்கு-2

வரைபடம் map_obj2 = புதிய வரைபடம்();

// காலியாக உள்ளது()

System.debug('வரைபடம்-1 காலியாக உள்ளது: '+map_obj1.isEmpty());

System.debug('வரைபடம்-2 காலியாக உள்ளது: '+map_obj2.isEmpty());

வெளியீடு:

முதல் வரைபடம் காலியாக இல்லை, ஏனெனில் அதில் ஒரு முக்கிய மதிப்பு ஜோடி உள்ளது. இரண்டாவது வரைபடம் எதுவும் இல்லாததால் அது காலியாக உள்ளது.

8. Map.remove()

அபெக்ஸ் வரைபட சேகரிப்பில் உள்ள நீக்கம்() முறையானது ஒரு குறிப்பிட்ட விசை-மதிப்பு ஜோடியை ஒரு அளவுருவாக குறிப்பிடப்பட்டுள்ள விசையின் அடிப்படையில் அகற்ற பயன்படுகிறது. விசை இல்லை என்றால், ஒரு பிழை எழுப்பப்படுகிறது.

தொடரியல்:

map_object.remove(விசை)

உதாரணமாக:

இரண்டு உருப்படிகளுடன் ஒரு வரைபடத்தை உருவாக்கி, முதல் உருப்படியை அகற்றுவோம்.

கணக்கு1 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

கணக்கு கணக்கு2 = புதிய கணக்கு(பெயர்='பைதான்');

வரைபடம் map_obj = புதிய வரைபடம்{

கணக்கு1 => 1000, கணக்கு2 => 4000};

System.debug('Existing Map'+ map_obj);

//நீக்கு()

map_obj.remove(கணக்கு1);

System.debug('முதல் உருப்படியை அகற்றிய பிறகு:'+map_obj);

வெளியீடு:

வரைபடத்திலிருந்து முதல் உருப்படியை அகற்றிய பிறகு, ஒரே ஒரு உருப்படி மட்டுமே உள்ளது - {கணக்கு:{பெயர்=பைதான்}=4000}.

9. வரைபடம்.புட்()

இந்த முறையைப் பயன்படுத்தி, ஒரு நேரத்தில் ஒரு பொருளை வரைபடப் பொருளில் நேரடியாகச் சேர்க்கலாம். இது இரண்டு அளவுருக்களை ஏற்றுக்கொள்கிறது: 'விசை' என்பது முதல் அளவுரு, 'மதிப்பு' என்பது இரண்டாவது அளவுரு.

தொடரியல்:

map_object.put(விசை,மதிப்பு)

உதாரணமாக:

ஒரு முக்கிய மதிப்பு ஜோடியுடன் வரைபடத்தை உருவாக்குவோம். பின்னர், 'கணக்கு 2' ஐச் செருகுவதற்கு 'புட்' முறையைப் பயன்படுத்துகிறோம்.

// கணக்கு-1

கணக்கு1 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

வரைபடம் map_obj1 = புதிய வரைபடம்{

கணக்கு1 => 1000};

System.debug('உண்மையான வரைபடம்: '+map_obj1);

// கணக்கு-2

கணக்கு கணக்கு2 = புதிய கணக்கு(பெயர்='பைதான்');

// போட ()

map_obj1.put(கணக்கு2,2000);

System.debug('இறுதி வரைபடம்: '+map_obj1);

வெளியீடு:

முன்பு, வரைபடத்தில் ஒரே ஒரு விசை மதிப்பு ஜோடி மட்டுமே இருந்தது, அது {கணக்கு:{பெயர்=லினக்ஸ் குறிப்பு}=1000}. “account2” ஐச் சேர்த்த பிறகு, இறுதி வரைபடத்தில் இரண்டு முக்கிய மதிப்பு ஜோடிகள் உள்ளன, அவை {Account:{Name=Linux குறிப்பு}=1000 மற்றும் கணக்கு:{Name=Python}=2000}.

10. Map.putAll()

இந்த முறையைப் பயன்படுத்தி, ஒரே நேரத்தில் வரைபடப் பொருளில் ஒற்றை அல்லது பல உருப்படிகளை நேரடியாகச் சேர்க்கலாம். இது வரைபட சேகரிப்பு பொருளை அளவுருவாக எடுத்துக்கொள்கிறது.

தொடரியல்:

map_object1.putAll(map_object2)

உதாரணமாக:

இரண்டு முக்கிய மதிப்பு ஜோடிகளுடன் ஒரு வரைபடத்தை உருவாக்கி, உருப்படிகள் இல்லாமல் மீண்டும் ஒரு வெற்று வரைபடப் பொருளை உருவாக்குவோம். முதல் வரைபடப் பொருளில் உள்ள உருப்படிகளை இரண்டாவது வரைபடப் பொருளுடன் சேர்க்க putAll() முறையைப் பயன்படுத்தவும்.

கணக்கு1 = புதிய கணக்கு(பெயர்='லினக்ஸ் குறிப்பு');

கணக்கு கணக்கு2 = புதிய கணக்கு(பெயர்='பைதான்');

வரைபடம் map_obj1 = புதிய வரைபடம்{

கணக்கு1 => 1000, கணக்கு2=> 2000};

System.debug(map_obj1);

வரைபடம் map_obj2 = புதிய வரைபடம்();

//putAll()

map_obj2.putAll(map_obj1);

System.debug(map_obj2);

வெளியீடு:

முடிவுரை

வரைபடம் என்பது ஒரு தரவு கட்டமைப்பாகும், இது முக்கியமாக தூண்டுதல் சூழ்நிலைகளில் பயன்படுத்தப்படுகிறது மற்றும் ஒரு பட்டியலைப் போன்ற சேல்ஸ்ஃபோர்ஸ் தரவுத்தளத்தில் ஒரு நேரத்தில் அதிக தரவை ஏற்ற உதவுகிறது. வரைபடத்தில் உருப்படிகளைச் சேர்க்க எங்களிடம் இரண்டு விருப்பங்கள் உள்ளன: put() மற்றும் putAll(). அபெக்ஸ் வரைபட சேகரிப்பில் இருந்து குறிப்பிட்ட உருப்படியை அகற்ற நீக்க() முறை பயன்படுத்தப்படுகிறது. அனைத்து பொருட்களையும் நீக்க தெளிவான() முறை பயன்படுத்தப்படுகிறது. மேலும், மதிப்புகள்() மற்றும் கீசெட்() முறைகளைப் பயன்படுத்தி மதிப்புகள் மற்றும் விசைகளை எவ்வாறு திரும்பப் பெறுவது என்பதை நாங்கள் கற்றுக்கொண்டோம்.