Miklix

ડાયનેમિક્સ 365 માં એક્સટેન્શન દ્વારા ડિસ્પ્લે અથવા એડિટ પદ્ધતિ ઉમેરો

પ્રકાશિત: 16 ફેબ્રુઆરી, 2025 એ 11:57:37 AM UTC વાગ્યે

આ લેખમાં, હું સમજાવું છું કે ડાયનેમિક્સ 365 માં ઓપરેશન્સ માટે ટેબલ અને ફોર્મમાં ડિસ્પ્લે મેથડ ઉમેરવા માટે ક્લાસ એક્સટેન્શનનો ઉપયોગ કેવી રીતે કરવો, X++ કોડ ઉદાહરણો શામેલ છે.


આ પૃષ્ઠ શક્ય તેટલા વધુ લોકો સુધી સુલભ બને તે માટે અંગ્રેજીમાંથી મશીન અનુવાદ કરવામાં આવ્યો હતો. કમનસીબે, મશીન અનુવાદ હજુ સુધી સંપૂર્ણ તકનીક નથી, તેથી ભૂલો થઈ શકે છે. જો તમે ઇચ્છો, તો તમે મૂળ અંગ્રેજી સંસ્કરણ અહીં જોઈ શકો છો:

Add Display or Edit Method via Extension in Dynamics 365

ડાયનેમિક્સમાં ડિસ્પ્લે અથવા એડિટ પદ્ધતિઓનો ઉપયોગ કરવાની યોજના બનાવવી એ એવી બાબત છે જે સામાન્ય રીતે તમને વિચારવા માટે મજબૂર કરે છે કે શું તમે કદાચ તમારા સોલ્યુશનને અલગ રીતે ડિઝાઇન કરી શકો છો, ક્યારેક ક્યારેક તે શ્રેષ્ઠ માર્ગ હોય છે.

ડાયનેમિક્સ અને એક્સાપ્ટાના પહેલાના વર્ઝનમાં, ટેબલ અને ફોર્મ્સ પર ડિસ્પ્લે અથવા એડિટ પદ્ધતિઓ બનાવવી ખૂબ જ સરળ હતી, પરંતુ જ્યારે મને તાજેતરમાં ડાયનેમિક્સ 365 માં મારી પહેલી એડિટ પદ્ધતિ બનાવવાની તક મળી, ત્યારે મને ખબર પડી કે આમ કરવાની પ્રક્રિયા થોડી અલગ છે.

દેખીતી રીતે ઘણા માન્ય અભિગમો છે, પરંતુ મને સૌથી શ્રેષ્ઠ લાગે છે (અંતર્જાત અને કોડ સુંદરતાની દ્રષ્ટિએ) ક્લાસ એક્સટેન્શનનો ઉપયોગ કરવો. હા, તમે ક્લાસ સિવાય અન્ય એલિમેન્ટ પ્રકારોમાં પદ્ધતિઓ ઉમેરવા માટે ક્લાસ એક્સટેન્શનનો ઉપયોગ કરી શકો છો - આ કિસ્સામાં ટેબલ, પરંતુ તે ફોર્મ્સ માટે પણ કામ કરે છે.

સૌપ્રથમ, એક નવો ક્લાસ બનાવો. તમે તેને ગમે તે નામ આપી શકો છો, પરંતુ કોઈ કારણોસર તેનો પ્રત્યય "_Extension" હોવો જોઈએ . ધારો કે તમારે CustTable માં એક ડિસ્પ્લે મેથડ ઉમેરવાની જરૂર છે, ઉદાહરણ તરીકે, તમે તેને MyCustTable_Extension નામ આપી શકો છો.

તમે શું એક્સટેન્ડ કરી રહ્યા છો તે સિસ્ટમને જણાવવા માટે ક્લાસને ExtensionOf થી શણગારેલો હોવો જોઈએ, જેમ કે:

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

હવે તમે આ વર્ગમાં તમારી ડિસ્પ્લે પદ્ધતિનો અમલ કરી શકો છો, જેમ તમે ડાયનેમિક્સના પહેલાના સંસ્કરણોમાં સીધા ટેબલ પર કર્યું હોત - "આ" ટેબલનો સંદર્ભ પણ આપે છે, જેથી તમે ફીલ્ડ્સ અને અન્ય પદ્ધતિઓનો ઉપયોગ કરી શકો.

ઉદાહરણ તરીકે, એક સરળ (અને સંપૂર્ણપણે નકામી) ડિસ્પ્લે પદ્ધતિ ધરાવતો વર્ગ જે ફક્ત ગ્રાહકનો એકાઉન્ટ નંબર પરત કરે છે તે આના જેવો દેખાઈ શકે છે:

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

        return this.AccountNum;
    }
}

હવે, ફોર્મમાં ડિસ્પ્લે મેથડ ઉમેરવા માટે (અથવા ફોર્મ એક્સટેન્શન, જો તમે સીધા ફોર્મને સંપાદિત કરી શકતા નથી), તમારે ફોર્મમાં મેન્યુઅલી એક ફીલ્ડ ઉમેરવાની જરૂર છે અને ખાતરી કરો કે તમે સાચો પ્રકાર (આ ઉદાહરણમાં સ્ટ્રિંગ) વાપર્યો છે.

પછી, કંટ્રોલ પર તમે ડેટાસોર્સને CustTable (અથવા તમારા CustTable ડેટા સોર્સનું નામ ગમે તે હોય) અને DataMethod ને MyCustTable_Extension.displayAccountNum પર સેટ કરશો (ક્લાસનું નામ શામેલ કરવાનું ભૂલશો નહીં, નહીં તો કમ્પાઇલર પદ્ધતિ શોધી શકશે નહીં).

અને તમે પૂર્ણ કરી લીધું :-)

અપડેટ: ફોર્મમાં ડિસ્પ્લે મેથડ ઉમેરતી વખતે હવે એક્સટેન્શન ક્લાસનું નામ શામેલ કરવું જરૂરી નથી, પરંતુ પ્રકાશનના મૂળ સમયે, તે જરૂરી હતું. જો કેટલાક વાચકો હજુ પણ જૂના સંસ્કરણોનો ઉપયોગ કરી રહ્યા હોય તો હું માહિતી અહીં છોડી રહ્યો છું.

બ્લુસ્કી પર શેર કરોફેસબુક પર શેર કરોLinkedIn પર શેર કરોટમ્બલર પર શેર કરોX પર શેર કરોLinkedIn પર શેર કરોPinterest પર પિન કરો

મિકેલ બેંગ ક્રિસ્ટેનસેન

લેખક વિશે

મિકેલ બેંગ ક્રિસ્ટેનસેન
મિકેલ miklix.com ના સર્જક અને માલિક છે. તેમને એક વ્યાવસાયિક કમ્પ્યુટર પ્રોગ્રામર/સોફ્ટવેર ડેવલપર તરીકે 20 વર્ષથી વધુનો અનુભવ છે અને હાલમાં તેઓ એક મોટા યુરોપિયન IT કોર્પોરેશનમાં પૂર્ણ-સમય કાર્યરત છે. જ્યારે તેઓ બ્લોગિંગ કરતા નથી, ત્યારે તેઓ પોતાનો ફાજલ સમય વિવિધ રુચિઓ, શોખ અને પ્રવૃત્તિઓ પર વિતાવે છે, જે આ વેબસાઇટ પર આવરી લેવામાં આવેલા વિવિધ વિષયોમાં પ્રતિબિંબિત થઈ શકે છે.