Bédana antara data () sareng buf2Buf () dina Dynamics AX 2012
Diterbitkeun: 15 Pébruari 2025 jam 22.56.10 UTC
Artikel ieu ngécéskeun béda antara buf2Buf () jeung data () métode dina Dinamika AX 2012, kaasup lamun éta luyu ngagunakeun unggal sarta hiji conto kode X ++.
The Difference Between data() and buf2Buf() in Dynamics AX 2012
Inpormasi dina tulisan ieu dumasar kana Dynamics AX 2012 R3. Ieu bisa atawa bisa jadi teu valid pikeun vérsi séjén.
Nalika anjeun kedah nyalin nilai sadaya widang tina hiji panyangga méja ka anu sanés dina Dynamics AX, anjeun sacara tradisional bakal ngalakukeun sapertos:
Ieu jalan ogé sarta di hal nu ilahar nyaeta jalan ka balik.
Nanging, anjeun ogé gaduh pilihan ngagunakeun fungsi buf2Buf tibatan:
Ieu jalan ogé ogé. Janten naon bédana?
Bédana nyaéta buf2Buf henteu nyalin widang sistem. Widang sistem kalebet widang sapertos RecId, TableId, sareng panginten anu paling penting dina kontéks ieu, DataAreaId. Alesan anu terakhir nyaéta anu paling penting nyaéta kasus anu paling umum dimana anjeun bakal nganggo buf2Buf () tibatan data () nyaéta nalika duplikat rékaman antara akun perusahaan, biasana ku ngagunakeun kecap konci changeCompany.
Contona, upami anjeun dina perusahaan "dat" sareng gaduh perusahaan sanés anu disebut "com" anu anjeun hoyong nyalin sadaya rékaman dina CustTable tina:
{
buf2Buf(custTableFrom, custTableTo);
custTableTo.insert();
}
Dina hal ieu, éta bakal dianggo sabab buf2Buf nyalin sadaya nilai widang, iwal widang sistem ka panyangga anyar. Upami anjeun nganggo data () tibatan, catetan anyar bakal diselapkeun dina akun perusahaan "com" sabab nilai éta bakal disalin kana panyangga anyar ogé.
(Saleresna, éta bakal nyababkeun kasalahan konci duplikat, tapi éta sanés anu anjeun pikahoyong).