سیلز فورس اپیکس - فہرست

Sylz Fwrs Apyks F Rst



Salesforce Apex List ایک ڈیٹا ڈھانچہ ہے جو Salesforce ڈیٹا بیس میں ایک وقت میں مزید ڈیٹا لوڈ کرنے میں مدد کرتا ہے۔ اس مضمون میں، ہم اپیکس پروگرامنگ زبان میں 'لسٹ' کے مجموعہ اور اس کے طریقوں پر تبادلہ خیال کریں گے۔ ان کے علاوہ، ہم اس بات پر بھی تبادلہ خیال کریں گے کہ انسرٹ DML سٹیٹمنٹ کا استعمال کرتے ہوئے ایپلیکیشن سیکشن میں فہرست کا استعمال کرتے ہوئے سیلز فورس آبجیکٹ میں ڈیٹا کیسے داخل کیا جائے۔

  1. سیلز فورس کا تعارف
  2. اپیکس
  3. فہرست اور اس کے طریقے
  4. فہرست ایپلی کیشنز

سیلز فورس کا تعارف

جیسا کہ ہم جانتے ہیں، Salesforce ایک ویب پر مبنی کمپنی اور OneCRM پلیٹ فارم ہے جو سافٹ ویئر کو بطور سروس پیش کرتا ہے۔ روز بروز، سیلز فورس کسٹمر تعلقات کو برقرار رکھ کر اپنی پیداواری صلاحیت میں اضافہ کر رہی ہے۔ ہم سیلز فورس کو ایک کلاؤڈ کہہ سکتے ہیں جو اس میں ڈیٹا کو اسٹور کرتا ہے اور ہمیں بہتر طریقے سے ہیرا پھیری فراہم کرتا ہے۔ دوسرے کلاؤڈ پلیٹ فارمز کی طرح سیلز فورس بھی ہمیں ایک ایسی زبان پیش کرتی ہے جو صارفین اور سیلز فورس کے ساتھ آسانی سے بات چیت کرتی ہے جسے 'Apex' کے نام سے جانا جاتا ہے۔ آئیے پہلے اپیکس کے بارے میں بات کرتے ہیں۔







اپیکس

اپیکس پروگرامنگ لینگویج ہے جو مضبوطی سے ٹائپ کی جاتی ہے اور آبجیکٹ اورینٹڈ تصورات کو سپورٹ کرتی ہے۔ اس کا نحو جاوا کے قریب ہے اور مشروط بیانات، کنٹرول ڈھانچے، اور دیگر متغیرات اور ڈیٹا ٹائپس کو سپورٹ کرتا ہے جو جاوا سے ملتے جلتے ہیں۔ اپیکس ایس کیو ایل جیسے ذخیرہ شدہ طریقہ کار کو بھی برقرار رکھتا ہے۔ یہ تین مجموعوں کی حمایت کرتا ہے - 'فہرست'، 'نقشہ'، اور 'سیٹ'۔



فہرست اور اس کے طریقے

بنیادی طور پر، 'فہرست' ایک مجموعہ ہے جو دیگر پروگرامنگ زبانوں میں ایک صف کی طرح ہے جو عناصر/آئٹمز کو ترتیب وار انداز میں ذخیرہ کرتا ہے۔ یہ Salesforce آبجیکٹ (sObjects) جیسے 'اکاؤنٹ'، 'رابطہ'، 'موقع'، اور 'دیگر حسب ضرورت' اشیاء کو بھی اسٹور کر سکتا ہے۔ یہ ممکن ہو سکتا ہے کہ نیسٹڈ لسٹ اور عناصر کو کسی فہرست میں ڈپلیکیٹ کیا جائے۔



'فہرست' کے ساتھ شروع کرنے سے پہلے، ہمیں ایک کوڈ ماحول کی ضرورت ہے تاکہ ہمارے کوڈز کو عمل میں لایا جائے۔





ایسا کرنے کے لیے، آئیے آپ کے براؤزر میں درج ذیل یو آر ایل کو ٹائپ کرکے سیلز فورس اکاؤنٹ میں لاگ ان کریں: https://login.salesforce.com/ . (اگر آپ کے پاس اکاؤنٹ نہیں ہے تو آپ اسی لنک کو کھول کر رجسٹر کر سکتے ہیں)

مراحل:

1. اپنے پروفائل کے ساتھ دائیں طرف جائیں۔ گیئر آئیکن پر کلک کریں۔



