Miklix

डाइनामिक्स एएक्स २०१२ मा डेटा () र बुफ २ बुफ () बीचको भिन्नता

प्रकाशित: २०२५ फेब्रुअरी १५: २२:५६:११ UTC
पछिल्लो पटक अद्यावधिक गरिएको: २०२६ जनवरी १२: ०८:४१:२७ UTC

यस लेखले Dynamics AX २०१२ मा buf2Buf() र data() विधिहरू बीचको भिन्नताहरू व्याख्या गर्दछ, जसमा प्रत्येक र X++ कोड उदाहरण कहिले प्रयोग गर्नु उपयुक्त हुन्छ भन्ने कुरा समावेश छ।


यो पृष्ठलाई सकेसम्म धेरै मानिसहरूको पहुँचयोग्य बनाउनको लागि अंग्रेजीबाट मेसिन अनुवाद गरिएको थियो। दुर्भाग्यवश, मेसिन अनुवाद अझै पूर्ण प्रविधि होइन, त्यसैले त्रुटिहरू हुन सक्छन्। यदि तपाईं चाहनुहुन्छ भने, तपाईं यहाँ मूल अंग्रेजी संस्करण हेर्न सक्नुहुन्छ:

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

यस पोस्टमा भएको जानकारी Dynamics AX २०१२ R3 मा आधारित छ। यो अन्य संस्करणहरूको लागि मान्य हुन पनि सक्छ वा नहुन पनि सक्छ।

जब तपाईंलाई Dynamics AX मा एउटा टेबल बफरबाट अर्को टेबल बफरमा सबै फिल्डहरूको मान प्रतिलिपि गर्न आवश्यक पर्दछ, तपाईंले परम्परागत रूपमा केहि गर्नुहुनेछ:

toTable.data(fromTable);

यो राम्रोसँग काम गर्छ र धेरैजसो अवस्थामा यो नै उत्तम उपाय हो।

यद्यपि, तपाईंसँग यसको सट्टा buf2Buf प्रकार्य प्रयोग गर्ने विकल्प पनि छ:

buf2Buf(fromTable, toTable);

यो पनि राम्रोसँग काम गर्छ। त्यसो भए के फरक छ?

फरक यो हो कि buf2Buf ले प्रणाली क्षेत्रहरूको प्रतिलिपि गर्दैन। प्रणाली क्षेत्रहरूमा RecId, TableId, र सायद यस सन्दर्भमा सबैभन्दा महत्त्वपूर्ण कुरा, DataAreaId जस्ता क्षेत्रहरू समावेश छन्। पछिल्लो सबैभन्दा महत्त्वपूर्ण हुनुको कारण यो हो कि तपाईंले data() को सट्टा buf2Buf() प्रयोग गर्नुहुने सबैभन्दा सामान्य केस भनेको कम्पनी खाताहरू बीच रेकर्डहरू डुप्लिकेट गर्दा हो, सामान्यतया changeCompany किवर्ड प्रयोग गरेर।

उदाहरणका लागि, यदि तपाईं "dat" कम्पनीमा हुनुहुन्छ र "com" नामक अर्को कम्पनी छ जसबाट तपाईं CustTable मा सबै रेकर्डहरू प्रतिलिपि गर्न चाहनुहुन्छ भने:

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

यस अवस्थामा, यो काम गर्नेछ किनभने buf2Buf ले प्रणाली फिल्डहरू बाहेक सबै फिल्ड मानहरू नयाँ बफरमा प्रतिलिपि गर्दछ। यदि तपाईंले यसको सट्टा data() प्रयोग गर्नुभएको भए, नयाँ रेकर्ड "com" कम्पनी खाताहरूमा सम्मिलित हुने थियो किनभने त्यो मान नयाँ बफरमा पनि प्रतिलिपि हुने थियो।

(वास्तवमा, यसले डुप्लिकेट कुञ्जी त्रुटि निम्त्याउने थियो, तर त्यो पनि तपाईंले चाहनुभएको कुरा होइन)।

थप पढाइ

यदि तपाईंलाई यो पोस्ट मन पर्यो भने, तपाईंलाई यी सुझावहरू पनि मन पर्न सक्छन्:


ब्लुस्कीमा सेयर गर्नुहोस्फेसबुक मा शेयर गर्नुहोस्लिंक्डइनमा सेयर गर्नुहोस्Tumblr मा सेयर गर्नुहोस्X मा सेयर गर्नुहोस्लिंक्डइनमा सेयर गर्नुहोस्Pinterest मा पिन गर्नुहोस्

मिकेल क्रिस्टेनसेन

लेखकको बारेमा

मिकेल क्रिस्टेनसेन
मिकेल miklix.com का निर्माता र मालिक हुन्। उनीसँग एक पेशेवर कम्प्युटर प्रोग्रामर/सफ्टवेयर विकासकर्ताको रूपमा २० वर्ष भन्दा बढीको अनुभव छ र हाल उनी एक ठूलो युरोपेली आईटी निगममा पूर्ण-समय कार्यरत छन्। ब्लगिङ नगर्दा, उनी आफ्नो खाली समय विभिन्न रुचि, शौक र गतिविधिहरूमा बिताउँछन्, जुन केही हदसम्म यस वेबसाइटमा समेटिएका विषयहरूको विविधतामा प्रतिबिम्बित हुन सक्छ।