Miklix

Dynamics AX 2012-ലെ X++ കോഡിൽ നിന്ന് ഒരു ഇനത്തിന്റെ മൂലകങ്ങൾ എങ്ങനെ മറികടക്കാം

പ്രസിദ്ധീകരിച്ചത്: 2025, ഫെബ്രുവരി 15 11:15:41 PM UTC

ഒരു എക്സ് ++ കോഡ് ഉദാഹരണം ഉൾപ്പെടെ, ഡൈനാമിക്സ് AX 2012 ലെ ഒരു ബേസ് എനത്തിന്റെ ഘടകങ്ങൾ എങ്ങനെ എണ്ണാമെന്നും ലൂപ്പ് ചെയ്യാമെന്നും ഈ ലേഖനം വിശദീകരിക്കുന്നു.


ഈ പേജ് കഴിയുന്നത്ര ആളുകൾക്ക് ആക്‌സസ് ചെയ്യുന്നതിനായി ഇംഗ്ലീഷിൽ നിന്ന് മെഷീൻ വിവർത്തനം ചെയ്‌തിരിക്കുന്നു. നിർഭാഗ്യവശാൽ, മെഷീൻ വിവർത്തനം ഇതുവരെ പൂർണ്ണത നേടിയിട്ടില്ലാത്ത ഒരു സാങ്കേതികവിദ്യയാണ്, അതിനാൽ പിശകുകൾ സംഭവിക്കാം. നിങ്ങൾക്ക് താൽപ്പര്യമുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് ഇവിടെ യഥാർത്ഥ ഇംഗ്ലീഷ് പതിപ്പ് കാണാൻ കഴിയും:

How to Iterate Over the Elements of an Enum from X++ Code in Dynamics AX 2012

Dynamics AX 2012 R3 അടിസ്ഥാനമാക്കിയുള്ളതാണ് ഈ പോസ്റ്റിലെ വിവരങ്ങൾ. ഇത് മറ്റ് പതിപ്പുകൾക്ക് സാധുതയുള്ളതോ അല്ലാത്തതോ ആകാം.

ഒരു കണക്കിൽ ഓരോ മൂലകത്തിനും ഒരു മൂല്യം പ്രദർശിപ്പിക്കേണ്ട ഒരു ഫോം ഞാൻ അടുത്തിടെ സൃഷ്ടിക്കുകയായിരുന്നു. ഫീൽഡുകൾ സ്വമേധയാ സൃഷ്ടിക്കുന്നതിനുപകരം (എൻനം എപ്പോഴെങ്കിലും പരിഷ്കരിച്ചിട്ടുണ്ടെങ്കിൽ ഫോം നിലനിർത്തേണ്ടതുണ്ട്), ഇത് ചലനാത്മകമായി നടപ്പിലാക്കാൻ ഞാൻ തീരുമാനിച്ചു, അങ്ങനെ ഇത് യാന്ത്രികമായി രൂപകൽപ്പനയിലേക്ക് ഫീൽഡുകൾ ചേർക്കും.

എന്നിരുന്നാലും, ഒരു കണക്കിലെ മൂല്യങ്ങളെ ശരിക്കും വിശകലനം ചെയ്യുന്നത്, എങ്ങനെയെന്ന് നിങ്ങൾ അറിഞ്ഞുകഴിഞ്ഞാൽ എളുപ്പമാണെങ്കിലും, അൽപ്പം ആശയക്കുഴപ്പമുണ്ടാക്കുന്നുവെന്ന് ഞാൻ താമസിയാതെ കണ്ടെത്തി.

നിങ്ങൾ തീർച്ചയായും ഡിക്റ്റെനം ക്ലാസിൽ നിന്ന് ആരംഭിക്കേണ്ടതുണ്ട്. നിങ്ങൾ കാണും പോലെ, സൂചികയിൽ നിന്നും മൂല്യത്തിൽ നിന്നും പേര്, ലേബൽ തുടങ്ങിയ വിവരങ്ങൾ നേടുന്നതിന് ഈ ക്ലാസിന് നിരവധി രീതികളുണ്ട്.

സൂചികയും മൂല്യവും തമ്മിലുള്ള വ്യത്യാസം എന്തെന്നാൽ, സൂചിക എന്നത് എനത്തിലെ ഒരു മൂലകത്തിന്റെ സംഖ്യയാണ്, എന്നത്തിന്റെ മൂലകങ്ങൾ പൂജ്യത്തിൽ നിന്ന് ആരംഭിച്ച് തുടർച്ചയായി അക്കമിട്ടിട്ടുണ്ടെങ്കിൽ, മൂല്യം മൂലകത്തിന്റെ യഥാർത്ഥ "മൂല്യ" സ്വത്താണ്. മിക്ക കണക്കെടുപ്പുകൾക്കും 0 മുതൽ തുടർച്ചയായി അക്കമിട്ട മൂല്യങ്ങൾ ഉള്ളതിനാൽ, ഒരു മൂലകത്തിന്റെ സൂചികയും മൂല്യവും പലപ്പോഴും ഒന്നുതന്നെയായിരിക്കും , പക്ഷേ തീർച്ചയായും എല്ലായ്പ്പോഴും അല്ല.

