Miklix

Dynamics AX 2012 ရှိ data() နှင့် buf2Buf() ကွာခြားချက်

ထုတ်ဝေသည်- ၂၀၂၅၊ ဖေဖော်ဝါရီ ၁၅ UTC ၂၂:၅၇:၃၀
နောက်ဆုံး မွမ်းမံပြင်ဆင်သည်- ၂၀၂၆၊ ဇန်နဝါရီ ၁၂ UTC ၀၈:၄၁:၂၈

ဤဆောင်းပါးသည် Dynamics AX 2012 ရှိ buf2Buf() နှင့် data() နည်းလမ်းများအကြား ကွာခြားချက်များကို ရှင်းပြထားပြီး၊ တစ်ခုချင်းစီနှင့် X++ ကုဒ်ဥပမာကို အသုံးပြုရန် သင့်လျော်သည့်အချိန်ကို ရှင်းပြထားသည်။


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

The Difference Between data() and buf2Buf() in Dynamics AX 2012

ဤပို့စ်ရှိ အချက်အလက်များသည် Dynamics AX 2012 R3 ကို အခြေခံထားသည်။ အခြားဗားရှင်းများအတွက် မှန်ကန်နိုင်သည် သို့မဟုတ် မမှန်ကန်နိုင်ပါ။

Dynamics AX မှာ table buffer တစ်ခုကနေ နောက်တစ်ခုဆီကို field အားလုံးရဲ့တန်ဖိုးကို ကူးယူဖို့ လိုအပ်တဲ့အခါ၊ ရိုးရာအားဖြင့် ဒီလိုလုပ်ရမှာက -

toTable.data(fromTable);

ဒါက ကောင်းကောင်းအလုပ်လုပ်ပြီး ကိစ္စအများစုမှာ သွားရမယ့်နည်းလမ်းပါ။

သို့သော်၊ buf2Buf function ကို အစားထိုးအသုံးပြုရန်လည်း ရွေးချယ်ခွင့်ရှိပါသည်။

buf2Buf(fromTable, toTable);

ဒါကလည်း ကောင်းကောင်းအလုပ်လုပ်ပါတယ်။ ဒါဆို ဘာကွာခြားချက်ရှိလဲ။

ကွာခြားချက်ကတော့ buf2Buf ဟာ စနစ်အကွက်တွေကို ကူးယူခြင်းမပြုပါဘူး။ စနစ်အကွက်တွေမှာ RecId၊ TableId နဲ့ ဒီအခြေအနေမှာ အရေးအကြီးဆုံးကတော့ DataAreaId လိုမျိုး အကွက်တွေ ပါဝင်ပါတယ်။ နောက်ဆုံးတစ်ခုကတော့ အရေးကြီးဆုံးအကြောင်းရင်းကတော့ ကုမ္ပဏီအကောင့်တွေကြားမှာ မှတ်တမ်းတွေကို မိတ္တူကူးတဲ့အခါ data() အစား buf2Buf() ကို အသုံးပြုလေ့ရှိတာကြောင့်ပါ။

ဥပမာအားဖြင့်၊ သင်သည် "dat" ကုမ္ပဏီတွင်ရှိပြီး "com" ဟုခေါ်သော အခြားကုမ္ပဏီတစ်ခုရှိပြီး CustTable ရှိ မှတ်တမ်းအားလုံးကို ကူးယူလိုပါက-

while select crossCompany : ['com'] custTableFrom
{
    buf2Buf(custTableFrom, custTableTo);
    custTableTo.insert();
}

ဤကိစ္စတွင်၊ buf2Buf သည် system field များမှလွဲ၍ field တန်ဖိုးအားလုံးကို buffer အသစ်သို့ ကူးယူသောကြောင့် ၎င်းသည် အလုပ်လုပ်ပါလိမ့်မည်။ data() ကို အသုံးပြုခဲ့ပါက၊ ထိုတန်ဖိုးကို buffer အသစ်သို့လည်း ကူးယူပြီးသားဖြစ်သောကြောင့် မှတ်တမ်းအသစ်ကို "com" ကုမ္ပဏီအကောင့်များတွင် ထည့်သွင်းပြီးသားဖြစ်လိမ့်မည်။

(တကယ်တော့၊ duplicate key error ဖြစ်သွားနိုင်ပါတယ်၊ ဒါပေမယ့် သင်လိုချင်တာလည်း အဲဒါမဟုတ်ပါဘူး)။

နောက်ထပ်စာဖတ်ခြင်း။

ဤပို့စ်ကို သင်နှစ်သက်ပါက၊ ဤအကြံပြုချက်များကို သင်လည်း နှစ်သက်နိုင်ပါသည်-


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

Mikkel Christensen

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

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