Miklix

Dynamics AX 2012 SysOperation Framework အမြန်ခြုံငုံသုံးသပ်ချက်

ထုတ်ဝေသည်- ၂၀၂၅၊ ဖေဖော်ဝါရီ ၁၅ UTC ၂၂:၄၁:၁၉

ဤဆောင်းပါးသည် Dynamics AX 2012 နှင့် Dynamics 2012 ရှိ SysOperation မူဘောင်တွင် စီမံဆောင်ရွက်နေသော အတန်းများနှင့် အစုလိုက်အလုပ်များကို အကောင်အထည်ဖော်ပုံနှင့်ပတ်သက်၍ အမြန်ခြုံငုံသုံးသပ်ချက် (သို့မဟုတ် ကောက်ချက်စာရွက်) ကို ပေးပါသည်။


ဤစာမျက်နှာကို လူများတတ်နိုင်သမျှ ဝင်ရောက်ကြည့်ရှုနိုင်စေရန်အတွက် ဤစာမျက်နှာကို အင်္ဂလိပ်မှ စက်ဖြင့် ဘာသာပြန်ထားခြင်းဖြစ်ပါသည်။ ကံမကောင်းစွာဖြင့်၊ စက်ဘာသာပြန်ခြင်းသည် ပြီးပြည့်စုံသောနည်းပညာမဟုတ်သေးသောကြောင့် အမှားအယွင်းများဖြစ်ပေါ်လာနိုင်သည်။ သင်နှစ်သက်ပါက မူရင်းအင်္ဂလိပ်ဗားရှင်းကို ဤနေရာတွင် ကြည့်ရှုနိုင်ပါသည်။

Dynamics AX 2012 SysOperation Framework Quick Overview

ဤပို့စ်ရှိ အချက်အလက်သည် Dynamics AX 2012 R3 ကို အခြေခံထားသည်။ ၎င်းသည် အခြားဗားရှင်းများအတွက် တရားဝင်နိုင်သည် သို့မဟုတ် မမှန်နိုင်ပါ။ (အပ်ဒိတ်- ဤဆောင်းပါးပါ အချက်အလက်များသည် Dynamics 365 for Operations အတွက် တရားဝင်ကြောင်း ကျွန်ုပ် အတည်ပြုနိုင်ပါသည်)


ဤပို့စ်သည် လျင်မြန်သောခြုံငုံသုံးသပ်ချက်နှင့် လိမ်လည်မှုစာရွက်အဖြစ်သာ ရည်ရွယ်ပါသည်။ အကယ်၍ သင်သည် SysOperation framework နှင့် အသစ်ဖြစ်ပါက၊ ဘာသာရပ်ဆိုင်ရာ Microsoft ၏ စက္ကူဖြူစာတမ်းကိုလည်း ဖတ်ရန် ကျွန်ုပ် အလေးအနက် အကြံပြုအပ်ပါသည်။ ဤမူဘောင်ဖြင့် လုပ်ဆောင်မှုများ ဖော်ဆောင်ရာတွင် ပါဝင်သော မတူညီသော အတန်းများကို လျင်မြန်စွာ ဖြတ်တောက်ရန် လိုအပ်ပါက ဤနေရာတွင် အချက်အလက်သည် အသုံးဝင်နိုင်ပါသည်။

ကွဲလွဲမှုတွေရှိပါတယ်၊ ဒါပေမယ့် framework ကိုအသုံးပြုတဲ့အခါ class သုံးခုကို ပုံမှန်အားဖြင့် အကောင်အထည်ဖော်ပါတယ်။

  • ဒေတာစာချုပ် (SysOperationDataContractBase သက်တမ်းတိုးသင့်သည်)
  • ဝန်ဆောင်မှု (SysOperationServiceBase တိုးချဲ့သင့်သည်)
  • Controller (SysOperationServiceController ကို သက်တမ်းတိုး ရမည် )

ထို့အပြင်၊ ကျွန်ုပ်သည် UIBuilder အတန်းအစားကိုလည်း အကောင်အထည်ဖော်နိုင်သည် (SysOperationUIBuilder ကို သက်တမ်းတိုး ရမည် )၊ သို့သော် အကြောင်းတစ်ခုခုကြောင့် ဒိုင်ယာလော့ခ်သည် အလိုအလျောက် မူဘောင်ထုတ်ပေးသည်ထက် ပိုမိုအဆင့်မြင့်လာပါက ၎င်းသည် လိုအပ်ပါသည်။