2. 'سروس سیٹ اپ' کے نیچے 'ڈیولپر کنسول' پر کلک کریں۔ فوری طور پر، ایک نئی ونڈو کھل جاتی ہے جسے ہم 'کنسول' کہہ سکتے ہیں۔

3. 'Debug' پر کلک کریں اور 'Open Execute Anonymous Window' کو منتخب کریں۔

4. ایک ایڈیٹر کھلے گا جو فوری اپیکس کلاسز اور بیانات کو انجام دینے کے لیے استعمال ہوتا ہے۔

5. کوڈ لکھنے کے بعد، ہم اپیکس سٹیٹمنٹس کو منتخب کر سکتے ہیں جن پر ہم عمل کرنا چاہتے ہیں اور 'Execute Highlighted' بٹن پر کلک کر سکتے ہیں۔ اگر آپ چاہتے ہیں کہ پورے کوڈ پر عمل درآمد ہو، تو صرف 'Execute' پر کلک کریں۔

6. یقینی بنائیں کہ آپ لاگ کو کھولنے کے لیے 'اوپن لاگ' کے چیک باکس پر نشان لگاتے ہیں۔ آپ لاگ کو منتخب کرکے ہی دیکھ سکتے ہیں۔

آئیے درج ذیل کمانڈ کا استعمال کرتے ہوئے 'ہیلو' پیغام ڈسپلے کریں:

system.debug('Hello Linuxhint')؛

7. آخر میں، صرف موجودہ کوڈ آؤٹ پٹ دیکھنے کے لیے 'صرف ڈیبگ' کو چیک کریں۔

فہرست تخلیق

آبجیکٹ کے نام کے ساتھ ڈیٹا کی قسم بتا کر، 'لسٹ' بنائی جا سکتی ہے۔ یہاں، اسے بنانے کے لیے نیا کلیدی لفظ استعمال کیا جاتا ہے۔ تخلیق کے دوران عناصر کو منتقل کرنا اختیاری ہوسکتا ہے۔

نحو:

فہرست list_object = نئی فہرست(){عناصر…}؛

1. فہرست شامل کریں()

اس طریقہ کو استعمال کرتے ہوئے، ہم فہرست آبجیکٹ میں ایک وقت میں ایک عنصر کو براہ راست شامل کر سکتے ہیں۔

انڈیکس کو پہلے پیرامیٹر کے طور پر اور دوسرے پیرامیٹر کے طور پر شامل کیے جانے والے عنصر کی وضاحت کرکے کسی خاص انڈیکس پوزیشن پر عنصر شامل کرنا بھی ممکن ہے۔

نحو:

list_object.add(عنصر)

list_object.add(انڈیکس_پوزیشن، عنصر)

مثال:

آئیے 3 آئٹمز کے ساتھ ایک فہرست بنائیں اور add() طریقہ استعمال کرکے ایک ایک کرکے کچھ آئٹمز شامل کریں۔

// ایک فہرست بنائیں - 3 اشیاء کے ساتھ فرنیچر۔

فہرست فرنیچر = نئی فہرست{'ٹیبل'،'کرسیاں'،'دوسرے'}؛

system.debug('اصل اشیاء:')؛

system.debug(فرنیچر)؛



// add() طریقہ استعمال کرتے ہوئے ایک ایک کرکے 3 آئٹمز شامل کریں۔

furniture.add('wood');

furniture.add(2,'plates')؛

furniture.add(2,'Beds');



system.debug('حتمی اشیاء:')؛

system.debug(فرنیچر)؛

آؤٹ پٹ:

سب سے پہلے، ہم 'لکڑی' شامل کرتے ہیں. پھر، ہم دوسری انڈیکس پوزیشن پر 'پلیٹ' شامل کرتے ہیں۔ ہم دوسری پوزیشن پر 'بیڈز' بھی شامل کرتے ہیں۔ آخر میں، فہرست میں اشیاء کو درج ذیل ترتیب میں رکھا گیا ہے: [میز، کرسیاں، بستر، پلیٹیں، دیگر، لکڑی]۔

2. List.addAll()

پچھلا طریقہ فہرست آبجیکٹ میں ایک وقت میں صرف ایک آئٹم کا اضافہ کرتا ہے۔ اس طریقہ کو استعمال کرتے ہوئے، ہم ایک فہرست سے نئی فہرست میں متعدد عناصر شامل کر سکتے ہیں۔ انڈیکس کو پہلے پیرامیٹر کے طور پر متعین کرکے اور دوسرے پیرامیٹر کے طور پر ایک عنصر کو شامل کرکے کسی خاص انڈیکس پوزیشن پر عنصر شامل کرنا بھی ممکن ہے۔ یقینی بنائیں کہ دونوں فہرستیں ایک ہی قسم کی ہیں۔

