Miklix

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

Objavljeno: 16. veljače 2025. u 11:57:40 UTC
Zadnje ažuriranje: 12. siječnja 2026. u 08:57:46 UTC

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


Ova je stranica strojno prevedena s engleskog kako bi bila dostupna što većem broju ljudi. Nažalost, strojno prevođenje još nije usavršena tehnologija pa se mogu pojaviti pogreške. Ako želite, izvornu englesku verziju možete pogledati 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 potaknuti da razmislite o tome možete li možda dizajnirati svoje rješenje na drugačiji način, ponekad su to najbolji način.

Prethodnim verzijama Dynamicsa i Axapte bilo je vrlo jednostavno stvoriti metode prikaza ili uređivanja na tablicama 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čito 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 tablici, ali to funkcionira i za obrasce.

Prvo, stvorite 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 s ExtensionOf kako bi sustav znao što proširujete, ovako:

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

Sada možete jednostavno implementirati svoju metodu prikaza u ovoj klasi, kao što biste to učinili izravno na tablici u ranijim verzijama Dynamicsa - "ovo" čak referencira tablicu, 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 obrascu (ili proširenju obrasca, ako ne možete izravno uređivati obrazac) dodali metodu prikaza, morate ručno dodati polje obrascu i provjeriti koristite li 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 izvornog objavljivanja bilo je. Ostavljam informacije ovdje u slučaju da neki čitatelji još uvijek koriste starije verzije.

Dodatno čitanje

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


Podijeli na BlueskyPodijelite na FacebookuPodijelite na LinkedInuPodijelite na TumblrPodijeli na XPodijelite na LinkedInuPrikvači na Pinterest

Mikkel Christensen

O autoru

Mikkel Christensen
Mikkel je kreator i vlasnik miklix.com. Ima više od 20 godina iskustva kao profesionalni računalni programer/razvijač softvera i trenutno je zaposlen na puno radno vrijeme za veliku europsku IT korporaciju. Kada ne piše blog, svoje slobodno vrijeme provodi na široku lepezu interesa, hobija i aktivnosti, što se u određenoj mjeri može odraziti na različite teme obrađene na ovoj web stranici.