Filtravimas MS Dynamics AX 2009 programoje: praktiniai įrankiai ir scenarijai

Šiame straipsnyje aptariami svarbiausi filtravimo, paieškos ir duomenų užklausų valdymo aspektai Dynamics AX 2009 aplinkoje, įskaitant dažnai pasitaikančius scenarijus, kai naudojama sąsaja su grid’ais, dialogais bei AIFweb paslaugomis. Darbe išryškinamos praktinės gudrybės, susijusios su SysQueryRangeUtil datos metodais, duomenų filtravimo įtraukimu į rodinius ir atnaujinimu po įvesties kriterijų.

Filtravimo ir ieškos funkcijų pagrindai

Įvedus 1..10 randamos visos vertės nuo 1 iki 10. Tačiau eilutės lauke A..C randamos visos reikšmės, prasidedančios raidėmis A ir B, ir reikšmės, tiksliai lygios C. Pvz., ši užklausa neapima „Ca“ reikšmės. Įvedus *th* randamos visos eilutės, kuriose yra „th“. Įvedus A, D, F, G surandama tiksliai A, D, F ir G. Spustelėję Gerai, sąrašo puslapis atnaujinamas ir pateikiamos įvestų kriterijų atitinkančios SF. Tai iliustruoja, kaip funkcijos Like ir NotLike gali būti panaudotos teksto paieškai su filtravimu.

Jei reikia papildomos informacijos apie SysQueryRangeUtil datos metodus, žr. Randama data, susijusi su seanso data. Randamos datos, susijusios su seanso data. Šie pavyzdžiai parodo, kaip galima valdyti dinaminį filtravimą naudojant sesijos kontekstą ir datų intervalus.

Hotfix’ų ir paramos procedūros

Tarkime, naudojate lenkų klaviatūros Microsoft Dynamics AX 2009 1 pakeitimų paketas (SP1). „Microsoft“ pateikia palaikomas karštąsias pataisas. Yra skyrius „Galimas karštųjų pataisų atsisiuntimas“ šio žinių bazės straipsnio viršuje. Jei susiduriate su problema atsisiųsti, įdiegti šią karštąją pataisą, ar turite kitų klausimų, techninės pagalbos, kreipkitės į savo partnerių arba, jei įtraukti į tiesiogiai su „Microsoft“ palaikymo planą, galite susisiekti su techniniu palaikymu Microsoft Dynamics ir sukurti naują palaikymo užklausą.

Šių karštųjų pataisų Visuotinė versija turi failo atributus (arba naujesnius failo atributus), kurie išvardyti toliau esančioje lentelėje. Datos ir laiko informacija pateikta pagal universalųjį laiką (UTC). Kai peržiūrite failo informaciją, ši informacija konvertuojama į vietos laiką. Patvirtinti paraiškos karštųjų pataisų diegimo, atidaryti SysHotfixManifest klasės programos objektų medis (AOT). Patikrinkite, kad yra metodas, kurio pavadinimas apima žinių bazės (KB) straipsnyje skaičius įdiegti karštąsias pataisas. Be to, jūs galite tarpusavyje pažeistą objektų lyginant KBXXXXXX.txt failą prieš AOT objektai. Taip padarę būsite tikri, kad objektai keičiami teisingai SYP sluoksnis arba GPP lygmenyje.

Pagalba dialogų ir dviejų filtravimo laukų scenarijams

Įkyriamieji scenarijai: du filtravimo laukus dialoge. Pirmojo laukų (pvz., InventLocation) pasirinkimas turi įtakos antrojo laukų (pvz., WMSLocationId) turiniui. Šios užduotys reikalauja specialaus požiūrio į dialogo periopinimą (dialogPostRun) ir init metodes, kad antrasis laukų rinkinys būtų dinamiškai filtruojamas, atsižvelgiant į pirmojo pasirinkimą. Žurnališkai panaudoti vadovai - „michaels blog“ pastraipos, kuriose aprašoma dialogPostRun method’o perkrova ir tolesnis antrų laukų laukų įkėlimas.

Norint įgyvendinti šią funkciją, reikia:

  • nustatyti klasės veikimo pradžią (name of the report to start) ir sukurti meniu įrašą;
  • tarp dialogo laukų nuskaityti jų pavadinimus (Right click -> setup form);
  • perrašyti dialogPostRun metodą, siekiant įtraukti dinamišką antrų laukų filtravimą;
  • parašyti kodą antram laukui dialogo filtruoti pagal pirmojo laukų pasirinkimą;
  • testuoti klasės veikimą ir įsitikinti, kad antrasis laukas atnaujinamas teisingai;
  • perinituoti (init) metodą atitinkamose duomenų šaltinių datose ir nustatyti filtravimo ribas pagal pirmąjį lauką.