نحو:

list_object.addAll(list_object_anther)

یہاں، list_object ہماری اصل فہرست ہے اور list_object_another وہ فہرست ہے جس میں کچھ آئٹمز ہوں گے جنہیں list_object میں شامل کیا جانا ہے۔

مثال:

ہماری پہلی مثال کی طرح، ایک اور فہرست بنائیں جو ہے 'furniture2' اور پہلی فہرست کو پاس کریں جو 'furniture1' ہے۔

// ایک فہرست بنائیں - فرنیچر1 3 اشیاء کے ساتھ۔

فہرست furniture1 = نئی فہرست{'ٹیبل'،'کرسیاں'،'دوسرے'}؛

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

system.debug(furniture1);



// ایک خالی فہرست بنائیں - furniture2.

فہرست furniture2 = نئی فہرست()؛

system.debug('اصل فہرست-2:')؛

system.debug(furniture2)؛



// addAll() کا استعمال کرتے ہوئے فرنیچر2 میں فرنیچر1 کی اشیاء شامل کریں۔

furniture2.addAll(furniture1);

system.debug('فائنل لسٹ-2:')؛

system.debug(furniture2)؛

آؤٹ پٹ:

پہلی فہرست (فرنیچر1) میں تین اشیاء ہیں جبکہ دوسری فہرست (فرنیچر2) خالی ہے۔ ہم 'furniture1' سے 'furniture2' تک تمام عناصر شامل کرتے ہیں۔ آخر میں، فہرست 2 (فرنیچر2) میں 3 عناصر ہیں جو 'فرنیچر1' کے برابر ہیں۔

3. List.size()

کچھ منظرناموں میں، ہمیں ان کل آئٹمز کو جاننے کی ضرورت ہے جو اپیکس لسٹ میں موجود ہیں۔ Size() وہ طریقہ ہے جو فہرست میں موجود کل اشیاء کو لوٹاتا ہے۔ اس طریقہ کار کے لیے پیرامیٹرز کی ضرورت نہیں ہے۔

نحو:

list_object.size()

مثال:

کچھ آرڈر کی مقدار کے ساتھ ایک Apex فہرست بنائیں اور سائز واپس کریں۔

// ایک فہرست بنائیں - 5 مقداروں کے لیے قیمت۔

فہرست آرڈرز = نئی فہرست {900,98,98,600,65};

system.debug('فہرست:')؛

system.debug(آرڈرز)؛



// فہرست کا سائز واپس کریں۔

system.debug('کل آرڈرز:')؛

system.debug(orders.size())؛

آؤٹ پٹ:

ہماری فہرست میں 5 آرڈرز ہیں۔

4. List.get()

فہرست سے اشیاء تک رسائی بہت ضروری ہے۔ ایسا کرنے کے لیے، اپیکس لسٹ get() طریقہ کو سپورٹ کرتی ہے جو انڈیکس پوزیشن کی بنیاد پر عنصر کو لوٹاتا ہے۔ اشاریہ سازی 0 سے شروع ہوتی ہے۔ اگر اشاریہ موجود نہیں ہے، تو یہ درج ذیل خرابی کو بڑھاتا ہے:

نحو:

list_object.get(انڈیکس_پوزیشن)

مثال:

کچھ آرڈر کی مقدار کے ساتھ ایک Apex فہرست بنائیں اور کچھ عناصر واپس کریں۔

// ایک فہرست بنائیں - 5 مقداروں کے لیے قیمت۔

فہرست آرڈرز = نئی فہرست {900,98,98,600,65};

system.debug('فہرست:')؛

system.debug(آرڈرز)؛



// get() طریقہ

system.debug('پہلا آرڈر:'+ orders.get(0));

system.debug('چوتھا آرڈر:'+ orders.get(3));

آؤٹ پٹ:

ہماری فہرست میں 5 آرڈرز ہیں۔ سب سے پہلے، ہم اس عنصر تک رسائی حاصل کرتے ہیں جو انڈیکس-0، یعنی 900 میں موجود ہے۔ پھر، ہم اس عنصر تک رسائی حاصل کرتے ہیں جو انڈیکس-3، یعنی 600 میں موجود ہے۔

