Miklix

Додајте метод приказа или измене преко проширења у Динамицс 365

Објављено: 16. фебруар 2025. 11:59:55 UTC

У овом чланку објашњавам како да користите екстензију класе за додавање методе приказа табели и обрасцу у Динамицс 365 фор Оператионс, укључујући примере Кс++ кода.


Ова страница је машински преведена са енглеског како би била доступна што већем броју људи. Нажалост, машинско превођење још увек није усавршена технологија, тако да може доћи до грешака. Ако желите, можете погледати оригиналну енглеску верзију овде:

Add Display or Edit Method via Extension in Dynamics 365

Иако је планирање коришћења метода приказа или уређивања у Динамицс-у нешто што би вас генерално требало навести да размислите да ли бисте можда могли да дизајнирате своје решење на другачији начин, повремено су они најбољи начин.

У претходним верзијама Динамицс-а и Акапта-е било је веома лако креирати методе приказа или уређивања на табелама и обрасцима, али када сам недавно морао да направим свој први метод уређивања у Динамицс 365, открио сам да је процедура за то нешто другачија.

Очигледно постоји неколико валидних приступа, али за мене је најбољи (и у смислу интуитивности и лепоте кода) коришћење проширења класе. Да, можете користити екстензије класа да додате методе другим типовима елемената осим класама – у овом случају табела, али то функционише и за форме.

Прво направите нову класу. Можете га именовати како год желите, али из неког разлога мора имати суфикс "_Ектенсион". Рецимо да морате да додате метод приказа у ЦустТабле, можете га на пример назвати МиЦустТабле_Ектенсион.

Класа мора бити украшена ЕктенсионОф да би систем знао шта проширујете, на пример:

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

Сада можете само да имплементирате свој метод приказа у овој класи, као што бисте то урадили директно на табели у ранијим верзијама Динамицс-а – „ово“ чак упућује на табелу, тако да можете приступити пољима и другим методама.

На пример, класа са једноставном (и потпуно бескорисном) методом приказа која само враћа број рачуна клијента може изгледати овако:

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

        return this.AccountNum;
    }
}

Сада, да бисте додали метод приказа у образац (или екстензију обрасца, ако не можете директно да уређујете образац), морате ручно да додате поље у образац и обавезно користите исправан тип (стринг у овом примеру).

Затим, на контроли бисте поставили ДатаСоурце на ЦустТабле (или било шта друго име вашег извора података ЦустТабле) и ДатаМетход на МиЦустТабле_Ектенсион.дисплаиАццоунтНум (обавезно укључите име класе, иначе компајлер не може да пронађе метод).

И готови сте :-)

Ажурирање: Више није потребно укључити назив класе екстензије приликом додавања методе приказа у образац, али у првобитно време објављивања јесте. Остављам информације овде у случају да неки читаоци још увек користе старије верзије.

Поделите на БлуескиПоделите на ФејсбукуДелите на ЛинкедИнуПодели на Тумблр-уПодели на КсДелите на ЛинкедИнуПин на Пинтерест-у

Миккел Банг Кристенсен

О аутору

Миккел Банг Кристенсен
Миккел је креатор и власник миклик.цом. Има преко 20 година искуства као професионални компјутерски програмер/програмер софтвера и тренутно је запослен са пуним радним временом у великој европској ИТ корпорацији. Када не пише блог, своје слободно време проводи на широком спектру интересовања, хобија и активности, што се у извесној мери може одразити на разноврсност тема обрађених на овој веб страници.