Miklix

ڈائنامکس 365 میں توسیع کے ذریعے ڈسپلے یا ترمیم کا طریقہ شامل کریں

شائع شدہ: 16 فروری، 2025 کو 11:56:19 AM UTC
آخری بار اپ ڈیٹ کیا گیا: 12 جنوری، 2026 کو 8:57:35 AM UTC

اس مضمون میں، میں وضاحت کرتا ہوں کہ ٹیبل میں ڈسپلے کا طریقہ شامل کرنے کے لیے کلاس ایکسٹینشن کا استعمال کیسے کیا جائے اور Dynamics 365 میں آپریشنز کے لیے X++ کوڈ کی مثالیں شامل ہیں۔


یہ صفحہ انگریزی سے مشینی ترجمہ کیا گیا تھا تاکہ زیادہ سے زیادہ لوگوں تک اس تک رسائی ممکن بنائی جا سکے۔ بدقسمتی سے، مشینی ترجمہ ابھی تک ایک مکمل ٹیکنالوجی نہیں ہے، اس لیے غلطیاں ہو سکتی ہیں۔ اگر آپ چاہیں تو اصل انگریزی ورژن یہاں دیکھ سکتے ہیں:

Add Display or Edit Method via Extension in Dynamics 365

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

Dynamics اور Axapta کے پچھلے ورژنز میں، ٹیبلز اور فارمز پر ڈسپلے یا ترمیم کے طریقے بنانا بہت آسان تھا، لیکن جب مجھے حال ہی میں Dynamics 365 میں اپنا پہلا ترمیم کا طریقہ بنانا پڑا تو میں نے دریافت کیا کہ ایسا کرنے کا طریقہ کار کچھ مختلف ہے۔

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

سب سے پہلے، ایک نئی کلاس بنائیں. آپ اسے جو چاہیں نام دے سکتے ہیں، لیکن کسی وجہ سے اس کا لاحقہ "_Extension" ہونا ضروری ہے۔ ہم کہتے ہیں کہ آپ کو CustTable میں ڈسپلے کا طریقہ شامل کرنے کی ضرورت ہے، مثال کے طور پر آپ اسے MyCustTable_Extension کا نام دے سکتے ہیں۔

کلاس کو ExtensionOf سے سجایا جانا چاہیے تاکہ سسٹم کو معلوم ہو کہ آپ کیا بڑھا رہے ہیں، جیسے:

[ExtensionOf(tableStr(CustTable))]
public final class MyCustTable_Extension
{
}

اب آپ اس کلاس میں اپنے ڈسپلے کے طریقہ کار کو لاگو کر سکتے ہیں، جیسا کہ آپ نے ڈائنامکس کے پہلے ورژن میں براہ راست ٹیبل پر کیا ہوگا - "یہ" ٹیبل کا بھی حوالہ دیتا ہے، تاکہ آپ فیلڈز اور دیگر طریقوں تک رسائی حاصل کر سکیں۔

مثال کے طور پر، ایک سادہ (اور مکمل طور پر بیکار) ڈسپلے طریقہ کے ساتھ ایک کلاس جو صرف گاہک کا اکاؤنٹ نمبر واپس کرتی ہے اس طرح نظر آسکتی ہے:

[ExtensionOf(tableStr(CustTable))]
public final class MyCustTable_Extension
{
    public display CustAccount displayAccountNum()
    {
        ;

        return this.AccountNum;
    }
}

اب، فارم میں ڈسپلے کا طریقہ شامل کرنے کے لیے (یا فارم کی توسیع، اگر آپ فارم میں براہ راست ترمیم نہیں کر سکتے ہیں)، آپ کو فارم میں دستی طور پر ایک فیلڈ شامل کرنے کی ضرورت ہے اور درست قسم (اس مثال میں سٹرنگ) کا استعمال یقینی بنائیں۔

پھر، کنٹرول پر آپ ڈیٹا سورس کو CustTable پر سیٹ کریں گے (یا آپ کے CustTable ڈیٹا سورس کا جو بھی نام ہے) اور DataMethod کو MyCustTable_Extension.displayAccountNum پر سیٹ کریں گے (اس بات کو یقینی بنائیں کہ کلاس کا نام شامل کریں، بصورت دیگر کمپائلر طریقہ تلاش نہیں کر سکے گا)۔

اور آپ نے کیا :-)

اپ ڈیٹ: کسی فارم میں ڈسپلے کا طریقہ شامل کرتے وقت ایکسٹینشن کلاس کا نام شامل کرنا ضروری نہیں ہے، لیکن اشاعت کے اصل وقت یہ تھا۔ اگر کچھ قارئین اب بھی پرانے ورژن استعمال کر رہے ہوں تو میں یہاں معلومات چھوڑ رہا ہوں۔

مزید پڑھنا

اگر آپ اس پوسٹ سے لطف اندوز ہوتے ہیں، تو آپ ان تجاویز کو بھی پسند کر سکتے ہیں:


بلوسکی پر شیئر کریں۔فیس بک پر شیئر کریں۔لنکڈ ان پر شیئر کریں۔ٹمبلر پر شیئر کریں۔ایکس پر شیئر کریں۔لنکڈ ان پر شیئر کریں۔پنٹرسٹ پر پن کریں

میکل کرسٹینسن

مصنف کے بارے میں

میکل کرسٹینسن
مائیکل miklix.com کا خالق اور مالک ہے۔ اس کے پاس ایک پیشہ ور کمپیوٹر پروگرامر/سافٹ ویئر ڈویلپر کے طور پر 20 سال سے زیادہ کا تجربہ ہے اور وہ اس وقت ایک بڑی یورپی آئی ٹی کارپوریشن میں کل وقتی ملازمت کر رہے ہیں۔ جب وہ بلاگنگ نہیں کرتے ہیں، تو وہ اپنا فارغ وقت دلچسپیوں، مشاغل اور سرگرمیوں کی ایک وسیع صف پر صرف کرتا ہے، جو کسی حد تک اس ویب سائٹ پر موجود مختلف موضوعات سے ظاہر ہو سکتا ہے۔