Miklix

Krijimi i një fushe kërkimi për një dimension financiar në Dynamics 365

Publikuar: 16 shkurt 2025 në 11:36:16 e paradites, UTC
Përditësimi i fundit: 12 janar 2026 në 8:56:29 e paradites, UTC

Ky artikull shpjegon se si të krijoni një fushë kërkimi për një dimension financiar në Dynamics 365 for Operations, duke përfshirë një shembull kodi X++.


Kjo faqe u përkthye me makinë nga anglishtja për ta bërë të aksesueshme për sa më shumë njerëz. Fatkeqësisht, përkthimi me makinë nuk është ende një teknologji e përsosur, kështu që mund të ndodhin gabime. Nëse preferoni, mund ta shikoni versionin origjinal në anglisht këtu:

Creating a Lookup Field for a Financial Dimension in Dynamics 365

Informacioni në këtë postim bazohet në Dynamics 365 for Operations, por pjesa më e madhe e tij do të funksionojë edhe për Dynamics AX 2012 (shih më poshtë).

Kohët e fundit më është ngarkuar detyra të krijoj një fushë të re në të cilën duhet të jetë e mundur të specifikohet një dimension i vetëm financiar, në këtë rast Produkti. Sigurisht, fusha e re duhet të jetë gjithashtu në gjendje të kërkojë vlerat e vlefshme të këtij dimensioni.

Kjo është pak më e komplikuar sesa një kërkim i rregullt në një tabelë, por nëse e dini si, në fakt nuk është aq keq.

Për fat të mirë, aplikacioni standard ofron një formular të përshtatshëm kërkimi (DimensionLookup) që mund të përdoret për këtë qëllim, nëse thjesht i tregoni se cilin atribut dimensioni duhet të kërkojë.

Së pari, duhet të krijoni vetë fushën e formularit. Kjo mund të bazohet në një fushë tabele ose në një metodë redaktimi, nuk ka rëndësi për vetë kërkimin, por në një mënyrë ose në një tjetër duhet të përdorë llojin e zgjeruar të të dhënave DimensionValue.

Pastaj duhet të krijoni një trajtues ngjarjesh OnLookup për fushën. Për të krijuar një trajtues ngjarjesh, klikoni me të djathtën mbi ngjarjen OnLookup për fushën, pastaj zgjidhni "Kopjo metodën e trajtuesit të ngjarjeve". Pastaj mund të ngjisni një metodë të zbrazët të trajtuesit të ngjarjeve në një klasë dhe ta modifikoni atë që andej.

Njoftim: Pjesa më e madhe e kësaj do të funksionojë edhe për Dynamics AX 2012, por në vend që të krijoni një trajtues ngjarjesh, mund të anashkaloni metodën e kërkimit të fushës së formularit.

Trajtuesi i ngjarjeve duhet të duket diçka e tillë (zëvendësoni emrin e formularit dhe emrin e fushës sipas nevojës):

[
    FormControlEventHandler(formControlStr( MyForm,
                                            MyProductDimField),
                            FormControlEventType::Lookup)
]
public static void MyProductDimField_OnLookup(  FormControl _sender,
                                                FormControlEventArgs _e)
{
    FormStringControl   control;
    Args                args;
    FormRun             formRun;
    DimensionAttribute  dimAttribute;
    ;

    dimAttribute    =   DimensionAttribute::findByName('Product');
    args            =   new Args();
    args.record(dimAttribute);
    args.caller(_sender);
    args.name(formStr(DimensionLookup));
    formRun         =   classFactory.formRunClass(args);formRun.init();
    control         =   _sender as FormStringControl;
    control.performFormLookup(formRun);
}

Lexime të mëtejshme

Nëse ju pëlqeu ky postim, mund t'ju pëlqejnë edhe këto sugjerime:


Shpërndaje në BlueskyShpërndaje në FacebookNdani në LinkedInShpërndaje në TumblrShpërndaje në XNdani në LinkedInPin në Pinterest

Mikkel Christensen

Rreth Autorit

Mikkel Christensen
Mikkel është krijuesi dhe pronari i miklix.com. Ai ka mbi 20 vjet përvojë si programues profesional kompjuteri/zhvillues softuerësh dhe aktualisht është i punësuar me kohë të plotë për një korporatë të madhe evropiane IT. Kur nuk bën blog, ai e kalon kohën e lirë në një gamë të gjerë interesash, hobish dhe aktivitetesh, të cilat mund të reflektohen në një farë mase në shumëllojshmërinë e temave të mbuluara në këtë faqe interneti.