Dynamics AX 2012'de data() ve buf2Buf() Arasındaki Fark
Yayınlandı: 15 Şubat 2025 22:54:05 UTC
Son güncelleme: 12 Ocak 2026 08:41:12 UTC
Bu makale, Dynamics AX 2012'deki buf2Buf() ve data() yöntemleri arasındaki farkları, her birinin ne zaman kullanılmasının uygun olduğunu ve bir X++ kod örneğini açıklamaktadır.
The Difference Between data() and buf2Buf() in Dynamics AX 2012
Bu yazıda yer alan bilgiler Dynamics AX 2012 R3'e dayanmaktadır. Diğer sürümler için geçerli olabilir veya olmayabilir.
Dynamics AX'te bir tablo arabelleğindeki tüm alanların değerini başka bir tablo arabelleğine kopyalamanız gerektiğinde, geleneksel olarak şöyle bir şey yaparsınız:
Bu yöntem iyi sonuç veriyor ve çoğu durumda tercih edilmesi gereken yöntemdir.
Ancak, bunun yerine buf2Buf fonksiyonunu kullanma seçeneğiniz de mevcuttur:
Bu da iyi çalışıyor. Peki fark ne?
Aradaki fark, buf2Buf'un sistem alanlarını kopyalamamasıdır. Sistem alanları arasında RecId, TableId ve belki de bu bağlamda en önemlisi olan DataAreaId gibi alanlar bulunur. İkincisinin en önemli olmasının nedeni, buf2Buf() işlevini data() yerine kullanacağınız en tipik durumun, genellikle changeCompany anahtar kelimesi kullanılarak şirket hesapları arasında kayıtları çoğaltmak olmasıdır.
Örneğin, "dat" şirketindeyseniz ve "com" adlı başka bir şirketten CustTable'daki tüm kayıtları kopyalamak istiyorsanız:
{
buf2Buf(custTableFrom, custTableTo);
custTableTo.insert();
}
Bu durumda, buf2Buf fonksiyonu sistem alanları hariç tüm alan değerlerini yeni arabelleğe kopyaladığı için çalışacaktır. Eğer bunun yerine data() fonksiyonunu kullansaydınız, yeni kayıt "com" şirket hesaplarına eklenirdi çünkü bu değer de yeni arabelleğe kopyalanırdı.
(Aslında bu, yinelenen anahtar hatasına yol açacaktı, ancak bunu da istemezsiniz zaten.)
Daha Fazla Okuma
Bu yazıyı beğendiyseniz, şu öneriler de ilginizi çekebilir:
- Dynamics AX 2012'de X++ Kodundan Bir Enumun Elemanları Üzerinde Yineleme Nasıl Yapılır
- Dynamics AX 2012'de Hangi Alt Sınıfın Örneklendirileceğini Bulmak İçin SysExtension Çerçevesini Kullanma
- Dynamics AX 2012 SysOperation Framework Hızlı Genel Bakış
