Miklix

Pridėkite rodymo arba redagavimo metodą naudodami plėtinį sistemoje „Dynamics 365“.

Paskelbta: 2025 m. vasario 16 d. 11:55:43 UTC

Šiame straipsnyje paaiškinu, kaip naudoti klasės plėtinį, norint pridėti rodymo metodą prie lentelės ir formos sistemoje „Dynamics 365 for Operations“, įskaitant X++ kodo pavyzdžius.


Šis puslapis buvo mašininiu būdu išverstas iš anglų kalbos, kad juo galėtų naudotis kuo daugiau žmonių. Deja, mašininis vertimas dar nėra tobula technologija, todėl gali pasitaikyti klaidų. Jei pageidaujate, originalią versiją anglų kalba galite peržiūrėti čia:

Add Display or Edit Method via Extension in Dynamics 365

Nors planuojate naudoti rodymo ar redagavimo metodus sistemoje „Dynamics“, paprastai turėtumėte apsvarstyti, ar galbūt galėtumėte sukurti savo sprendimą kitaip, kartais jie yra geriausias būdas.

Ankstesnėse „Dynamics“ ir „Axapta“ versijose buvo labai lengva sukurti rodymo ar redagavimo metodus lentelėse ir formose, tačiau kai neseniai teko atlikti pirmąjį redagavimo metodą „Dynamics 365“, pastebėjau, kad to atlikimo procedūra yra šiek tiek kitokia.

Akivaizdu, kad yra keletas pagrįstų metodų, bet man geriausias (tiek intuityvumo, tiek kodo gražumo požiūriu) yra naudoti klasės plėtinį. Taip, galite naudoti klasių plėtinius, kad pridėtumėte metodus prie kitų elementų tipų, o ne į klases – šiuo atveju lentelę, bet tai tinka ir formoms.

Pirmiausia sukurkite naują klasę. Galite pavadinti jį kaip tik norite, bet dėl ​​kokių nors priežasčių jis turi būti su prierašu "_Plėtinys". Tarkime, kad prie CustTable reikia pridėti rodymo metodą, pavyzdžiui, galite pavadinti jį MyCustTable_Extension.

Klasė turi būti papuošta ExtensionOf, kad sistema žinotų, ką pratęsiate, pavyzdžiui:

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

Dabar galite tiesiog įdiegti savo rodymo metodą šioje klasėje, kaip tai darytumėte tiesiai ant lentelės ankstesnėse Dynamics versijose – „tai“ netgi nurodo lentelę, todėl galite pasiekti laukus ir kitus metodus.

Pavyzdžiui, klasė su paprastu (ir visiškai nenaudingu) rodymo metodu, kuris tiesiog grąžina kliento sąskaitos numerį, gali atrodyti taip:

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

        return this.AccountNum;
    }
}

Dabar, norėdami pridėti rodymo metodą prie formos (arba formos plėtinio, jei negalite tiesiogiai redaguoti formos), turite rankiniu būdu pridėti lauką prie formos ir įsitikinti, kad naudojate tinkamą tipą (eilutė šiame pavyzdyje).

Tada valdiklyje nustatykite „DataSource“ į „CustTable“ (arba bet kokį „CustTable“ duomenų šaltinio pavadinimą), o „DataMethod“ – į MyCustTable_Extension.displayAccountNum (įsitikinkite, kad įtraukite klasės pavadinimą, kitaip kompiliatorius negalės rasti metodo).

Ir baigei :-)

Atnaujinimas: Nebereikia įtraukti plėtinio klasės pavadinimo į formą įtraukiant rodymo metodą, tačiau pradiniu paskelbimo metu jis buvo. Palieku informaciją čia, jei kai kurie skaitytojai vis dar naudoja senesnes versijas.

Pasidalinkite „Bluesky“.Dalintis FacebookBendrinkite „LinkedIn“.Bendrinkite „Tumblr“.Dalintis XBendrinkite „LinkedIn“.Prisegti prie Pinterest

Mikkel Bang Christensen

Apie autorių

Mikkel Bang Christensen
Mikkelis yra miklix.com kūrėjas ir savininkas. Jis turi daugiau nei 20 metų profesionalaus kompiuterių programuotojo ir programinės įrangos kūrėjo patirtį ir šiuo metu visą darbo dieną dirba didelėje Europos IT korporacijoje. Kai jis nerašo tinklaraščio, laisvalaikį skiria įvairiems interesams, pomėgiams ir užsiėmimams, kurie tam tikra prasme gali atsispindėti šioje svetainėje nagrinėjamų temų įvairovėje.