5. List.isEmpty()

ہم چیک کر سکتے ہیں کہ آیا فہرست خالی ہے یا isEmpty() طریقہ استعمال کر کے نہیں۔ اگر Apex فہرست خالی ہے تو True واپس آ جاتا ہے۔ دوسری صورت میں، غلط واپس آ جائے گا. سائز() طریقہ کی طرح، یہ کوئی پیرامیٹر نہیں لے گا۔

نحو:

list_object.isEmpty()

مثال:

خالی فہرست بنا کر چیک کریں کہ فہرست خالی ہے یا نہیں۔

// ایک فہرست بنائیں - 5 مقداروں کے لیے قیمت۔

فہرست<انٹیجر> آرڈرز = نئی فہرست<انٹیجر>()؛



// isEmpty() طریقہ

system.debug('کیا فہرست خالی ہے:'+ orders.isEmpty());

آؤٹ پٹ:

فہرست خالی ہونے کی وجہ سے True واپس آ گیا ہے۔

6. List.clear()

ایک اپیکس لسٹ میں موجود تمام عناصر کو صاف () طریقہ استعمال کرتے ہوئے ایک وقت میں حذف کیا جا سکتا ہے۔ یہ کوئی پیرامیٹرز نہیں لے گا۔

نحو:

list_object.clear()

مثال:

فہرست سے تمام عناصر کو ہٹا دیں جن میں 5 طلباء کے نام ہیں۔

// ایک فہرست بنائیں - طلباء

فہرست طلباء = نئی فہرست{'sravan','ram','raghu','raby','honey'};

system.debug('فہرست: '+ طلباء)؛



// واضح () طریقہ

students.clear();

system.debug('فہرست: '+ طلباء)؛

آؤٹ پٹ:

واضح () طریقہ کو لاگو کرنے کے بعد، 'طلبہ' کی فہرست خالی ہے۔

فہرست ایپلی کیشنز

1. اعتراض

ہم ڈیٹا کو سیلز فورس معیاری اشیاء جیسے 'اکاؤنٹ'، 'رابطہ' وغیرہ میں داخل کر سکتے ہیں۔ اس منظر نامے میں، ہمیں فہرست ڈیٹا کی قسم کی جگہ sObject کا نام فراہم کرنے کی ضرورت ہے۔

آئیے اس مثال کو دیکھتے ہیں: یہاں، ہم 'اکاؤنٹ' کے بطور sObject قسم کے ساتھ ایک فہرست بناتے ہیں۔ ہم اس میں نام شامل کرتے ہیں اور اسے فہرست میں شامل کرتے ہیں۔

2. DML آپریشن

ہم فہرستوں کا استعمال ان ریکارڈز کو ذخیرہ کرنے کے لیے کر سکتے ہیں جو سیلز فورس ڈیٹا میں داخل کیے گئے ہیں۔ داخل کرنے کے بیانات کے ساتھ، ہم Salesforce ڈیٹا بیس میں ریکارڈ/s داخل کر سکتے ہیں۔

درج ذیل کوڈ کو دیکھیں۔ ہم یہاں صرف ایک داخلی بیان شامل کرتے ہیں:

آئیے چیک کریں کہ ریکارڈ بنایا گیا ہے یا نہیں۔

  1. 'ایپ لانچر' پر جائیں اور 'اکاؤنٹس' تلاش کریں۔
  2. 'اکاؤنٹ ریکارڈ' کی تفصیل کا صفحہ کھل جائے گا۔ اب، 'Linuxhint' اکاؤنٹ تلاش کریں۔
  3. 'اکاؤنٹ کا نام' پر کلک کریں۔ آپ یہاں تفصیلات دیکھ سکتے ہیں۔

نتیجہ

اب ہم اپنے گائیڈ کے اختتام پر پہنچ گئے ہیں۔ اس گائیڈ کے حصے کے طور پر، ہم نے Salesforce پلیٹ فارم اور Apex پر تبادلہ خیال کیا۔ فہرست ان مجموعوں میں سے ایک ہے جسے اپیکس پروگرامنگ لینگویج سے تعاون حاصل ہے۔ اس کے بعد، ہم نے وہ طریقے سیکھے جو مثالوں اور نحو کے ساتھ 'فہرست' سے تعاون یافتہ ہیں۔ ہم نے اس گائیڈ کو 'فہرست' جمع کرنے والی ایپلی کیشنز پر مثالوں کے ساتھ بحث کر کے سمیٹ لیا۔