Tambahkan Tampilan atau Edit Metode melalui Ekstensi di Dynamics 365
Diterbitkan: 16 Februari 2025 pukul 11.55.36 UTC
Dalam artikel ini, saya menjelaskan cara menggunakan ekstensi kelas untuk menambahkan metode tampilan ke tabel dan formulir di Dynamics 365 for Operations, contoh kode X++ disertakan.
Add Display or Edit Method via Extension in Dynamics 365
Meskipun berencana menggunakan metode tampilan atau edit di Dynamics adalah sesuatu yang umumnya harus membuat Anda mempertimbangkan apakah Anda mungkin dapat mendesain solusi Anda dengan cara berbeda, terkadang itu adalah cara terbaik.
Pada versi Dynamics dan Axapta sebelumnya, sangat mudah untuk membuat metode tampilan atau edit pada tabel dan formulir, tetapi ketika baru-baru ini saya harus membuat metode edit pertama saya di Dynamics 365, saya menemukan bahwa prosedur untuk melakukannya agak berbeda.
Jelas ada beberapa pendekatan yang valid, tetapi yang menurut saya terbaik (baik dari segi intuisi maupun keindahan kode) adalah menggunakan ekstensi kelas. Ya, Anda dapat menggunakan ekstensi kelas untuk menambahkan metode ke tipe elemen lain selain kelas - dalam hal ini tabel, tetapi cara ini juga berlaku untuk formulir.
Pertama, buat kelas baru. Anda dapat menamakannya apa pun yang Anda inginkan, tetapi untuk beberapa alasan kelas tersebut harus diberi akhiran "_Extension". Misalnya Anda perlu menambahkan metode tampilan ke CustTable, Anda dapat menamakannya MyCustTable_Extension.
Kelas harus didekorasi dengan ExtensionOf untuk memberi tahu sistem apa yang Anda perluas, seperti ini:
public final class MyCustTable_Extension
{
}
Sekarang Anda dapat mengimplementasikan metode tampilan di kelas ini, seperti yang Anda lakukan langsung pada tabel di versi Dynamics sebelumnya - "ini" bahkan merujuk ke tabel, sehingga Anda dapat mengakses bidang dan metode lainnya.
Misalnya, kelas dengan metode tampilan sederhana (dan sama sekali tidak berguna) yang hanya mengembalikan nomor rekening pelanggan dapat terlihat seperti ini:
public final class MyCustTable_Extension
{
public display CustAccount displayAccountNum()
{
;
return this.AccountNum;
}
}
Sekarang, untuk menambahkan metode tampilan ke formulir (atau ekstensi formulir, jika Anda tidak dapat mengedit formulir secara langsung), Anda perlu menambahkan bidang ke formulir secara manual dan pastikan untuk menggunakan jenis yang benar (string dalam contoh ini).
Kemudian, pada kontrol Anda akan menetapkan DataSource ke CustTable (atau apa pun nama sumber data CustTable Anda) dan DataMethod ke MyCustTable_Extension.displayAccountNum (pastikan untuk menyertakan nama kelas, jika tidak, kompiler tidak dapat menemukan metode tersebut).
Dan selesai :-)
Pembaruan: Tidak perlu lagi menyertakan nama kelas ekstensi saat menambahkan metode tampilan ke formulir, tetapi pada saat penerbitan awal, perlu. Saya meninggalkan informasi di sini jika ada pembaca yang masih menggunakan versi lama.