Miklix

ڈائنامکس 365 میں مالیاتی جہت کے لئے ایک لک اپ فیلڈ بنانا

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

یہ مضمون بتاتا ہے کہ کس طرح Dynamics 365 for Operations میں ایک مالیاتی جہت کے لیے ایک تلاش کا میدان کیسے بنایا جائے، بشمول X++ کوڈ کی مثال۔


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

Creating a Lookup Field for a Financial Dimension in Dynamics 365

اس پوسٹ میں موجود معلومات Dynamics 365 for Operations پر مبنی ہے، لیکن اس میں سے زیادہ تر Dynamics AX 2012 کے لیے بھی کام کرے گی (نیچے دیکھیں)۔

مجھے حال ہی میں ایک نیا فیلڈ بنانے کا کام سونپا گیا تھا جس میں اس صورت میں پروڈکٹ میں ایک مالی جہت کی وضاحت کرنا ممکن ہو۔ بلاشبہ، نیا فیلڈ اس جہت کی درست اقدار کو تلاش کرنے کے قابل بھی ہونا چاہیے۔

یہ ایک ٹیبل میں باقاعدہ تلاش کے مقابلے میں تھوڑا زیادہ پیچیدہ ہے، لیکن اگر آپ جانتے ہیں کہ کس طرح، یہ اصل میں بہت برا نہیں ہے.

خوش قسمتی سے، معیاری ایپلیکیشن ایک آسان تلاش کا فارم (DimensionLookup) فراہم کرتی ہے جسے اس مقصد کے لیے استعمال کیا جا سکتا ہے، اگر آپ صرف یہ بتا دیں کہ تلاش کرنے کے لیے کون سی جہت کا وصف ہے۔

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

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

نوٹس: اس میں سے زیادہ تر Dynamics AX 2012 کے لیے بھی کام کرے گا، لیکن ایونٹ ہینڈلر بنانے کے بجائے، آپ فارم فیلڈ کے تلاش کے طریقہ کو اوور رائیڈ کر سکتے ہیں۔

ایونٹ ہینڈلر کو کچھ اس طرح نظر آنا چاہیے (ضرورت کے مطابق فارم کا نام اور فیلڈ کا نام تبدیل کریں):

[
    FormControlEventHandler(formControlStr( MyForm,
                                            MyProductDimField),
                            FormControlEventType::Lookup)
]
public static void MyProductDimField_OnLookup(  FormControl _sender,
                                                FormControlEventArgs _e)
{
    FormStringControl   control;
    Args                args;
    FormRun             formRun;
    DimensionAttribute  dimAttribute;
    ;

    dimAttribute    =   DimensionAttribute::findByName('Product');
    args            =   new Args();
    args.record(dimAttribute);
    args.caller(_sender);
    args.name(formStr(DimensionLookup));
    formRun         =   classFactory.formRunClass(args);formRun.init();
    control         =   _sender as FormStringControl;
    control.performFormLookup(formRun);
}

مزید پڑھنا

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


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

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

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

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