Miklix

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

Paskelbta: 2025 m. vasario 16 d. 11:55:43 UTC
Paskutinį kartą atnaujinta: 2026 m. sausio 12 d. 08:57:23 UTC

Šiame straipsnyje paaiškinu, kaip naudoti klasės plėtinį norint pridėti rodymo metodą prie lentelės ir formos „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 planuojant naudoti rodymo arba redagavimo metodus „Dynamics“ sistemoje paprastai reikėtų apsvarstyti, ar galėtumėte savo sprendimą sukurti kitaip, kartais tai yra geriausias būdas.

Ankstesnėse „Dynamics“ ir „Axapta“ versijose buvo labai lengva kurti rodymo arba redagavimo metodus lentelėse ir formose, bet kai neseniai teko sukurti savo pirmąjį redagavimo metodą „Dynamics 365“, atradau, kad tai daroma šiek tiek kitaip.

Akivaizdu, kad yra keletas tinkamų metodų, tačiau man geriausias (tiek intuityvumo, tiek kodo gražumo požiūriu) yra klasės plėtinio naudojimas. Taip, klasės plėtinius galite naudoti norėdami pridėti metodus prie kitų tipų elementų, o ne tik prie klasių – šiuo atveju lentelių, bet tai tinka ir formoms.

Pirmiausia sukurkite naują klasę. Galite ją pavadinti kaip norite, bet dėl kažkokių priežasčių ji turi būti pavadinta „_Extension“. Tarkime, kad jums reikia pridėti rodymo metodą prie „CustTable“, pavyzdžiui, galite ją pavadinti „MyCustTable_Extension“.

Klasė turi būti papuošta „ExtensionOf“, kad sistema žinotų, ką plečiate, štai taip:

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

Dabar galite tiesiog įdiegti savo rodymo metodą šioje klasėje, kaip tai darytumėte tiesiogiai lentelėje 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 grąžina tik kliento sąskaitos numerį, galėtų 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 teisingą tipą (šiame pavyzdyje – eilutę).

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

Ir baigėte :-)

Atnaujinimas: pridedant rodymo metodą prie formos, nebereikia įtraukti plėtinio klasės pavadinimo, tačiau pradinio paskelbimo metu tai buvo būtina. Palieku šią informaciją čia, jei kai kurie skaitytojai vis dar naudoja senesnes versijas.

Papildoma literatūra

Jei jums patiko šis įrašas, jums taip pat gali patikti šie pasiūlymai:


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

Mikkel Christensen

Apie autorių

Mikkel 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.