എന്നാൽ ഒരു കണക്കിന് ഏതൊക്കെ മൂല്യങ്ങളുണ്ടെന്ന് നിങ്ങൾക്ക് എങ്ങനെ അറിയാം? ഇവിടെയാണ് ആശയക്കുഴപ്പം ഉണ്ടാകുന്നത്. ഡിക്റ്റെനം ക്ലാസിന് മൂല്യങ്ങൾ () എന്ന് വിളിക്കുന്ന ഒരു രീതിയുണ്ട്. ഈ രീതി എനത്തിന്റെ മൂല്യങ്ങളുടെ ഒരു ലിസ്റ്റ് തിരികെ നൽകുമെന്ന് നിങ്ങൾ പ്രതീക്ഷിക്കാം, പക്ഷേ അത് വളരെ എളുപ്പമായിരിക്കും, അതിനാൽ പകരം ഇത് എനത്തിൽ അടങ്ങിയിരിക്കുന്ന മൂല്യങ്ങളുടെ എണ്ണം നൽകുന്നു. എന്നിരുന്നാലും, മൂല്യങ്ങളുടെ എണ്ണത്തിന് യഥാർത്ഥ മൂല്യങ്ങളുമായി യാതൊരു ബന്ധവുമില്ല, അതിനാൽ മൂല്യാധിഷ്ഠിത രീതികളെയല്ല, സൂചിക അടിസ്ഥാനമാക്കിയുള്ള രീതികളെ വിളിക്കുന്നതിനുള്ള അടിസ്ഥാനമായി നിങ്ങൾ ഈ നമ്പർ ഉപയോഗിക്കേണ്ടതുണ്ട്.

പകരം അവർ ഈ രീതി സൂചികകൾ () എന്ന് പേരിട്ടിരുന്നെങ്കിൽ, അത് ആശയക്കുഴപ്പം കുറയ്ക്കുമായിരുന്നു ;-)

എക്സ് ++ ലെ അറേ, കണ്ടെയ്നർ സൂചികകളിൽ നിന്ന് വ്യത്യസ്തമായി, എൻനം മൂല്യങ്ങൾ (പ്രത്യക്ഷത്തിൽ ഈ "സൂചികകൾ") 0 ൽ ആരംഭിക്കുന്നുവെന്ന് ഓർമ്മിക്കുക, ഇത് 1 ൽ ആരംഭിക്കുന്നു, അതിനാൽ ഒരു കണക്കിലെ മൂലകങ്ങളെ ലൂപ്പ് ചെയ്യാൻ നിങ്ങൾക്ക് ഇതുപോലുള്ള എന്തെങ്കിലും ചെയ്യാൻ കഴിയും:

DictEnum dictEnum = new DictEnum(enumNum(SalesStatus));
Counter  c;
;

for (c = 0; c < dictEnum.values(); c++)
{
    info(strFmt('%1: %2', dictEnum.index2Symbol(c), dictEnum.index2Label(c)));
}

ഇത് കണക്കിലെ ഓരോ മൂലകത്തിന്റെയും ചിഹ്നവും ലേബലും ഇൻഫോലോഗിലേക്ക് ഔട്ട്പുട്ട് ചെയ്യും.

ബ്ലൂസ്കൈയിൽ പങ്കിടുകഫേസ്ബുക്കിൽ പങ്കിടുകLinkedIn-ൽ പങ്കിടുകTumblr-ൽ പങ്കിടുകX-ൽ പങ്കിടുകLinkedIn-ൽ പങ്കിടുകPinterest-ൽ പിൻ ചെയ്യുക

മിക്കൽ ബാങ് ക്രിസ്റ്റൻസൺ

എഴുത്തുകാരനെ കുറിച്ച്

മിക്കൽ ബാങ് ക്രിസ്റ്റൻസൺ
മിക്കൽ miklix.com ന്റെ സ്രഷ്ടാവും ഉടമയുമാണ്. ഒരു പ്രൊഫഷണൽ കമ്പ്യൂട്ടർ പ്രോഗ്രാമർ/സോഫ്റ്റ്‌വെയർ ഡെവലപ്പർ എന്ന നിലയിൽ 20 വർഷത്തിലേറെ പരിചയമുള്ള അദ്ദേഹം ഇപ്പോൾ ഒരു വലിയ യൂറോപ്യൻ ഐടി കോർപ്പറേഷനിൽ മുഴുവൻ സമയ ജോലിക്കാരനാണ്. ബ്ലോഗിംഗ് അല്ലാത്തപ്പോൾ, അദ്ദേഹം തന്റെ ഒഴിവു സമയം വിവിധ താൽപ്പര്യങ്ങൾ, ഹോബികൾ, പ്രവർത്തനങ്ങൾ എന്നിവയിൽ ചെലവഴിക്കുന്നു, ഇത് ഒരു പരിധിവരെ ഈ വെബ്‌സൈറ്റിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന വിഷയങ്ങളിൽ പ്രതിഫലിച്ചേക്കാം.