ဒေတာစာချုပ်

ဒေတာစာချုပ်သည် သင့်လုပ်ငန်းဆောင်ရွက်မှုအတွက် လိုအပ်သော ဒေတာအဖွဲ့ဝင်များကို သိမ်းဆည်းထားသည်။ ၎င်းကို RunBase မူဘောင်တွင် သတ်မှတ်ထားသည့် ပုံမှန် CurrentList macro နှင့် နှိုင်းယှဉ်နိုင်သော်လည်း ၎င်းအစား အတန်းအစားအဖြစ် လုပ်ဆောင်ခဲ့သည်။ ဒေတာစာချုပ်သည် SysOperationDataContractBase ကို သက်တမ်းတိုးသင့်သည်၊ သို့သော် ထိုသို့မဟုတ်လျှင်ပင် အလုပ်ဖြစ်ပါမည်။ စူပါအတန်းကို တိုးချဲ့ခြင်း၏ အားသာချက်မှာ နေရာထိုင်ခင်းဆိုင်ရာ အချက်အလက်အချို့ကို ပေးဆောင်ရခြင်းဖြစ်ပါသည်။

[DataContractAttribute]
class MyDataContract extends SysOperationDataContractBase
{
    ItemId itemId;
}

ဤဥပမာတွင်၊ itemId သည် ဒေတာအဖွဲ့ဝင်ဖြစ်သည်။ ဒေတာအဖွဲ့ဝင်တစ်ဦးစီအတွက် parm method တစ်ခုကို အကောင်အထည်ဖော်ပြီး ၎င်းကို DataMemberAttribute ဖြင့် tag လုပ်ထားရန် လိုအပ်ပြီး ၎င်းသည် ဘာလဲဆိုသည်ကို မူဘောင်က သိစေပါသည်။ ၎င်းသည် သင့်အတွက် ဒိုင်ယာလော့ခ်ကို အလိုအလျောက်တည်ဆောက်ရန် ဘောင်ကို ပံ့ပိုးပေးသည်။

[DataMemberAttribute]
public ItemId parmItemId(ItemId _itemId = itemId)
{
    ;

    itemId = _itemId;
    return itemId;
}


ဝန်ဆောင်မှု

ဝန်ဆောင်မှုအတန်းသည် အမှန်တကယ် လုပ်ငန်းဆိုင်ရာ ယုတ္တိဗေဒပါ၀င်သော အတန်းဖြစ်သည်။ ဒိုင်ယာလော့ခ်များ၊ အစုလိုက်လုပ်ဆောင်ခြင်း သို့မဟုတ် အမျိုးအစားတစ်ခုခုကို ပြသခြင်းအတွက် ၎င်းသည် ထိန်းချုပ်သူအတန်းအစား၏ တာဝန်ဖြစ်သည်။ ၎င်းကို ပိုင်းခြားခြင်းဖြင့်၊ သင်သည် သင့်ကုဒ်ကို ကောင်းစွာ ဒီဇိုင်းထုတ်ကာ ပိုမိုသုံးနိုင်သော ကုဒ်ကို ပြုလုပ်နိုင်ခြေ ပိုများပါသည်။

ဒေတာကန်ထရိုက်အတန်းကဲ့သို့ပင်၊ ဝန်ဆောင်မှုအတန်းသည် အထူးသဖြင့် မည်သည့်အရာမှ အမွေဆက်ခံရန် မလိုအပ်သော်လည်း၊ အနည်းဆုံး သင်သည် batch အလုပ်အဖြစ် ဝန်ဆောင်မှုကို လုပ်ဆောင်နိုင်မည်ဟု မျှော်လင့်ထားလျှင် အနည်းဆုံး သင်က SysOperationServiceBase အတန်းမှ အမွေဆက်ခံသင့်ပါသည်။ လည်ပတ်မှုကို စတင်သည့်နည်းလမ်း (ဆိုလိုသည်မှာ လုပ်ငန်းဆိုင်ရာ ယုတ္တိဗေဒကို လုပ်ဆောင်သည်) သည် သင်၏ဒေတာစာချုပ်အတန်းအစား၏ အရာဝတ္တုတစ်ခုကို ထည့်သွင်းရမည်ဖြစ်ပြီး [SysEntryPointAttribute] ဖြင့် အလှဆင်သင့်ပါသည်။ ဥပမာအားဖြင့်:

