Miklix

Dynamics AX 2012 SysOperation Tsarin Gaggawa

Buga: 15 Faburairu, 2025 da 22:36:45 UTC

Wannan labarin yana ba da taƙaitaccen bayani (ko takardar yaudara) kan yadda ake aiwatar da azuzuwan sarrafawa da ayyukan batch a cikin tsarin SysOperation a cikin Dynamics AX 2012 da Dynamics 365 don Ayyuka.


An fassara wannan shafin na'ura daga Turanci don a sami damar isa ga mutane da yawa gwargwadon iko. Abin takaici, fassarar inji ba ta zama cikakkiyar fasaha ba, don haka kurakurai na iya faruwa. Idan kuna so, kuna iya duba ainihin sigar Turanci anan:

Dynamics AX 2012 SysOperation Framework Quick Overview

Bayanin da ke cikin wannan sakon ya dogara ne akan Dynamics AX 2012 R3. Yana iya ko ba zai yi aiki ba don wasu nau'ikan. (Sabunta: Zan iya tabbatar da cewa bayanin da ke cikin wannan labarin yana aiki don Dynamics 365 don Ayyuka)


Wannan sakon ana nufin kawai a matsayin taƙaitaccen bayani da takardar yaudara. Idan kun kasance sababbi ga tsarin SysOperation, Ina ba da shawarar ku karanta farar takarda ta Microsoft akan batun kuma. Bayanin nan yana iya zama da amfani idan kawai kuna buƙatar saurin gogewa a kan nau'ikan nau'ikan nau'ikan da ke cikin haɓaka ayyuka tare da wannan tsarin.

Akwai bambance-bambance, amma lokacin da na yi amfani da tsarin yawanci ina aiwatar da azuzuwan uku:

  • Kwangilar bayanai (ya kamata ta tsawaita SysOperationDataContractBase)
  • Sabis (ya kamata ya tsawaita SysOperationServiceBase)
  • Mai sarrafawa ( dole ne ya tsawaita SysOperationServiceController)

Bugu da ƙari, zan iya aiwatar da ajin UIBuilder ( dole ne a tsawaita SysOperationUIBuilder), amma hakan ya zama dole ne kawai idan maganganun don wasu dalilai dole ne su ci gaba fiye da abin da tsarin ke haifarwa ta atomatik.


Kwangilar bayanai

Kwangilar bayanan tana riƙe da membobin bayanan da ake buƙata don aikin ku. Ana iya kwatanta shi da macro na yau da kullun na CurrentList da aka ayyana a cikin tsarin RunBase, amma ana aiwatar da shi azaman aji maimakon. Ya kamata kwangilar bayanan ta tsawaita SysOperationDataContractBase, amma za ta yi aiki ko da ba ta yi ba. Amfanin tsawaita babban aji shine yana ba da wasu bayanan zama waɗanda zasu iya zama masu amfani.

[DataContractAttribute]
class MyDataContract extends SysOperationDataContractBase
{
    ItemId itemId;
}

A cikin wannan misali, itemId memba ne na bayanai. Kuna buƙatar aiwatar da hanyar parm don kowane memba na bayanai kuma sanya shi tare da DataMemberAttribute don tsarin ya san menene. Wannan yana ba tsarin damar gina magana ta atomatik a gare ku.

[DataMemberAttribute]
public ItemId parmItemId(ItemId _itemId = itemId)
{
    ;

    itemId = _itemId;
    return itemId;
}


Sabis

Ajin sabis shine aji wanda ya ƙunshi ainihin dabaru na kasuwanci. Ba a damu da nuna maganganu, sarrafa tsari ko wani abu ba - wannan shine alhakin ajin mai sarrafawa. Ta hanyar raba wannan, za ku iya tsara lambar ku da kyau kuma ku sami ƙarin lambar da za a sake amfani da ita.

Kamar ajin kwangilar bayanai, rukunin sabis ɗin baya buƙatar gado daga wani abu musamman, amma yakamata ya gaji daga aji na SysOperationServiceBase, aƙalla idan kuna tsammanin za a gudanar da sabis ɗin azaman aikin batch, kamar yadda babban aji ke ba da wasu bayanai game da mahallin batch. Hanyar da za ta fara aiki (watau tana tafiyar da dabarun kasuwanci) dole ne ta ɗauki wani abu na ajin kwangilar bayanan ku azaman shigarwa kuma yakamata a ƙawata shi da [SysEntryPointAttribute]. Misali:

class MyService extends SysOperationServiceBase
{
}

tare da hanyar da ake kira gudu:

[SysEntryPointAttribute]
public void run(MyDataContract _dataContract)
{
    // run business logic here
}


Mai sarrafawa

Ajin mai sarrafawa yana sarrafa aiwatar da aiwatar da tsari na aikin ku. Hakanan yana tabbatar da cewa an aiwatar da lambar a cikin CIL don iyakar aiki. Ajin mai sarrafawa yawanci yana gada daga ajin SysOperationServiceController, kodayake akwai wasu zaɓuɓɓuka kuma.

class MyController extends SysOperationServiceController
{
}

Mai gina babban ajin yana ɗaukar sunan aji, sunan hanya da (na zaɓi) yanayin aiwatarwa azaman sigogi. Ya kamata ajin da sunayen hanyoyin su zama sunan ajin sabis ɗin ku da hanyar da ya kamata a gudanar da shi. Don haka, zaku iya aiwatar da hanyar ginin mai sarrafa ku kamar haka:

public static MyController construct()
{
    ;

    return new MyController(classStr(MyService),
    methodStr(MyService, run));
}

Sannan babban hanyar ajin MyController na iya zama mai sauƙi kamar

public static void main(Args _args)
{
    ;

    MyController::construct().startOperation();
}

Kuma kun gama. Abin da ke sama a bayyane misali ne mai sauƙi kuma tsarin yana ƙunshe da yawa na wasu zaɓuɓɓuka da dama, amma wannan yana aiki azaman bayyani mai sauri idan kuna buƙatar gogewa lokacin da ba ku yi amfani da tsarin na ɗan lokaci ba.

Raba kan BlueskyRaba akan FacebookRaba kan LinkedInRaba akan TumblrRaba akan XRaba kan LinkedInFitar akan Pinterest

Mikkel Bang Christensen

Game da Marubuci

Mikkel Bang Christensen
Mikel shine mahalicci kuma mai miklix.com. Yana da fiye da shekaru 20 gwaninta a matsayin ƙwararren mai tsara shirye-shiryen kwamfuta / mai haɓaka software kuma a halin yanzu yana aiki cikakken lokaci don babban kamfani na IT na Turai. Lokacin da ba ya yin rubutun ra'ayin kanka a yanar gizo ba, yana ciyar da lokacinsa a kan ɗimbin abubuwan bukatu, sha'awa, da ayyuka, waɗanda har zuwa wani lokaci za a iya nunawa a cikin batutuwa iri-iri da aka rufe akan wannan rukunin yanar gizon.