Miklix

Dynamics 365'te Uzantı Aracılığıyla Görüntüleme veya Düzenleme Yöntemi Ekleme

Yayınlandı: 16 Şubat 2025 11:56:09 UTC
Son güncelleme: 12 Ocak 2026 08:57:30 UTC

Bu makalede, Dynamics 365 for Operations'ta bir tabloya ve forma görüntüleme yöntemi eklemek için sınıf uzantısının nasıl kullanılacağını açıklıyorum; X++ kod örnekleri de dahildir.


Bu sayfa, mümkün olduğunca çok kişi tarafından erişilebilir olması amacıyla İngilizce'den makine çevirisiyle çevrilmiştir. Ne yazık ki, makine çevirisi henüz mükemmelleştirilmiş bir teknoloji değildir, bu nedenle hatalar meydana gelebilir. Tercih ederseniz, orijinal İngilizce versiyonu buradan görüntüleyebilirsiniz:

Add Display or Edit Method via Extension in Dynamics 365

Dynamics'te görüntüleme veya düzenleme yöntemlerini kullanmayı planlamak, genellikle çözümünüzü farklı bir şekilde tasarlayıp tasarlayamayacağınızı düşünmenizi gerektiren bir durum olsa da, bazen bunlar en iyi yol olabilir.

Dynamics ve Axapta'nın önceki sürümlerinde, tablolar ve formlar üzerinde görüntüleme veya düzenleme yöntemleri oluşturmak çok kolaydı, ancak yakın zamanda Dynamics 365'te ilk düzenleme yöntemimi oluşturmam gerektiğinde, bunu yapma prosedürünün biraz farklı olduğunu keşfettim.

Açıkçası birçok geçerli yaklaşım var, ancak bana en uygun gelen (hem sezgisel hem de kod güzelliği açısından) yaklaşım sınıf uzantısı kullanmaktır. Evet, sınıf uzantılarını sınıflar dışındaki diğer öğe türlerine de yöntemler eklemek için kullanabilirsiniz - bu durumda bir tabloya, ancak formlar için de geçerlidir.

Öncelikle yeni bir sınıf oluşturun. Adını istediğiniz gibi koyabilirsiniz, ancak bir nedenden dolayı sonuna "_Extension" eklenmelidir. Diyelim ki CustTable'a bir görüntüleme yöntemi eklemeniz gerekiyor, örneğin adını MyCustTable_Extension olarak koyabilirsiniz.

Sistemin hangi sınıfı genişlettiğinizi anlaması için sınıfın ExtensionOf ile işaretlenmesi gerekir, şöyle:

[ExtensionOf(tableStr(CustTable))]
public final class MyCustTable_Extension
{
}

Artık bu sınıfta, Dynamics'in önceki sürümlerinde doğrudan tabloda yaptığınız gibi, görüntüleme yöntemini uygulayabilirsiniz; "this" ifadesi tabloya referans verdiği için alanlara ve diğer yöntemlere erişebilirsiniz.

Örneğin, müşterinin hesap numarasını döndüren basit (ve tamamen işe yaramaz) bir görüntüleme yöntemine sahip bir sınıf şöyle görünebilir:

[ExtensionOf(tableStr(CustTable))]
public final class MyCustTable_Extension
{
    public display CustAccount displayAccountNum()
    {
        ;

        return this.AccountNum;
    }
}

Şimdi, bir forma (veya formu doğrudan düzenleyemiyorsanız form uzantısına) görüntüleme yöntemini eklemek için, forma manuel olarak bir alan eklemeniz ve doğru türü (bu örnekte string) kullandığınızdan emin olmanız gerekir.

Ardından, kontrol üzerinde DataSource'u CustTable'a (veya CustTable veri kaynağınızın adına) ve DataMethod'u MyCustTable_Extension.displayAccountNum'a ayarlayın (sınıf adını eklediğinizden emin olun, aksi takdirde derleyici yöntemi bulamaz).

Ve işlem tamamlandı :-)

Güncelleme: Artık bir forma görüntüleme yöntemi eklerken uzantı sınıf adını eklemek gerekli değil, ancak ilk yayınlandığı sırada gerekliydi. Bazı okuyucuların hala eski sürümleri kullanıyor olabileceği ihtimaline karşı bilgiyi burada bırakıyorum.

Daha Fazla Okuma

Bu yazıyı beğendiyseniz, şu öneriler de ilginizi çekebilir:


Bluesky'de paylaşFacebook'ta paylaşLinkedIn'de paylaşTumblr'da paylaşX'te paylaşLinkedIn'de paylaşPinterest'e Pinleyin

Mikkel Christensen

Yazar Hakkında

Mikkel Christensen
Mikkel miklix.com'un yaratıcısı ve sahibidir. Profesyonel bilgisayar programcısı/yazılım geliştiricisi olarak 20 yılı aşkın deneyime sahiptir ve şu anda büyük bir Avrupa BT şirketinde tam zamanlı olarak çalışmaktadır. Blog yazmadığı zamanlarda, boş zamanlarını çok çeşitli ilgi alanları, hobiler ve aktivitelerle geçirmektedir ve bu da bir dereceye kadar bu web sitesinde kapsanan konuların çeşitliliğine yansıyabilir.