class MyService extends SysOperationServiceBase
{
}

run ဟုခေါ်သောနည်းလမ်းဖြင့်

[SysEntryPointAttribute]
public void run(MyDataContract _dataContract)
{
    // run business logic here
}


ထိန်းချုပ်ကိရိယာ

Controller အတန်းသည် သင့်လုပ်ဆောင်ချက်၏ execution နှင့် batch processing ကို ကိုင်တွယ်သည်။ ၎င်းသည် အမြင့်ဆုံးစွမ်းဆောင်ရည်အတွက် ကုဒ်ကို CIL တွင် လုပ်ဆောင်ကြောင်းကိုလည်း သေချာစေသည်။ အခြားရွေးချယ်စရာများပါရှိသော်လည်း SysOperationServiceController အတန်းမှ ပုံမှန်အားဖြင့် ကွန်ထရိုလာအတန်းသည် အမွေဆက်ခံပါသည်။

class MyController extends SysOperationServiceController
{
}

super class ၏ constructor သည် class name၊ method name နှင့် (optionally) execution mode ကို parameters အဖြစ်ယူသည်။ အတန်းနှင့်နည်းလမ်းအမည်များသည် သင့်ဝန်ဆောင်မှုအတန်း၏အမည်နှင့် ၎င်းတွင်လုပ်ဆောင်သင့်သည့်နည်းလမ်းဖြစ်သင့်သည်။ ထို့ကြောင့်၊ သင်သည် သင်၏ controller ၏ တည်ဆောက်ပုံနည်းလမ်းကို ဤကဲ့သို့ အကောင်အထည်ဖော်နိုင်သည်-

public static MyController construct()
{
    ;

    return new MyController(classStr(MyService),
    methodStr(MyService, run));
}

ထို့နောက် MyController class ၏ အဓိကနည်းလမ်းသည် ရိုးရှင်းပါသည်။

public static void main(Args _args)
{
    ;

    MyController::construct().startOperation();
}

အခြေခံအားဖြင့် ပြီးပါပြီ။ အထက်ဖော်ပြပါသည် အလွန်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်ပြီး framework တွင် အခြားသောရွေးချယ်စရာများနှင့် ဖြစ်နိုင်ခြေများစွာပါရှိသည်၊ သို့သော်သင်သည် framework ကိုအကြာကြီးအသုံးမပြုပါက brush up လိုအပ်ပါက အမြန်ခြုံငုံသုံးသပ်ချက်အဖြစ်ဆောင်ရွက်ပါသည်။

Bluesky တွင်မျှဝေပါ။Facebook တွင်မျှဝေပါ။LinkedIn တွင်မျှဝေပါ။Tumblr တွင်မျှဝေပါ။X တွင်မျှဝေပါ။LinkedIn တွင်မျှဝေပါ။ပင်တရက်စ်တွင် ပင်ထားပါ

မိုက်ကယ်ဘန်ခရစ္စတင်း

စာရေးသူအကြောင်း

မိုက်ကယ်ဘန်ခရစ္စတင်း
မိုက်ကယ် သည် miklix.com ၏ ဖန်တီးရှင်နှင့် ပိုင်ရှင်ဖြစ်သည်။ သူသည် ပရော်ဖက်ရှင်နယ် ကွန်ပြူတာ ပရိုဂရမ်မာ/ဆော့ဖ်ဝဲလ် တီထွင်သူအဖြစ် နှစ်ပေါင်း 20 ကျော် အတွေ့အကြုံရှိပြီး ဥရောပ အိုင်တီကော်ပိုရေးရှင်းကြီးတစ်ခုတွင် လက်ရှိအချိန်ပြည့် အလုပ်ခန့်ထားသည်။ ဘလော့ဂ်မရေးဖြစ်သောအခါတွင် သူသည် ၎င်း၏အားလပ်ချိန်များကို စိတ်ဝင်စားမှု၊ ဝါသနာနှင့် လှုပ်ရှားမှုများစွာတွင် ဖြုန်းတီးခဲ့ပြီး၊ ဤဝဘ်ဆိုက်တွင် ဖော်ပြထားသော အကြောင်းအရာမျိုးစုံကို အတိုင်းအတာတစ်ခုအထိ ထင်ဟပ်စေနိုင်သည်။