AIF web paslaugų išplėtimas filtravimui

Mano atveju klientas norėjo AIF web paslaugą su galimybe filtruoti rezultatus panašiai kaip LIKE sakinys SQL užklausoje. Pasiūliau naudoti standartinį find veiksmą, tačiau užklausos kriterijų palaikymas su „wildcard“ užklausos laikais neturi palaikymo. Todėl nuspręsta išplėsti standartinę funkcionalumą. Pirmiausia pridėjau dvi naujas reikšmes (Like ir NotLike) prie AifCriteriaOperator enumeracijos. Tuomet įvedžiau logiką initQueryFromQuery metoduose AxdBase klasėje. Vėliau paaiškėjo, kad AIF nedefinuoja kriterijų schemos, o laiko failą diske. Keičiau getSchema metodą, kad grąžintų schemą kaip eilutę su papildomomis vertėmis. Po to viskas veikė puikiai. Jei norite panašiai įdiegti AX 2012, rekomenduoju atitinkamą straipsnį, kuris nurodo tinkamą kryptį, nors sprendimas nėra tobulas, bet suteikia teisingą krypties supratimą.

Filtravimo pokyčiai AX 2009 ir naudotojo patirtis

Visame AX 2009 buvo įdiegtas daugelis keitimų filtravime grid’uose. Įprastai Ctrl+F - Find, Ctrl+K - Filter. AX 4.0 laikais Ctrl+F pakeitė Ctrl+K, todėl klientams kilo painiava. Dabar Ctrl+F grąžintas kaip įprastas Find, o Ctrl+K vis dar vykdo filtravimą kontekste esančioje grid eilutėje. Pateikiami du scenarijai, iliustruojant, kaip veikia filtravimas vs. paieška su divaline grid. Be to, trumpai užsimenama apie Editor Scripts pakeitimus: redagavimo įrankiai atidaromi Alt+R, o ne Alt+M.

Duomenų šaltiniai, gridai ir filtravimas

Microsoft Dynamics AX yra tvirtas ERP sprendimas, skverbiantis į finansus, tiekimo grandinę, gamybą, žmogiškuosius išteklius ir CRM. Nesvarbu, ar diegiate vietoje, debesyje ar hibridine sistema; AX supaprastina darbo eigos automatizavimą, suteikia didesnį operacijų efektyvumą ir pagerina sprendimų priėmimą. Svarbu suprasti, kaip derinami filtravimas ir paieška su duomenų šaltiniais (InventSum, InventDim) bei kaip integruoti dialogus su kelių laukų filtravimu.

Pristatymas praktiniais pavyzdžiais

Kai įdiegiate dialoguose dviejų laukų filtravimą, svarbu testuoti registrų atnaujinimą po įvesties kriterijų. Pasirūpinkite, kad antrasis laukelis būtų atnaujinamas be klaidų ir tiksliai atitiktų pirmojo laukų pasirinkimą. Taip pat verta žinoti, kad AIFschema gali būti generuojama ne tiesiogiai, o kaip dalykas, kuris reikia papildomai tvarkyti, naudojant getSchema metodą. Turėkite omenyje, kad karštųjų pataisų diegimas gali paveikti filtravimo behavior ir pateikti papildomų pasirinkimų ar naujų tipų, į kuriuos reikia atsižvelgti savo įvedimo metu.

Duomenų lentelių pavyzdžiai ir galimos lentelės

Pateiktame tekste minima InventSum ir InventDim kaip pavyzdžiai, kai reikia sujungti du duomenų šaltinius, siekiant įgyvendinti filtravimą dialogų metu ir paruošti ataskaitas su papildomais kriterijais. Tokie ryšiai yra esminiai norint teisingai filtruoti duomenis pagal vartotojo įvestis.

diagosto filtravimo pavyzdžiai ir dialogų atnaujinimas

Migrating from AX2009 to Dynamics 365FO: Lessons Learned

Be to, straipsnyje pateikiami praktiniai patarimai dėl karštųjų pataisų diegimo, pagalbos kanalo naudojimo ir geros praktikos projektavimo etapuose. Tai padeda užtikrinti, kad filtravimas veiktų stabiliai ir atitiktų klientų lūkesčius.

ScenarijusSvarbiausi veiksmaiAktualūs metodai
Du filtravimo laukų dialogasnustatyti laukų pavadinimus, perrašyti dialogPostRun, inicijuoti antrą laukądialogPostRun, init, getSchema
AIF filtravimas su LIKEpridėti Like/NotLike, modifikuoti initQueryFromQueryAifCriteriaOperator, AifQueryCriteria, getSchema

tags: #filtravimas #ms #dynamics #ax #2009 #programoje

Populiarūs įrašai: