Miklix

Tofauti kati ya data() na buf2Buf() katika Dynamics AX 2012

Iliyochapishwa: 15 Februari 2025, 22:54:20 UTC
Mara ya mwisho kusasishwa: 12 Januari 2026, 08:41:17 UTC

Makala haya yanaelezea tofauti kati ya mbinu za buf2Buf() na data() katika Dynamics AX 2012, ikiwa ni pamoja na wakati unaofaa kutumia kila moja na mfano wa msimbo wa X++.


Ukurasa huu ulitafsiriwa kwa mashine kutoka kwa Kiingereza ili kuifanya iweze kupatikana kwa watu wengi iwezekanavyo. Kwa bahati mbaya, utafsiri wa mashine bado sio teknolojia iliyokamilishwa, kwa hivyo makosa yanaweza kutokea. Ukipenda, unaweza kutazama toleo asili la Kiingereza hapa:

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

Taarifa katika chapisho hili inategemea Dynamics AX 2012 R3. Huenda ikawa halali au isiwe halali kwa matoleo mengine.

Unapohitaji kunakili thamani ya sehemu zote kutoka kwa bafa moja ya jedwali hadi nyingine katika Dynamics AX, kwa kawaida ungefanya kitu kama:

toTable.data(fromTable);

Hii inafanya kazi vizuri na katika hali nyingi ndiyo njia ya kufuata.

Hata hivyo, pia una chaguo la kutumia kitendakazi cha buf2Buf badala yake:

buf2Buf(fromTable, toTable);

Hii pia inafanya kazi vizuri. Kwa hivyo tofauti ni nini?

Tofauti ni kwamba buf2Buf hainakili sehemu za mfumo. Sehemu za mfumo zinajumuisha sehemu kama vile RecId, TableId, na labda muhimu zaidi katika muktadha huu, DataAreaId. Sababu ya mwisho ni muhimu zaidi ni kwamba hali ya kawaida ambapo ungetumia buf2Buf() badala ya data() ni wakati wa kunakili rekodi kati ya akaunti za kampuni, kwa kawaida kwa kutumia neno muhimu la changeCompany.

Kwa mfano, ikiwa uko katika kampuni ya "dat" na una kampuni nyingine inayoitwa "com" ambayo ungependa kunakili rekodi zote katika CustTable kutoka:

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

Katika hali hii, itafanya kazi kwa sababu buf2Buf hunakili thamani zote za sehemu, isipokuwa sehemu za mfumo kwenye bafa mpya. Kama ungetumia data() badala yake, rekodi mpya ingekuwa imeingizwa kwenye akaunti za kampuni ya "com" kwa sababu thamani hiyo ingekuwa imenakiliwa kwenye bafa mpya pia.

(Kwa kweli, ingesababisha hitilafu ya ufunguo unaorudiwa, lakini hiyo sio unayotaka pia).

Kusoma Zaidi

Ikiwa ulifurahia chapisho hili, unaweza pia kupenda mapendekezo haya:


Shiriki kwenye BlueskyShiriki kwenye FacebookShiriki kwenye LinkedInShiriki kwenye TumblrShiriki kwenye XShiriki kwenye LinkedInBandika kwenye Pinterest

Mikkel Christensen

Kuhusu Mwandishi

Mikkel Christensen
Mikkel ndiye muundaji na mmiliki wa miklix.com. Ana uzoefu wa zaidi ya miaka 20 kama mtaalamu wa kupanga programu/programu za kompyuta na kwa sasa ameajiriwa muda wote kwa shirika kubwa la IT la Ulaya. Wakati si kublogi, yeye hutumia wakati wake wa ziada kwenye safu nyingi za mapendeleo, vitu vya kufurahisha, na shughuli, ambazo zinaweza kuonyeshwa kwa kadiri fulani katika mada anuwai zinazozungumziwa kwenye wavuti hii.