ডায়নামিক্স এএক্স 2012 এ ডেটা () এবং বিইউএফ 2 বুফ () এর মধ্যে পার্থক্য
প্রকাশিত: ১৫ ফেব্রুয়ারী, ২০২৫ এ ১০:৫৪:২২ PM UTC
সর্বশেষ আপডেট: ১২ জানুয়ারী, ২০২৬ এ ৮:৪১:১৮ AM UTC
এই নিবন্ধটি Dynamics AX 2012-এ buf2Buf() এবং data() পদ্ধতির মধ্যে পার্থক্য ব্যাখ্যা করে, যার মধ্যে রয়েছে কখন প্রতিটি এবং একটি X++ কোড উদাহরণ ব্যবহার করা উপযুক্ত।
The Difference Between data() and buf2Buf() in Dynamics AX 2012
এই পোস্টের তথ্য Dynamics AX 2012 R3 এর উপর ভিত্তি করে তৈরি। এটি অন্যান্য সংস্করণের জন্য বৈধ হতে পারে আবার নাও হতে পারে।
যখন আপনাকে Dynamics AX-এ একটি টেবিল বাফার থেকে অন্য টেবিলে সমস্ত ক্ষেত্রের মান কপি করতে হবে, তখন আপনি ঐতিহ্যগতভাবে এরকম কিছু করবেন:
এটি ভালোভাবে কাজ করে এবং বেশিরভাগ ক্ষেত্রেই এটিই সঠিক উপায়।
তবে, আপনার কাছে buf2Buf ফাংশনটি ব্যবহার করার বিকল্পও রয়েছে:
এটাও ভালো কাজ করে। তাহলে পার্থক্যটা কী?
পার্থক্য হলো buf2Buf সিস্টেম ফিল্ড কপি করে না। সিস্টেম ফিল্ডের মধ্যে RecId, TableId এবং সম্ভবত সবচেয়ে গুরুত্বপূর্ণভাবে এই প্রসঙ্গে DataAreaId এর মতো ফিল্ড অন্তর্ভুক্ত থাকে। পরেরটি সবচেয়ে গুরুত্বপূর্ণ হওয়ার কারণ হল, data() এর পরিবর্তে buf2Buf() ব্যবহার করা সবচেয়ে সাধারণ ক্ষেত্রে, যখন আপনি কোম্পানির অ্যাকাউন্টগুলির মধ্যে রেকর্ড ডুপ্লিকেট করেন, সাধারণত changeCompany কীওয়ার্ড ব্যবহার করে।
উদাহরণস্বরূপ, যদি আপনি "dat" কোম্পানিতে থাকেন এবং "com" নামে আরেকটি কোম্পানি থাকে যেখান থেকে আপনি CustTable-এর সমস্ত রেকর্ড কপি করতে চান:
{
buf2Buf(custTableFrom, custTableTo);
custTableTo.insert();
}
এই ক্ষেত্রে, এটি কাজ করবে কারণ buf2Buf সিস্টেম ফিল্ড ছাড়া সমস্ত ফিল্ড মান নতুন বাফারে কপি করে। আপনি যদি data() ব্যবহার করতেন, তাহলে নতুন রেকর্ডটি "com" কোম্পানির অ্যাকাউন্টে ঢোকানো হত কারণ সেই মানটি নতুন বাফারেও কপি করা হত।
(আসলে, এটি একটি ডুপ্লিকেট কী ত্রুটির কারণ হত, কিন্তু আপনি যা চান তাও নয়)।
আরও পড়ুন
যদি আপনি এই পোস্টটি উপভোগ করেন, তাহলে আপনার এই পরামর্শগুলিও পছন্দ হতে পারে:
- ডায়নামিক্স এএক্স 2012 এ ম্যাক্রো এবং স্ট্রএফএমটি সহ স্ট্রিং ফর্ম্যাটিং
- ডায়নামিক্স এএক্স 2012 এ কোন সাবক্লাসটি তাত্ক্ষণিক করতে হবে তা খুঁজে বের করতে সিসএক্সটেনশন ফ্রেমওয়ার্ক ব্যবহার করে
- Dynamics AX 2012 SysOperation Framework দ্রুত ওভারভিউ
