Dodajte način prikaza ali urejanja prek razširitve v Dynamics 365
Objavljeno: 16. februar 2025 ob 11:56:06 dop. UTC
Nazadnje posodobljeno: 12. januar 2026 ob 8:57:28 dop. UTC
V tem članku pojasnjujem, kako uporabiti razširitev razreda za dodajanje metode prikaza tabeli in obrazcu v storitvi Dynamics 365 for Operations, vključno s primeri kode X++.
Add Display or Edit Method via Extension in Dynamics 365
Čeprav je načrtovanje uporabe metod prikaza ali urejanja v Dynamicsu nekaj, kar bi vas na splošno moralo spodbuditi k razmisleku o tem, ali bi morda lahko svojo rešitev zasnovali drugače, so včasih to najboljša pot.
Prejšnjih različicah Dynamics in Axapte je bilo zelo enostavno ustvariti metode prikaza ali urejanja v tabelah in obrazcih, ko pa sem moral pred kratkim ustvariti svojo prvo metodo urejanja v Dynamics 365, sem ugotovil, da je postopek za to nekoliko drugačen.
Očitno obstaja več veljavnih pristopov, vendar se mi zdi najboljši (tako z vidika intuicije kot lepote kode) uporaba razširitve razreda. Da, razširitve razredov lahko uporabite za dodajanje metod drugim tipom elementov, ki niso razredi – v tem primeru tabeli, vendar deluje tudi za obrazce.
Najprej ustvarite nov razred. Lahko ga poimenujete kakor koli želite, vendar mora iz nekega razloga imeti pripono »_Extension«. Recimo, da morate v CustTable dodati metodo prikaza, lahko jo na primer poimenujete MojaCustTable_Extension.
Razred mora biti okrašen z atributom ExtensionOf, da sistem ve, kaj razširjate, takole:
public final class MyCustTable_Extension
{
}
Zdaj lahko preprosto implementirate svojo metodo prikaza v tem razredu, kot bi to storili neposredno v tabeli v prejšnjih različicah Dynamicsa – »to« se celo sklicuje na tabelo, tako da lahko dostopate do polj in drugih metod.
Na primer, razred s preprosto (in popolnoma neuporabno) metodo prikaza, ki vrne le številko računa stranke, bi lahko izgledal takole:
public final class MyCustTable_Extension
{
public display CustAccount displayAccountNum()
{
;
return this.AccountNum;
}
}
Če želite obrazcu (ali razširitvi obrazca, če obrazca ne morete neposredno urejati) dodati metodo prikaza, morate v obrazec ročno dodati polje in se prepričati, da uporabljate pravilno vrsto (v tem primeru niz).
Nato bi v kontrolniku nastavili DataSource na CustTable (ali karkoli že je ime vašega vira podatkov CustTable) in DataMethod na MyCustTable_Extension.displayAccountNum (ne pozabite vključiti imena razreda, sicer prevajalnik ne more najti metode).
In končali ste :-)
Posodobitev: Pri dodajanju metode prikaza v obrazec ni več potrebno vključiti imena razširitvenega razreda, vendar je bilo to ob prvotni objavi. Informacije puščam tukaj, če nekateri bralci še vedno uporabljajo starejše različice.
Nadaljnje branje
Če vam je bila ta objava všeč, vam bodo morda všeč tudi ti predlogi:
- Visual Studio se obesi ob zagonu med nalaganjem nedavnih projektov
- Posodobite vrednost finančne razsežnosti iz kode X++ v Dynamics 365
- Ustvarjanje iskalnega polja za finančno dimenzijo v Dynamics 365
