Miklix

Dodajte metodu prikaza ili uređivanja putem proširenja u Dynamics 365

Objavljeno: 16. februar 2025. u 11:57:08 UTC
Posljednje ažurirano: 12. januar 2026. u 08:57:45 UTC

U ovom članku objašnjavam kako koristiti proširenje klase za dodavanje metode prikaza tabeli i obrascu u Dynamics 365 for Operations, uključujući primjere X++ koda.


Ova stranica je mašinski prevedena sa engleskog kako bi bila dostupna što većem broju ljudi. Nažalost, mašinsko prevođenje još nije usavršena tehnologija, pa može doći do grešaka. Ako želite, možete pogledati originalnu englesku verziju ovdje:

Add Display or Edit Method via Extension in Dynamics 365

Iako je planiranje korištenja metoda prikaza ili uređivanja u Dynamicsu nešto što bi vas općenito trebalo navesti da razmislite o tome da li biste možda mogli dizajnirati svoje rješenje na drugačiji način, ponekad su to najbolji način.

Prethodnim verzijama Dynamicsa i Axapte bilo je vrlo lako kreirati metode prikaza ili uređivanja na tabelama i obrascima, ali kada sam nedavno morao napraviti svoju prvu metodu uređivanja u Dynamicsu 365, otkrio sam da je postupak za to donekle drugačiji.

Očigledno postoji nekoliko valjanih pristupa, ali onaj koji smatram najboljim (i u smislu intuitivnosti i ljepote koda) je korištenje proširenja klase. Da, možete koristiti proširenja klase za dodavanje metoda drugim tipovima elemenata osim klasa - u ovom slučaju tabeli, ali to funkcioniše i za obrasce.

Prvo, kreirajte novu klasu. Možete je nazvati kako god želite, ali iz nekog razloga mora imati sufiks "_Extension". Recimo da trebate dodati metodu prikaza u CustTable, možete je na primjer nazvati MyCustTable_Extension.

Klasa mora biti ukrašena sa ExtensionOf kako bi sistem znao šta proširujete, ovako:

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

Sada možete implementirati svoju metodu prikaza u ovoj klasi, kao što biste to uradili direktno na tabeli u ranijim verzijama Dynamicsa - "ovo" čak referencira tabelu, tako da možete pristupiti poljima i drugim metodama.

Na primjer, klasa s jednostavnom (i potpuno beskorisnom) metodom prikaza koja samo vraća broj računa kupca mogla bi izgledati ovako:

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

        return this.AccountNum;
    }
}

Sada, da biste dodali metodu prikaza obrascu (ili proširenju obrasca, ako ne možete direktno uređivati obrazac), potrebno je ručno dodati polje obrascu i uvjeriti se da koristite ispravan tip (niz znakova u ovom primjeru).

Zatim biste na kontroli postavili DataSource na CustTable (ili kako god se zove vaš izvor podataka CustTable) i DataMethod na MyCustTable_Extension.displayAccountNum (obavezno uključite naziv klase, inače kompajler neće moći pronaći metodu).

I gotovi ste :-)

Ažuriranje: Više nije potrebno uključiti naziv klase proširenja prilikom dodavanja metode prikaza u obrazac, ali u vrijeme originalnog objavljivanja bilo je. Ostavljam informacije ovdje u slučaju da neki čitaoci još uvijek koriste starije verzije.

Dodatno čitanje

Ako vam se svidio ovaj post, možda će vam se svidjeti i ovi prijedlozi:


Podijelite na BlueskyPodijelite na FacebookuPodijelite na LinkedIn-uPodijelite na Tumblr-uPodijeli na XPodijelite na LinkedIn-uPrikači na Pinterest

Mikkel Christensen

O autoru

Mikkel Christensen
Mikkel je kreator i vlasnik miklix.com. Ima preko 20 godina iskustva kao profesionalni kompjuterski programer/programer softvera i trenutno je zaposlen sa punim radnim vremenom u velikoj evropskoj IT korporaciji. Kada ne piše blog, svoje slobodno vrijeme provodi na širokom spektru interesovanja, hobija i aktivnosti, što se u određenoj mjeri može odraziti na različite teme koje se obrađuju na ovoj web stranici.