Hiki kipengele cha OTRS kinakuruhusu kutengeneza michakato (mitiririko ya kazi) katika mfumo wa tiketi. Wazo la msingi ni kufafanua michakato inayojirudia, na kugawa kazi kwa watu tofauti, na pia kuongoza maendeleo ya mchakato katika njia tofauti kutegemeana na vigezo fulani.
Tuone mfano ili kuona zaidi inavyofanyika. Tutafafanua mchakato wa kuoda kitabu:
Kabla oda haijawekwa, maombi ya fasihi ya mwajiriwa yatarekodiwa. Kitabu kifuatacho kitahitajika katika mfano wetu:
Title: Prozessmanagement für Dummies Autor: Thilo Knuppertz ISBN: 3527703713
Kiongozi wa idara ya wafanya kazi inabidi aamue kwenye oda. Kama imekataliwa, sababu lazima irekodiwe na meneja. Kama imekubaliwa, oda inapitishwa kwenda kwa idara ya manunuzi.
Manunuzi sasa yana kazi ya kujua wapi oda ya kitabu itafanywa penye masharti mazuri. Kama vimeisha, inaweza kurekodiwa kwenye oda. Kama oda imefanikiwa manunuzi atarekodi msambazaji, bei na tarehe ya kuwasilisha.
Kama tukiamini kwamba tiketi inatenda kama waraka unao andamana nao katika huu mtiririko wa kazi ambao unaweza kupokea notisi za mabadiliko, sasa tuna picha kamili ya tiketi za mchakati.
Kutoka kwenye uchambuzi wa mchakato wa mfano tunaweza kubainisha vifaa muhimu vifuatavyo:
Uwezekano wa kurekodi data, tuziite Maongezi ya Shughuli,
Inaangalia ipi itabadilika kiotomatiki na data zilizobadilishwa, tuziite Mapito,
mabadiliko yanayoweza kufanyika kwenye tiketi ya mchakato baada ya kufanikiwa kwa mapito ya tiketi ya mchakato, tuyaite Vitendo vya Mpito.
Pia tunahitaji vifaa vya ziada ambavyo si dhahiri:
Uwezekano wa upatikanaji wa Maongezi ya Shughuli zaidi ya aina moja. Katika mfano wetu hii inahitajika pale msimamizi inabidi apate machaguo kati ya "Kubali" na "Kataa". Hii tuiite Shughuli.
Sasa, tukiwa na Shughuli, Maongezi ya Shughuli, Mapito na Vitendo vya Mpito tuna vifaa vinavyohitajika ili kutengeneza moduli ya hatua binafsi za mfano wetu. Kinachobakia ni eneo ambalo kila mtiririko wa kazi mpangilio wa ngazi unaweza kuwekwa bayana. Hii tuiite Mchakato. Ili tuweze kurejea kwenye hivi vyombo baadae, tutazipa vifupisho katika mabano. Huu ufupisho unategemeana na utaratibu wa ndani wa utambulisho uitwao Kitambulisho cha Chombo.
Vitambulisho vya Chombo vinafanana na vina herufi moja au mbili (kutegemeana na mchakato au chombo) na baada ya hapo mfululizo wa namba, mifano:
Mchakato: 'P1', 'P2' ... 'Pn'.
Shughuli: 'A1', 'A2' ... 'An'.
Maongezi ya Shughuli: 'AD1', 'AD2' ... 'ADn'.
Mpito: 'T1', 'T2' ... 'Tn'.
Vitendo vya Mpito: 'TA1', 'TA2' ... 'TAn'.
Kabla ya utengenezaji wa mchakato na viji sehemu vyake ni muhimu kuuandaa mfumo, tutahitaji kufafanua baadhi ya Foleni, Watumiaji na Sehemu Zinazobadilika na pia kuseti baadhi ya machaguo ya SysConfig.
Tengeneza foleni zifuatazo:
Usimamizi
Wafanyakazi
Ununuzi
Ofisi ya posta
Tengeneza watumiaji wafwatao:
Meneja
Mfanyakazi
Tengeneza Sehemu Zinazobadilika zifuatazo:
Mada
Lebo | Mada |
Aina | Nakala |
Kitu | Tiketi |
Mwandishi
Lebo | Mwandishi |
Aina | Nakala |
Kitu | Tiketi |
ISBN
Lebo | ISBN |
Aina | Nakala |
Kitu | Tiketi |
Hali
Lebo | Hali |
Aina | Kunjuzi |
Kitu | Tiketi |
Thamani ziwezekanazo |
|
Kumbuka: Tafadhali tumia thamani hizi ziwezekanazo kwa "Ufunguo" na "Thamani" kwenye usanidi wa Sehemu Zinazobadilika.
Msambazaji
Lebo | Msambazaji |
Aina | Nakala |
Kitu | Tiketi |
Bei
Lebo | Bei |
Aina | Nakala |
Kitu | Tiketi |
TareheUwasilishaji
Lebo | Tarehe ya uwasilishaji |
Aina | Tarehe |
Kitu | Tiketi |
TareheYaKupokea
Lebo | Tarehe Ya Kupokea |
Aina | Tarehe |
Kitu | Tiketi |
Seti mipangilio ifuatayo ya SysConfig:
'Tiketi::Kuwajibika':Ndio
'Ticket::Frontend::AgentTicketZoom###ProcessWidgetDynamicFieldGroups':
Ufunguo: | Maudhui: |
---|---|
Kitabu | Mada, Mwandishi, ISBN |
Ujumla | Hali |
Oda | Bei, Msambazaji, TareheUwasilishaji |
Usafirishaji | TareheYaKupokea |
'Ticket::Frontend::AgentTicketZoom###ProcessWidgetDynamicField':
Ufunguo: | Maudhui: |
---|---|
Mwandishi | 1 |
TareheYaKupokea | 1 |
TareheUwasilishaji | 1 |
ISBN | 1 |
Bei | 1 |
Hali | 1 |
Msambazaji | 1 |
Mada | 1 |
Sasa tuanze na mambo ya kweli ya Usimamizi wa Mchakato. Katika hatua inayofwata, tutafafanua vyombo vyenyewe tunavyohitaji.
Kutengeneza mchakato mpya ni muhimu kubofya kwenye kiungo cha "Usimamizi wa Mchakato" katika boksi la Usimamizi wa Mfumo katika paneli ya Msimamizi, hii itakupeleka kwenye skrini ya Mapitio ya Usimamizi wa Mchakato. Baada ya utengenezaji wa mchakato tunaweza kutengeneza vyombo vingine vyote (au sehemu za mchakato).
Shughuli, Maongezi ya Shughuli, Mapito na Vitendo vya Mpito vilivyofafanuliwa kwenye mchakato mmoja vitapatikana kwa kila michakato ya mfumo.
Kielelezo: Skrini ya Msimamizi wa OTRS - Usimamizi wa Mfumo .
Bonyeza kitendo cha "Tengeneza mchakato mpya" kutoka kwenye boksi la vitendo.
Kielelezo: Tengeneza Kitufe Kipya cha Mchakato.
Jaza taarifa za mchakato, seti Jina la Mchakato na Undani wake, tutaacha Hali ya mchakato kuwa iliyo "Lemazwa", mpaka tumalize kazi zote. Hifadhi mchakato.
Kielelezo: Ongeza mchakato mpya.
Bofya katika jina jipya la mchakato kwenye Skrini ya Mapitio ya Usimamizi wa Mchakato, kisha katika "Elemnti za Mchakato Zinazopatikana" bofya katika "Maongezi ya Shughuli" (hiki kitendo kitapanua machaguo ya maongezi ya shughuli na kukunja nyingine zote na athari za kodiani), kisha bofya "Tengeneza Maongezi Mapya ya Shughuli".
Kielelezo: Tengeneza Kitufe cha Maongezi ya Shughuli kipya.
Katika skrini ibukizi iliyofunguliwa jaza "Jina la maongezi ya Shughuli" na pia "sehemu za Maelezo (mafupi)", kwa huu mfano tutaacha sehemu nyingine zote kama zilivyo kawaida,ili kugawia sehemu kwa Maongezi ya Shuguli kokota sehemu inayotakiwa kutoka kwenye bwawa la "Sehemu Zilizopo" na dondosha katika bwawa la "Sehemu Zilizogawiwa". Oda katika bwawa la "Sehemu Zilizogawiwa" ndiyo oda sehemu zitakuwa nazo katika skrini, kubadilisha oda kokota na kudondosha hiyo sehemu kwenye bwawa kupanga katika sehemu sawia.
Kielelezo: Ongeza Maongezi ya Shughuli mapya.
Baada tu ya sehemu kudondoshwa katika bwawa la "Sehemu Zilizogawiwa" skrini ibukizi nyingine inaonyeshwa yenye undani kuhusu sehemu hiyo, tutaacha machaguo ya kawaida na kwa sehemu za Makala tu ndiyo tuhakikishe kwamba sehemu ya Aina ya Makala imesetiwa kuwa "notisi-ndani".
Kielelezo: Hariri undani wa uga (Makala).
Baada ya sehemu zote kupewa thamani bofya kitufe cha kuwasilisha katika skrini kuu ibukizi kuhifadhi mabadiliko.
Katika mfano huu tutatumia sehemu ya Makala kwa ajili ya maoni, lakini chaguo lngine linaweza kuwa kutengeneza EneoLaNakala la aina Sehemu Inayobadilika, sehemu zilizobaki ambazo zimetajwa katika mistari chini ni Sehemu Zinazobadilika ambazo tumefafanua kabla.
Tafadhali tambua kwamba katika skrini hii Sehemu Zinazobadilika zote zina kiambishi awali "SehemuInayobadilika_" kama kwenye "SehemuInayobadilika_Kichwa", Usichanganye na sehemu "Kichwa" ambacho ni Kichwa cha Tiketi.
Tengeneza Maongezi ya Shughuli yafwatayo:
"Kurekodi mahitaji" (AD1)
Maongezi ya Shughuli yenye sehemu zote zinazoitajika ili data ikusanywe kwa oda (Kichwa cha habari, Mwandishi na ISBN), na sehemu ya Haliyenye uwezekano wa kuchagua "Kibali".
"Kibali kimekataliwa" (AD2)
Maongezi ya Shughuli yenye sehemu ya kuweka maoni (Makala) na sehemu ya Hali yenye chaguo "Kibali kimekataliwa".
"Kubaliwa" (AD3)
Hapa tunahitaji hali ya uga wenye chaguo "Kubaliwa"
"Oda imekataliwa" (AD4)
Maongezi ya shughuli yanayowezesha kununua ili kukataa oda isiyowezekana (kulipia mzigo kabla ikiwa hisa zimeisha). Hapa pia tunahitaji sehemu ya maoni na sehemu ya Hali yenye chaguo "Oda imekataliwa"
"Oda imewekwa" (AD5)
Maongezi ya Shughuli yenye sehemu Msambazaji, Bei na tarehe ya Uwasilishaji kwa manunuzi na sehemu ya Hali yenye chaguo "Oda imewekwa".
"Vilivyosafirishwa vimepokelewa" (AD6)
Shughuli ya kwenye chumba cha barua yenye sehemu ya Tarehe ya upokeaji na sehemu ya Hali yenye chaguo "Vilivyosafirishwa vimepokelewa".
Kuzuia sehemu ya hali ya kila maongezi ya shughuli tunahitaji kuongeza baadhi ya ACL katika Kernel/Config.pm au kwenye faili jipya la perl lililo kwenye Kernel/Config/Files.
$Self->{TicketAcl}->{'P1-AD1-1'} = { Properties => { Process => { ActivityDialogEntityID => ['AD1'], }, }, Possible => { Ticket => { DynamicField_Status => ['Approval'], }, }, }; $Self->{TicketAcl}->{'P1-AD2-1'} = { Properties => { Process => { ActivityDialogEntityID => ['AD2'], }, }, Possible => { Ticket => { DynamicField_Status => ['Approval denied'], }, }, }; $Self->{TicketAcl}->{'P1-AD3-1'} = { Properties => { Process => { ActivityDialogEntityID => ['AD3'], }, }, Possible => { Ticket => { DynamicField_Status => ['Approved'], }, }, }; $Self->{TicketAcl}->{'P1-AD4-1'} = { Properties => { Process => { ActivityDialogEntityID => ['AD4'], }, }, Possible => { Ticket => { DynamicField_Status => ['Order denied'], }, }, }; $Self->{TicketAcl}->{'P1-AD5-1'} = { Properties => { Process => { ActivityDialogEntityID => ['AD5'], }, }, Possible => { Ticket => { DynamicField_Status => ['Order placed'], }, }, }; $Self->{TicketAcl}->{'P1-AD6-1'} = { Properties => { Process => { ActivityDialogEntityID => ['AD6'], }, }, Possible => { Ticket => { DynamicField_Status => ['Shipment received'], }, }, };
Kwenye "Elementi Zinazopatikana za Mchakato" bofya kwenye "Mapito", kisha bofya "Tengeneza Mpito Mpya"
Kielelezo: Tengeneza kitufe kipya cha mpito.
Katika skrini ibukizi iliyofunguliwa jaza "Jina la Mpito", kisha kwenye masharti, kwa mfano huu tumia sharti moja tu na sehemu moja, kwa zote tunaweza kuacha Aina ya muunganiko kama "na" na tutatumia thamani ya aina ya kufanana kama "Tungo".
Kielelezo: Ongeza mpito mpya.
Baada ya masharti yote kusetiwa bofya kwenye kitufe cha kuhifadhi kuhifadhi mabadiliko.
Tengeneza Mapito yafuatayo:
"Kibali" (T1)
Mpito unaokagua kama Sehemu ya Hali imesetiwa kuwa "Kibali".
"Kibali kimekataliwa" (T2)
Mpito unaokagua kama Sehemu ya Hali imesetiwa kuwa "Kibali kimekataliwa".
"Kubaliwa" (T3)
Mpito unaokagua kama Sehemu ya Hali imesetiwa kuwa "Kubaliwa".
"Oda imekataliwa" (T4)
Mpito unaokagua kama sehemu ya Hali imesetiwa kuwa "Oda imekataliwa".
"Oda imewekwa" (T5)
Mpito unaokagua kama sehemu ya Hali imesetiwa kuwa "Oda imewekwa".
"Vilivyosafirishwa vimepokelewa" (T6)
Mpito unaokagua kama sehemu ya Hali imesetiwa kuwa "Vilivyosafirishwa vimepokelewa".
Bofya kwenye "Vitendo vya Mpito" katika "Elementi za Michakato Zilizopo", kisha bofya "Tengeneza Kitendo Kipya cha Mpito".
Kielelezo: Tengeneza kitufe kipya cha vitendo vya mpito.
Katika skrini ibukizi iliyofunguliwa jaza "Jina la Mpito", na "Moduli ya Vitendo vya Mpito" kisha ongeza majina na thamani za parameta za hiari na zinazohitajika
Moduli zote za mpito zinapatikana kwenye Kiini/Mfumo/UsimamiziwaMchakato/VitendovyaMpito na ifuatayo ni orodha ya kifungu cha Vitendo vya Mpito vilivyojumuishwa kwenye hili toleo
SetiSehemuInayobadilika
TengenezaTiketiMakala
TengenezaTiketi
SetiTiketiMteja
SetiKitasaTiketi
SetiMwenyeTiketi
SetiFoleniTiketi
SetKuwajibikaTiketi
SetiHudumaTiketi
SetiSLATiketi
SetiHaliTiketi
SetiMadaTiketi
SetiAinaTiketi
Kila moduli ina parameta zake tofauti. Tafadhali pitia nyaraka za moduli ili kujifunza parameta zote zinazohitajika na za hiari.
From OTRS 4.0.1, parameters are not longer mandatory fixed values, but instead, they can inherit from the original ticket using format: <OTRS_Ticket_property>.
From OTRS 4.0.6, the format <OTRS_TICKET_property> is now supported, older format is still usable, but deprecated as it will be dropped in further versions.
Kielelezo: Ongeza vitendo vya mpito mpya.
Baada ya parameta na thamani zote kusetiwa bofya kitufe kuwasilisha ili kuhifadhi mabadiliko.
Tengeneza vitendo vya mpito vifwatavyo:
"Peleka tiketi ya mchakato kwa Foleni ya 'Usimamizi' (TA1)
Hiki kitendo kinatakiwa kutekelezwa wakati Mpito "Kibali" (T1) umetumika.
"Badilisha tiketi inayowajibika kwa 'manager'" (TA2)
Itatekelezwa pale mpito "Kibali" (T1) umetumika.
"Peleka tiketi ya mchakato kwenye Foleni ya 'Wateja'" (TA3)
Itatekelezwa wakati:
Mpito "Kibali kimekataliwa" (T2) umetumika
Mpito "Oda imekataliwa" (T4) umetumika
Mpito "Vilivyosafirishwa vimepokelewa" (T6) umetumika
"Badilisha tiketi inayowajibika kwa 'Mwajiriwa'" (TA4)
Itatekelezwa wakati:
Mpito "Kibali kimekataliwa" (T2) umetumika
Mpito "Oda imekataliwa" (T4) umetumika
Mpito "Vilivyosafirishwa vimepokelewa" (T6) umetumika
"Peleka tiketi ya mchakato kwa Foleni ya 'Manunuzi'" (TA5)
Itatekelezwa pale mpito "Imekubaliwa" (T3) umetumika.
"Peleka tiketi za mchakato kwenye Foleni ya 'Ofisi ya posta'" (TA6)
Itatekelezwa pale mpito "Oda imewekwa" (T5) umetumika.
"Kufunga tiketi kumefanikiwa" (TA7)
Itatekelezwa wakati:
Mpito "Vilivyosafirishwa vimepokelewa" (T6) umetumika
"Kufunga tiketi hakujafanikiwa" (TA8)
Itatekelezwa wakati:
Mpito "Kibali kimekataliwa" (T2) umetumika
Mpito "Oda imekataliwa" (T4) umetumika
Kama unavyo ona, kuna sehemu ambazo vitendo vya mpito vile vile vitatekelezwa. Hivyo ni busara kuwezesha muunganiko wa Vitendo vya Mpito na Mapito kirahisi ili kuweza kurudia kuvitumia.
Tumechagua mbinu ya kuona shughuli kama kikapu ambacho kina Maongezi ya Shughuli.
Bofya "Shughuli" katika "Elementi za Michakato Zilizopo", kisha bofya "Tengeneza Shughuli Mpya".
Kielelezo: Tengeneza Kitufe kipya cha Shughuli .
Katika skrini ibukizi iliyofunguliwa jaza "Jina la Shughuli", kisha kokota Maongezi ya Shughuli yanayotakiwa kutoka "Maongezi ya Shughuli Yanayopatikana" na ziweke kwenye "Maongezi ya Shughuli Yaliyogawiwa". Haya maongezi yataonyeshwa (katika skrini iliyokutwa ya tiketi) katika oda ile ile kama ilivyofafanuliwa kwenye skrini hii ikitafsiri kutoka juu kwenda chini, kwenda kushoto kwenda kulia.
Hii oda ni muhimu hasa kwa Shughuli ya kwanza, kwa kuwa Maongezi ya kwanza ya Shughuli kwa shughuli hii ndio ya pekee yanawasilishwa mchakato ukianza.
Tengeneza Shughuli zifuatazo
"Kurekodi mahitaji" (A1)
Ina Maongezi ya Shughuli "Kurekodi mahitaji" (AD1)
"Kibali" (A2)
Ina Maongezi ya Shughuli "Kibali kimekataliwa" (AD2) na pia "Imekubaliwa" (AD3)
"Oda" (A3)
Ina Maongezi ya Shughuli "Oda imekataliwa" (AD4) na pia "Oda imewekwa" (AD5)
"Zinazoingia" (A4)
Ina Maongezi ya Shughuli "Vilivyosafirishwa vimepokelewa" (AD6)
"Mchakato umekamilika" (A5): Hii ni shughuli bila maongezi ya shughuli yawezekanayo. Ita setiwa baada ya "Kibali kimekataliwa", "Oda imekataliwa" au "Vilivyosafirishwa vimepokelewa" na inaashiria mwisho wa mchakato.
Sasa tunaweza kuona shughuli zimefafanuliwa kuwa hali za michakato ya tiketi. Baada ya kufanikiwa kwa mpito tiketi inapelekwa kutoka shughuli moja kwenda nyingine.
Tuhitimishe mfano wetu na kipande cha mwisho kisichokwepo cha fumbo, mchakato kama mfafanuzi wa mtiririko. Katika kesi yetu huu ni upangaji mzima wa mtiririko wa kazi. Michakato mingine inaweza kuwa kuewka oda za vifaa vya ofisi na michakato mingine tofauti kabisa.
Mchakato una pointi ya kuanza ambayo ina Shughuli ya kuanza na Maongezi ya Shughuli ya kuanza. Kwa oda yeyote mpya ya kitabu, skrini ya kwanza kuonyeshwa ni ya Maongezi ya Shughuli (Maongezi ya kwanza ya Shughuli kwa Shughuli ya kwanza). Kama hii imemalizika na kuhifadhiwa, tiketi ya mchakato itatengenezwa na kufwata sanidi ya mtiririko wa kazi.
Mchakato pia una mwelekeo ambao tiketi ya mchakato itapitishwa ndani ya mchakato. Tuiite hii "Njia". Ina Shughuli ya kuanza, Mpito mmoja au zaidi (pengine na Vitendo vya Mpito), na Shughuli nyingine.
Tukiamini kwamba Shughuli tayari zimegawia Maongezi Ya Shughuli kuokota Shughuli kutoka kwenye kodiani (katika upande wa kushoto wa skrini) na kuzidondosha kwenye eneo la turubai (chini ya taarifa za mchakato). Tambua mshale kutoka mwanzo wa mchakato (duara la kijani) kwenda kwenye Shughuli imewekwa kiotomatiki. (Hii ni Shughuli ya kwanza na Maongezi yake ya kwanza ya Shughuli ni skrini ya kwanza ambayo itaonyeshwa wakati mchakato unaanza).
Kielelezo: Kokota shughuli ya kwanza kwenye turubai.
Kokota shughuli nyingine kwenye turubai. sasa tuna shughuli mbili kwenye turubai ya kwanza imeunganishwa na pointi ya kuanza na ya pili haina muunganiko, unaweza kupitisha kipanya juu ya kila shughuli ku dhihirisha Maongezi Shughuli yao.
Kielelezo: Kokota shughuli ya pilikwenye turubai.
Kisha tutengeneze "Njia" (uhusiano) kati ya shughuli hizi mbili, kwa hili tutatumia Mapito, Bofya kwenye Mapito kwenye kodiani kokota Mpito na udondoshe ndani ya Shughuli ya kwanza, tambua kwamba Shughuli inabadilisha rangi kuonyesha Mpito umeambatanishwa, baada tu ya mpito kudondoshwa mwisho wa mshale wa Mpito utawekwa karibu na pointi ya kuanza mchakato. Kokota mwisho wa mshale wa Mpito na udondoshe ndani ya shughuli nyingine kutengeneza uhusiano kati ya Shughuli hizo.
Kielelezo: Kokota Mapito kwenda kwenye turubai.
Sasa "Njia" kati ya vitendo imefafanuliwa, kisha tunahitaji kuweka Vitendo vya Mpito chini ya Mpito, bofya marambili lebo ya mpito (ndani ya turubai), hii itafungua dirisha ibukizi jipya.
Kielelezo: Unganisha shughuli kwa kutumia Mapito.
Kokota Vitendo vya Mpito vinavyotakiwa kutoka bwawa la Vitendo vya Mpito Vinavyopatikana na dondosha katika bwawa la Vitendo vya Mpito Vilivyogawiwa kisha bofya kitufe cha kuwasilisha.
kielelezo: Vitendo vya mpito vilivyogawiwa.
Kisha tukirudi kwenye skrini ya kuhariri mchakato wa msingi bofya kwenye kitufe cha kuhifadhi chini ya turubai kuhifadhi mabadiliko mengine yote.
Kamilisha "Njia" kwa kuongeza Shughuli zifuatazo, Mapito na Vitendo vya Mpito:
Mahitaji yanarekodiwa mpaka "Kibali"
Pointi ya kuanza: Shughuli: Mahitaji yanarekodiwa (A1)
Mpito uwezekanao: Kibali (T1)
Kama masharti ya hii shughuli yamekamilishwa, tiketi itapelekwa kwa Shughuli: Kibali (A2)
Kwa nyongeza, VitendoVyaMpito vifwatavyo vina tekelezeka
"Kuhamisha tiketi kwenda kwenye foleni ya 'Usimamizi'" (TA1)
"Seti tiketi iwe jukumu la 'Meneja'" (TA2)
Shughuli: "Kurekodi mahitaji" (A1) ni hatua iliyofafanuliwa ya mchakato wa tiketi, ambapo kuna uwezekano wa mpito: "Kibali" (T1). Kama hii itakubali tiketi itapelekwa kwenye shughuli inayofuata: "Kibali" (A2), na Vitendo vya Mpito: "Kupeleka tiketi kwenye foleni ya 'Usimamizi'" (TA1) na "Seti tiketi iwe jukumu la'Meneja'" (TA2) zinatekelezeka. Kwenye Shughuli: "Approval" (A2), Maongezi ya Shughuli: "Kibali kimekataliwa" (AD2) na "Kubaliwa" (AD3) zinapatikana.
Kibali
Pointi ya Kuanza: Shughuli "Kibali" (A2)
Mapito yawezekanayo:
"Kibali kimekataliwa" (T2)
Kama hii inalingana, tiketi ya mchakato itapelekwa kwa Shughuli: "Mchakato umekamilika" (A5).
Kwa nyongeza, Vitendo Vya Mpito vifwatavyo vina tekelezeka:
"Peleka tiketi ya mchakato kwenye Foleni ya 'Wateja'" (TA3)
"Seti tiketi yenye jukumu kwa 'Mteja'" (TA4)
"Kufunga tiketi hakujafanikiwa" (TA8)
"Kubaliwa" (T3)
Kama hii inalingana, tiketi ya mchakato itapelekwa kwa Shughuli: "Oda" (A3).
Kwa nyongeza, Kitendo cha Mpito kifwatacho kitatekelezwa.
"Peleka tiketi ya mchakato kwa Foleni ya 'Manunuzi'" (TA5)
Tunaweza kuona kutoka kwenye shughuli za sasa, ambayo inafafanua hatua katika mchakato wa tiketi, kuna uwezekano mmoja au zaidi wa mpito ambao una lengo moja la shughuli (na ikiwezekana Kitendo kimoja au zaidi cha mpito)
Oda
Pointi ya kuanza: Shughuli "Oda" (A3)
Mapito yawezekanayo:
"Oda imekataliwa" (T4)
Kama hii inalingana, tiketi ya mchakato itapelekwa kwa Shughuli: "Mchakato umekamilika" (A5).
Kwa nyongeza, Vitendo Vya Mpito vifwatavyo vina tekelezeka:
"Peleka tiketi ya mchakato kwenye Foleni ya 'Wateja'" (TA3)
"Seti tiketi yenye jukumu kwa 'Mteja'" (TA4)
"Kufunga tiketi hakujafanikiwa" (TA8)
"Oda imewekwa" (T5)
Kama hii inalingana, tiketi ya mchakato itapelekwa kwa Shughuli: "zinazoingia" (A5).
Kwa nyongeza, Kitendo cha Mpito kifwatacho kitatekelezwa.
"Peleka tiketi za mchakato kwa Foleni ya 'Ofisi ya posta'" (TA6)
"Zinazoingia"
Pointi ya Kuanza: Shughuli "Zinazoingia" (A4)
Mapito yawezekanayo:
"Vilivyosafirishwa vimepokelewa" (T6)
Kama hii inalingana, tiketi ya mchakato itapelekwa kwa Shughuli: "Mchakato umekamilika" (A5).
Kwa nyongeza, Vitendo Vya Mpito vifwatavyo vina tekelezeka:
"Peleka tiketi ya mchakato kwenye Foleni ya 'Wateja'" (TA3)
"Seti tiketi yenye jukumu kwa 'Mteja'" (TA4)
"Kufunga tiketi kumefanikiwa" (TA7)
Njia kamili ya mchakato wa kuoda vitabu itaonekana kama hivi:
Kielelezo: Njia kamili ya mchakato wa kuoda vitabu.
Baada ya kumaliza njia ya mchakato tafadhali bonyeza kitufe cha "hifadhi" upande wa chini wa turubai kisha bonyeza kitufe "Landanisha Michakato yote". Hii itakusanya taarifa zote za michakato kutoka kwenye hifadhidata na kutengeneza faili la hifadhi muda (kwa lugha ya Perl). Hii hifadhi muda ni sanidi za michakato ambazo mfumo utatumia kutengeneza au kutumia tiketi za michakato.
Mabadiliko yeyote yaliyofanyika kwenye michakato (katika kiolesura michoro cha mtumiaji) yatahitaji kurudia kulandanisha faili la hifadhi muda ili mabadiliko yawepo kwenye mfumo.
Pia inawezekana kuagiza mchakato mzima kutoka faili la YAML, lakini ni muhimu kutengeneza Sehemu zote Zinazobadilika, Watumiaji, Foleni, na kadh. ambazo zinahitajika na kila mchakato kabla ya kuagiza.
Tambua kwamba kama mchakato unahitaji utumiaji wa ACL hizo zinahitaji pia kusetiwa kwa mikono.
Lifwatalo ni faili kamili la YAML kwa ajili ya mfano wa mchakato wa kuoda kitabu:
--- Activities: A1: ActivityDialogs: - AD1 ChangeTime: 2012-11-23 14:49:22 Config: ActivityDialog: 1: AD1 CreateTime: 2012-11-23 11:49:38 EntityID: A1 ID: 151 Name: Recording the demand A2: ActivityDialogs: - AD2 - AD3 ChangeTime: 2012-12-13 00:55:12 Config: ActivityDialog: 1: AD2 2: AD3 CreateTime: 2012-11-23 11:50:11 EntityID: A2 ID: 152 Name: Approval A3: ActivityDialogs: - AD4 - AD5 ChangeTime: 2012-11-23 18:12:14 Config: ActivityDialog: 1: AD4 2: AD5 CreateTime: 2012-11-23 11:50:35 EntityID: A3 ID: 153 Name: Order A4: ActivityDialogs: - AD6 ChangeTime: 2012-11-23 18:12:35 Config: ActivityDialog: 1: AD6 CreateTime: 2012-11-23 11:51:00 EntityID: A4 ID: 154 Name: Incoming A5: ActivityDialogs: [] ChangeTime: 2012-11-23 11:51:33 Config: {} CreateTime: 2012-11-23 11:51:33 EntityID: A5 ID: 155 Name: Process complete ActivityDialogs: AD1: ChangeTime: 2012-12-06 02:16:21 Config: DescriptionLong: '' DescriptionShort: Recoding the demand FieldOrder: - DynamicField_Author - DynamicField_ISBN - DynamicField_Title - DynamicField_Status Fields: DynamicField_Author: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_ISBN: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Status: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Title: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 Interface: - AgentInterface Permission: '' RequiredLock: 0 SubmitAdviceText: '' SubmitButtonText: '' CreateTime: 2012-11-23 14:34:43 EntityID: AD1 ID: 154 Name: Recording the demand AD2: ChangeTime: 2012-11-23 14:57:41 Config: DescriptionLong: '' DescriptionShort: Approval denied FieldOrder: - Article - DynamicField_Status Fields: Article: Config: ArticleType: note-internal DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Status: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 Interface: - AgentInterface Permission: '' RequiredLock: 0 SubmitAdviceText: '' SubmitButtonText: Deny Request CreateTime: 2012-11-23 14:36:39 EntityID: AD2 ID: 155 Name: Approval denied AD3: ChangeTime: 2012-12-14 03:14:23 Config: DescriptionLong: '' DescriptionShort: Approved FieldOrder: - DynamicField_Status Fields: DynamicField_Status: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 Interface: - AgentInterface Permission: '' RequiredLock: 0 SubmitAdviceText: '' SubmitButtonText: Approve Request CreateTime: 2012-11-23 14:37:35 EntityID: AD3 ID: 156 Name: Approved AD4: ChangeTime: 2012-11-23 14:58:52 Config: DescriptionLong: '' DescriptionShort: Order rejected FieldOrder: - Article - DynamicField_Status Fields: Article: Config: ArticleType: note-internal DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Status: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 Interface: - AgentInterface Permission: '' RequiredLock: 0 SubmitAdviceText: '' SubmitButtonText: Reject Order CreateTime: 2012-11-23 14:38:48 EntityID: AD4 ID: 157 Name: Order rejected AD5: ChangeTime: 2012-12-06 02:20:12 Config: DescriptionLong: '' DescriptionShort: Order placed FieldOrder: - DynamicField_DeliveryDate - DynamicField_Price - DynamicField_Supplier - DynamicField_Status Fields: DynamicField_DeliveryDate: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Price: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Status: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Supplier: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 Interface: - AgentInterface Permission: '' RequiredLock: 0 SubmitAdviceText: '' SubmitButtonText: Place Order CreateTime: 2012-11-23 14:41:28 EntityID: AD5 ID: 158 Name: Order placed AD6: ChangeTime: 2012-11-23 14:42:43 Config: DescriptionLong: '' DescriptionShort: Shipment received FieldOrder: - DynamicField_DateOfReceipt - DynamicField_Status Fields: DynamicField_DateOfReceipt: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 DynamicField_Status: DefaultValue: '' DescriptionLong: '' DescriptionShort: '' Display: 1 Interface: - AgentInterface Permission: '' RequiredLock: 0 SubmitAdviceText: '' SubmitButtonText: '' CreateTime: 2012-11-23 14:42:43 EntityID: AD6 ID: 159 Name: Shipment received Process: Activities: - A1 - A2 - A3 - A4 - A5 ChangeTime: 2012-12-06 02:31:59 Config: Description: The process to order a book Path: A1: T1: ActivityEntityID: A2 TransitionAction: - TA2 - TA1 A2: T2: ActivityEntityID: A5 TransitionAction: - TA3 - TA4 - TA8 T3: ActivityEntityID: A3 TransitionAction: - TA5 A3: T4: ActivityEntityID: A5 TransitionAction: - TA3 - TA4 - TA8 T5: ActivityEntityID: A4 TransitionAction: - TA6 A4: T6: ActivityEntityID: A5 TransitionAction: - TA3 - TA4 - TA7 A5: {} StartActivity: A1 StartActivityDialog: AD1 CreateTime: 2012-11-23 11:45:12 EntityID: P1 ID: 94 Layout: A1: left: 172 top: 63 A2: left: 402 top: 156 A3: left: 649 top: 255 A4: left: 774 top: 391 A5: left: 194 top: 410 Name: Book ordering State: Active StateEntityID: S1 TransitionActions: - TA1 - TA2 - TA3 - TA4 - TA8 - TA5 - TA3 - TA4 - TA8 - TA6 - TA3 - TA4 - TA7 Transitions: - T1 - T2 - T3 - T4 - T5 - T6 TransitionActions: TA1: ChangeTime: 2012-11-23 16:01:37 Config: Config: Queue: Management Module: Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet CreateTime: 2012-11-23 15:50:59 EntityID: TA1 ID: 61 Name: Move the process ticket into the "Management" queue TA2: ChangeTime: 2012-11-23 16:02:12 Config: Config: Responsible: manager Module: Kernel::System::ProcessManagement::TransitionAction::TicketResponsibleSet CreateTime: 2012-11-23 15:58:22 EntityID: TA2 ID: 62 Name: Change ticket responsible to "manager" TA3: ChangeTime: 2012-11-24 14:27:02 Config: Config: Queue: Employees Module: Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet CreateTime: 2012-11-23 16:02:54 EntityID: TA3 ID: 63 Name: Move the process ticket into the "Employees" queue TA4: ChangeTime: 2012-11-23 16:04:06 Config: Config: Responsible: Employee Module: Kernel::System::ProcessManagement::TransitionAction::TicketResponsibleSet CreateTime: 2012-11-23 16:04:06 EntityID: TA4 ID: 64 Name: Change ticket responsible to "Employee" TA5: ChangeTime: 2012-12-06 02:18:34 Config: Config: Queue: Purchasing Module: Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet CreateTime: 2012-11-23 16:04:54 EntityID: TA5 ID: 65 Name: Move process ticket into the "Purchasing" queue TA6: ChangeTime: 2012-12-06 02:18:48 Config: Config: Queue: Post office Module: Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet CreateTime: 2012-11-23 16:06:20 EntityID: TA6 ID: 66 Name: Move process ticket into the "Post office" queue TA7: ChangeTime: 2012-12-06 02:29:55 Config: Config: State: closed successful Module: Kernel::System::ProcessManagement::TransitionAction::TicketStateSet CreateTime: 2012-12-06 02:29:27 EntityID: TA7 ID: 67 Name: Close ticket successfully TA8: ChangeTime: 2012-12-06 02:31:12 Config: Config: State: closed unsuccessful Module: Kernel::System::ProcessManagement::TransitionAction::TicketStateSet CreateTime: 2012-12-06 02:31:12 EntityID: TA8 ID: 68 Name: Close ticket unsuccessfully Transitions: T1: ChangeTime: 2012-11-23 15:12:20 Config: Condition: 1: Fields: DynamicField_Status: Match: Approval Type: String Type: and ConditionLinking: and CreateTime: 2012-11-23 11:53:52 EntityID: T1 ID: 94 Name: Approval T2: ChangeTime: 2012-11-23 15:12:50 Config: Condition: 1: Fields: DynamicField_Status: Match: Approval denied Type: String Type: and ConditionLinking: and CreateTime: 2012-11-23 11:54:26 EntityID: T2 ID: 95 Name: Approval denied T3: ChangeTime: 2012-11-23 15:13:29 Config: Condition: 1: Fields: DynamicField_Status: Match: Approved Type: String Type: and ConditionLinking: and CreateTime: 2012-11-23 11:54:54 EntityID: T3 ID: 96 Name: Approved T4: ChangeTime: 2012-11-23 15:14:08 Config: Condition: 1: Fields: DynamicField_Status: Match: Order denied Type: String Type: and ConditionLinking: and CreateTime: 2012-11-23 11:55:25 EntityID: T4 ID: 97 Name: Order denied T5: ChangeTime: 2012-11-23 18:30:33 Config: Condition: 1: Fields: DynamicField_Status: Match: Order placed Type: String Type: and ConditionLinking: and CreateTime: 2012-11-23 11:56:15 EntityID: T5 ID: 98 Name: Order placed T6: ChangeTime: 2012-11-23 15:15:30 Config: Condition: 1: Fields: DynamicField_Status: Match: Shipment received Type: String Type: and ConditionLinking: and CreateTime: 2012-11-23 11:56:48 EntityID: T6 ID: 99 Name: Shipment received
Mchakato unatengeneza njia ya mtiririko wa kazi/mchakato. Pointi za njia katika mwelekeo huu zinaweza kuwa Shughuli au Mapito, tutaongelea haya baadaye.
Usanidi wa mchakato unaweza kufanyika kkwenye faili
Kernel/Config.pm
lakini inashauriwa kutengeneza mafaili
mapya kama Kernel/Config/Files/MyProcess.pm
. Ona kwamba
GUI inatengeneza faili
Kernel/Config/File/ZZZProcessManagement
tafadhali
usitumie jina hilo la faili, la sivyo litaandikwa juu yake ukifanya
ulandanishi wa michakato. Tuone mfano wa mchakato wa usanidi (kutoka kwenye
faili la hifadhi muda ya mchakato):
$Self->{'Process'} = { 'P1' => { Name => 'Book order', CreateTime => '16-02-2012 13:37:00', CreateBy => '1', ChangeTime => '17-02-2012 13:37:00', ChangeBy => '1', State => 'Active', StartActivity => 'A1', StartActivityDialog => 'AD1', Path => { 'A1' => { 'T1' => { ActivityEntityID => 'A2', }, }, 'A2' => { 'T2' => { ActivityEntityID => 'A3', }, }, }, }, 'P2' => { Name => 'IT order', CreateTime => '26-02-2012 13:37:00', CreateBy => '1', ChangeTime => '27-02-2012 13:37:00', ChangeBy => '1', State => 'Active', StartActivity => 'A2', StartActivityDialog => 'AD2', Path => { 'A2' => { 'T3' => { ActivityEntityID => 'A4', }, }, }, } };
Jina la mchakato, hii inaweza kuchaguliwa na wakala wakati wa kutengeneza tiketi ya mchakato mpya.
Inafafanua hali ya mchakato. Thamani ziwezekanazo:
'Amilifu' ni michakato yote ambayo inaweza kutumika katika tiketi mpya za mchakato.
'KwanjukaMbali' ni michakato ambayo haiwezi kuchaguliwa tena kwa tiketi mpya, lakini tiketi zilizopo zinaweza kutumia huo mchakato.
'Isiyo Amilifu' michakato inalemazwa na haiwezi kutumika kwa tiketi mpya au zizlizopo.
Wakati wa kutengeneza mchakato mpya wa tiketi, lazima ufafanue ki AnzaShughuli. Mara tu tiketi itakapotengenezwa, hiishughuli ita setiwa na kutumika kama msingi wa kaguzi za kwanza za mpito.
Kwa tiketi mpya, ki AnzaShughuliMaongezi lazima kifafanuliwe. Hii itaonyeshwa wakati wa kutengeneza mchakato mpya wa tiketi (baada ya mchakato kuchaguliwa). Hapa tiketi bado haipo, itatengenezwa baada ya kuwasilisha ki AnzaShughuliMaongezi.
Njia ina muundo wa Shughuli, na Mapito yanayowezekana kati yao, kwa ajili ya mchakato wa sasa. Na pia Vitendo vya Mpito ambavyo vinatokea wakati wa Mpito. Hii inadhibiti mwelekeo ambao tiketi ya mchakato itachukua. Mfano:
'A1' => { 'T1' => { ActivityEntityID => 'A2', }, 'T2' => { ActivityEntityID => 'A3', }, 'T3' => { ActivityEntityID => 'A4', TransitionAction => ['TA1', 'TA2'], }, },
Kama tiketi ya mchakato iko kwenye shughuli 'A1', ina njia tatu zinazowezekana kwenda kwenye Shughuli nyingine. Kwenye Mapito 'T1' kwenda 'T3', masharti yamefafanuliwa, ambayo tiketi ya mchakato inabidi iyatimize ili ihamie kwenye Shughuli nyingine.
Kama katika kesi hii thamani zote za tiketi ya mchakato na sehemu zake zinazobadilika ambazo zinahitajika kwa Mpito 'T2' ziko sawa, tiketi itahamishwa kutoka Shughuli 'A1' kwenda 'A3'. Baada ya MaongeziYaShughuli kuwasilishwa, au mabadiliko yoyote mengine yamefanywa kwenye tiketi, itakaguliwa kwa Mapito yawezekanayo kutoka kwenye Shughuli ya sasa. Kama Mapito zaidi ya moja yanawezekana, ya kwanza yatatumika (kutegemea na upangaji wa nambari za Vitambulisho vya Mpito).
Kwa nyongeza, inawezekana kugawia Vitendo vya Mpito kwa Mapito katika usanidi wa Njia. Hizi moduli ambazo zinatekelezwa baada ya mpito uliofanikiwa. Inabidi zibainishwe katika fomu ya mkusanyiko kama kwenye mfano, tutaongelea kwa undani baadaye.
Shughuli ina Maongezi ya Shughuli ya aina moja au zaidi na inatengeneza 'hatua' katika mchakato. Maongezi ya Shughuli yote ya Shughuli ya sasa yanaonyeshwa katika kuza tiketi na inaweza kutumika mpaka masharti ya Mpito yatimizwe.
Tuone mfano wa sanidi ya shughuli:
$Self->{'Process::Activity'} = { 'A1' => { Name => 'Activity 1 optional', CreateTime => '16-02-2012 13:37:00', CreateBy => '1', ChangeTime => '17-02-2012 13:37:00', ChangeBy => '1', ActivityDialog => { 1 => 'AD1', }, }, 'A2' => { Name => 'Activity 2 optional', CreateTime => '16-02-2012 13:37:00', CreateBy => '1', ChangeTime => '17-02-2012 13:37:00', ChangeBy => '1', ActivityDialog => { 1 => 'AD5', 2 => 'AD6', 3 => 'AD1', }, }, };
Maongezi ya Shughuli ni skrini maalumu na inaweza kutumika katika shughuli mbali mbali.
Tuone mfano wa usanidi
$Self->{'Process::ActivityDialog'} = { 'AD1' => { Name => 'ActivityDialog 1 optional', DescriptionShort => 'Basic info', DescriptionLong => 'Please insert the necessesary basic information for IT orders', CreateTime => '28-02-2012 13:37:00', CreateBy => '1', ChangeTime => '29-02-2012 13:37:00', ChangeBy => '1', Fields => { PriorityID => { DescriptionShort => 'Priority ID', DescriptionLong => 'Enter the priority here', Display => 2, }, }, FieldOrder => [ 'PriorityID' ], SubmitAdviceText => 'Note: If you submit the form...', SubmitButtonText => 'Send request', }, 'AD2' => { Name => 'ActivityDialog 2 optional', DescriptionShort => 'Basic info', DescriptionLong => 'Please insert the necessesary basic information for Book orders', CreateTime => '28-02-2012 13:37:00', CreateBy => '1', ChangeTime => '29-02-2012 13:37:00', ChangeBy => '1', Fields => { StateID => { DescriptionShort => 'State ID', DescriptionLong => 'Enter the state here', Display => 2, DefaultValue => '2', }, Queue => { DescriptionShort => 'Queue ID', DescriptionLong => 'Enter the queue here', Display => 2, DefaultValue => 'Raw', }, Title => { DescriptionShort => 'Title', DescriptionLong => 'Enter the title here', Display => 1, DefaultValue => 'Default Title', }, DynamicField_Anzahl => { DescriptionShort => 'Amount', DescriptionLong => 'Enter the amount here', Display => 2, DefaultValue => '4', }, }, FieldOrder => [ 'DynamicField_Anzahl', 'StateID', 'Queue', 'Title' ], SubmitAdviceText => 'Note: If you submit the form...', SubmitButtonText => 'Send request', }, };
Ina sehemu zote ambazo zinaweza kuonyeshwa katika Maongezi ya Shughuli haya. Sehemu zifuatazo zinaweza kutumika sasa:
Title State StateID Priority PriorityID Lock LockID Queue QueueID Customer CustomerID CustomerNo CustomerUserID Owner OwnerID Type TypeID SLA SLAID Service ServiceID Responsible ResponsibleID PendingTime DynamicField_$FieldName # for all dynamic fields
Mfano wa sanidi yen
StateID => { DescriptionShort => 'State ID', DescriptionLong => 'Enter the state here', Display => 2, DefaultValue => '2', },
Sehemu "Makala" ni kesi maalumu. Kama ipo kwenye usanidi wa "Sehemu", Maongezi ya Shughuli yatakuwa na kihariri kamili cha Nakalatajiri chenye sehemu ya somo na ushughulikiaji viambatamishi. Nakala iliyoingizwa kisha itaongezwa kwenye tiketi kama nakala na kutumwa kwa barua pepe. Tuone mfano wa usanidi wa sehemu ya Makala:
Article => { DescriptionShort => 'Please insert your comment here.', DescriptionLong => '', Display => 1, Config => { ArticleType => 'note-internal', LabelSubject => '', LabelBody => '', }, },
Tuangalie chaguo za usanidi wa sehemu:
Maelezo marefu ya sehemu ya hiari yanayo onyeshwa pale kipanya kinapokuwa juu ya eneo, kwa mfano ushauri wa jinsi ya kujaza eneo.
Inadhibiti kama sehemu inaonekana au ni ya lazima. Thamani zinazowezekana:
'0': sehemu haionekani. Hii inakuwa na manufaa kama thamani za sehemu zinatakiwa kusetiwa kiotomatiki. ThamaniChaguo-msingi iliyosanidiwa itahifadhiwa katika kesi hii.
'1': sehemu inaonekana, lakini ni ya hiari.
'2': sehemu inaonekana na ni ya lazima. Sehemu zifuatazo zinaweza kuwa hazionekani na za lazima tu:
QueueID Queue State StateID Lock LockID Priority PriorityID Type TypeID
Kama sehemu zimesanidiwa kama za hiari, na hakuna thamani iliyowasilishwa na mtumiaji, Thamani Chaguo-msingi itahifadhiwa wakati Maongezi ya Shughuli yanawasilishwa na mtumiaji.
Kwa sehemu zenye 'Kitambulisho' (kama KitambulishoChaFoleni, KitambulishoChaMmiliki), hii inamaanisha Kitambulisho cha hifadhidata ya thamani. Kwa sehemu nyingine zisizo na 'Kitambulisho' (kama Foleni, Mmiliki), ThamaniChaguo-msingi lazima iwe na thamani yenyewe. Mfano:
Queue => { DescriptionShort => 'Queue', DescriptionLong => 'Enter the queue here', Display => 2, DefaultValue => 'Raw', },
Hapa mpangilio wa muonekano wa sehemu unasanidiwa. MUHIMU: Sehemu zisizoonekana lazima zisanidiwe hapa, kwa sababu sehemu zilizosanidiwa tu zitahusishwa wakati wa kuhifadhi. Sehemu ambazo hazijasanidiwa hazita hifadhiwa.
Nakala ya hiari kuonyeshwa juu ya kitufe cha kuwasilisha kwa msaada zaidi au nakala ya ushauri.
Mpito unachagua - kutegemeana na masharti yanayoweza kusanidiwa - njia gani katika Mchakato inachukuliwa, yaani Shughuli gani tiketi ya Mchakato inaweza kupelekwa.
Tuone mfano:
$Self->{'Process::Transition'} = { 'T1' => { Name => 'Transition 1', CreateTime => '14-03-2012 13:37:00', # optional CreateBy => '1', # optional ChangeTime => '15-03-2012 13:37:00', # optional ChangeBy => '15-03-2012 13:37:00', # optional Condition => { Cond1 => { Fields => { StateID => { Type => 'String', Match => '1', }, }, }, }, }, 'T2' => { Name => 'Transition 2 optional', CreateTime => 'DATE', # optional CreateBy => 'USERID', # optional ChangeTime => 'DATE', # optional ChangeBy => 'USERID', # optional Condition => { Cond1 => { Queue => 'Raw', DynamicField_Farbe => '2', DynamicField_Anzahl => '1', }, }, }, };
Contains all conditions that are necessary for this Transition to take effect. Example:
Condition => { Type => 'and', Cond1 => { Type => 'and', Fields => { StateID => { Type => 'String', Match => '1', }, DynamicField_Marke => { Type => 'String', Match => 'VW', }, }, Cond2 => { Type => 'and', Fields => { Queue => { Type => 'String', Match => 'Raw', }, }, }, },
Tuangalie sharti la usanidi kwa undani.
Inaweka bayana uhusiano wa elementi za masharti kwa nyenzake. Thamani ziwezekanazo:
'na': Hili ni chaguo-msingi. Masharti yote lazima yafikiwe ili mpito ufanyike.
'au': Angalau sharti moja lilingane.
'xor': Lazima sharti moja tu lifanane, siyo zaidi.
Hili ni jina la mfano wa sharti. Inaweza kuchaguliwa kwa uhuru. Mashrti yana tathminiwa katika oda iliyo pangwa.
Inaweka bayana uhusiano baina ya vipimo vya maeneo binafsi ya hili sharti. Thamani ziwezekanazo:
'na': Hili ni chaguo-msingi. Vipimo vya maeneo yote lazima vifanane ili sharti lilingane.
'or' Angalau kipimo kimoja cha sehemu kifanane
'xor': Lazima jatribio moja la eneo lifanane sio zaidi.
Inabainisha sehemu maalumu ambazo thamani zake zinatakiwa kujaribiwa. Kutoka kwenye mfano wetu:
Fields => { StateID => { Type => 'String', Match => '1', },
Mfina wa jina la sehemu. Sehemu zifwatazo za tiketi zinaweza kutumika:
Title State StateID Priority PriorityID Lock LockID Queue QueueID Customer CustomerID CustomerNo CustomerUserID Owner OwnerID Type TypeID SLA SLAID Service ServiceID Responsible ResponsibleID DynamicField_$FieldName # for all DynamicFields
Wakati wa kujaribisha sehemu kwa 'Kitambulisho' (kama Kitambulisho cha SLA), Kitambulisho cha hifadhidata ya sehemu kitatumika kwa ajili ya majaribio, kwa sehemu nyingine (kama SLA) thamani halisi inatumika kwa ajili ya majaribio.
Inaamua aina ya kipimo cha eneo. Thamani ziwezekanazo:
'Tungo': Inalinganisha thamani ya sehemu na tungo iliyobainishwa katika 'Lingana'. Zinalingana kama ziko sawa kabisa.
'Hash': Inafananisha thamani ya sehemu (hash) na hash iliyobainishwa kwenye 'Fananisha'. Thamani zote za hash lazima ziwe sawa.
'Mkusanyiko': Inalinganisha thamani ya sehemu (mkusanyiko) na mkusanyiko uliobainishwa kwenye 'Lingana'. Orodha zote mbili lazima ziwe sawa.
'Regex': Thamani ya sehemu inaweza kujaribiwa na usemi wa kawaida. Nimuhimu kwamba 'Fanana' ina qr{}xms kama sharti la msingi. Katikati ya mabano semi ya kawaida halisi inaweza kuandikwa.
'Moduli': Inakuruhusu kutumia moduli ya Perl kwa ajili ya kukagua
masharti. Kama ikirudisha 1, ukaguzi ulikua chanya. Unaweza kupata moduli ya
mfano kwenye
Kernel/System/ProcessManagement/TransitionValidation/ValidateDemo.pm
.
Vitendo vya Mpito ni vitendo ambavyo vinaweza kuchochewa baada ya mapito yaliyofanyika kikamilifu (pale tiketi ya mchakato inapohama kutoka shughuli moja hadi nyingine). Vitendo hivi vya Mpito vinaweza kutumika kufanya mabadiliko mengi kwenye tiketi, mf. badilisha Foleni au Mmiliki wa tiketi, na pia unaweza kutengeneza Vitendo vyako vya Mpito kufanya mabadiliko mengine magumu.
Tuone mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Queue Move', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet', Config => { Queue => 'Junk', UserID => 123, }, }, };
Parameta hii ina mipangilio yote inayohitajika na moduli. Maudhui yake yanategemea moduli maalumu ya Kitendo cha Mpito inayotumika. Tafadhali pitia nyaraka za moduli moja moja kwa undani zaidi. Katika mfano wetu, Foleni tu lazima iwekwe bayana, Hata hivyo tunatuma pia parameta ya Kitambulisho cha mtumiaji, kwa kutumia parameta ya kitambulisho cha mtumiaji, kitendo cha mpito kitatekelezwa na kumfanya mtumiaji kuwa mwenye kitambulisho cha mtumiji hicho.
Matumizi ya Kitambulisho cha Mtumiaji ndani ya parameta "Config" ya Kitendo cha Mpito inakubalika na Vitendo vyote vya Mpito (tangu OTRS 3.2.4), katika huu mfano inaweza kuwa muhimu zaidi kama mtumiaji anayesababisha Mpito hana ruhusa za kuhamisha tiketi kwenda kwenye foleni 'Taka', wakati mtumiaji mwenye Kitambulisho cha mtumiaji 123 anaweza kuwa nayo.
Ili kutumia moduli za Kitendo cha Mpito zaidi ya mara moja, weka bayana VitendoVyaMpito mbali mbali kwenye usanidi wako. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Queue Move Junk', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet', Config => { Queue => 'Junk', }, }, 'TA2' => { Name => 'Queue Move Raw', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet', Config => { Queue => 'Raw', }, }, };
Hapa moduli ile ile inatumika kuhamisha tiketi ya mchakato kwenda kwenye foleni 'Mbichi', na wakati mwingine kuhamisha kwenda kwenye foleni taka. Kitendo cha Mpito ambacho lazima kitumike kwa Mpito fulani kinajulikana kutoka kwenye mpangilio wa 'Njia' ya usanidi wa Mchakato.
OTRS inakuja na Vitendo vya Mpito vingi unavyoweza kutumia katika michakato yako. Hapa utapata nyaraka zake na jinsi zilivyo sanidiwa.
Ina seti sehemu zinazobadilika moja au zaidi katika mchakato wa tiketi. mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set DynamicField Master to Master and Approved to 1', Module => 'Kernel::System::ProcessManagement::TransitionAction::DynamicFieldSet', Config => { MasterSlave => 'Master', Approved => '1', }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'MkuuMtumwa' na 'Kubaliwa' inatolewa kama mifano ya majina ya SehemuZinazobadilika. Thamani za sehemu ('Mkuu' na '1') itasetiwa na KitendoChaMpito hiki.
Inatengeneza Makala na inaweza kutumika kutengeneza dokezo au majibu ya barua pepe. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Article Create Note Internal', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketArticleCreate', Config => { ArticleType => 'note-internal', # note-external|phone|fax|sms|... # excluding any email type SenderType => 'agent', # agent|system|customer ContentType => 'text/plain; charset=ISO-8859-15', # or optional Charset & MimeType Subject => 'some short description', # required Body => 'the message text', # required HistoryType => 'OwnerUpdate', # EmailCustomer|Move|AddNote|PriorityUpdate|WebRequestCustomer|... HistoryComment => 'Some free text!', From => 'Some Agent <email@example.com>', # not required but useful To => 'Some Customer A <customer-a@example.com>', # not required but useful Cc => 'Some Customer B <customer-b@example.com>', # not required but useful ReplyTo => 'Some Customer B <customer-b@example.com>', # not required InReplyTo => '<asdasdasd.12@example.com>', # not required but useful References => '<asdasdasd.1@example.com> <asdasdasd.12@example.com>', # not required but useful NoAgentNotify => 0, # if you don't want to send agent notifications AutoResponseType => 'auto reply', # auto reject|auto follow up|auto reply/new ticket|auto remove ForceNotificationToUserID => [ 1, 43, 56 ], # if you want to force somebody ExcludeNotificationToUserID => [ 43, 56 ], # if you want full exclude somebody from notfications, # will also be removed in To: line of article, # higher prio as ForceNotificationToUserID ExcludeMuteNotificationToUserID => [ 43, 56 ], # the same as ExcludeNotificationToUserID but only the # sending gets muted, agent will still shown in To: # line of article }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa. Inachaguliwa kwa uhuru, lakini inatakiwa kuakisi maana ya kitendo kilicho sanidiwa.
'Aina ya Makala' inafafanua aina ya makala itakayotengenezwa. Thamani ziwezekanazo: simu, faksi, ujumbe mfupi wa maneno, notisi-ndani, notisi-nje, na notisi-ripoti.
Aina Ya Mtumaji inafafanua aina ya mtumaji wa makala. Thamani ziwezekanazo: wakala, mfumo, mteja.
'AinaMaudhui' inafafanua aina ya maudhui ya makala. Thamani ziwezekanazo: 'nakala/ghafi; seti kibambo=ISO-8859-15' au seti kibambo nyingine yoyote halali na aina ya mime.
'Somo' inafafanua mada ya makala. Lazima.
'Kiini' inafafanua maudhui ya makala. Lazima.
AinaYaHistoria inafafanua aina ya ingizo la hitoria. Thamani ziwezekanazo: OngezaNotisi, NyarakaAlamaSasisha, Dunda, SasishaMteja, WakalaWaBaruapepe, MtejaWaBaruapepe, MudaWaKupandaMajibuTaarifuKabla, MudaWaKupandaMajibuAnza, MudaWaKupandaMajibuSitisha, MudaWaKupandaUsuluhishiTaarifuKabla, MudaWaKupandaUsuluhishiAnza, MudaWaKupandaUsuluhishiSitisha, MudaWaKupandaSasishaTaarifaKabla, MudaWaKupandaSasishaAnza, MudaWaKupandaSasishaSitisha, Ufwatiliaji, PelekaMbele, Funga, KitanziUlinzi, Unganishwa, Misc, Hamisha, TiketiMpya, MmilikiSasisha, PigaSimuWakala, PigaSimuMteja, KipaumbeleSasisha, Ondoa, JukumuSasisha, TumaTaarifaWakala, TumaJibu, TumaUfwatiliajiOtomatiki, TumaKataaKiotomatiki, TumaJibuKiotomatiki, TumaTaarifaMteja, SasishaHuduma, SetiMudaKusubiri, SasishaSLA, SasishaHali, Jiunge, MaombiYaMfumo, SasishaSehemuInayobadilikaTiketi, TiketiOngezaKiungo, TiketiFutaKiungo, MahesabuYaMuda, SasishaAina, Fungua, Jiondoe, MaombiYaTocutiMteja.
'HistoriaMaoni' inafafanua maudhui ya ingizo la historia.
'Kutoka','Kwa','Nakala' na 'JibuKwa' peleka anuani za barua pepe kwenye nukuu zilizobainishwa juu.
'KatikaMajibuKwa' na 'Marejeo' chukua Vitambulisho vya ujumbe wa barua pepe.
'HakunaWakalaArifu'-kama imesetiwa kuwa 1, taarifa ya barua pepe ya Wakala haitatumwa.
'MajibuAinaOtomatiki' inaweza kuchukua thamani zifuatazo: ufwatiliaji otomatiki, ukataaji otomatiki, uondoaji otomatiki, majibu otomatiki, majibu otomatiki/tiketi mpya.
'LazimishaTaarifaKwaKitambulichoChaMtumiaji', 'TenganishaTaarifaKwaKitambulishoChamtumiaji', 'TenganishaNyamazishaTaarifaKwaKitambulishoChaMtumiaji' zinaweza kuchukua orodha ya Vitambulisho vya Watumiaji ambao aidha wanapata taarifa kila wakati, hawapati taarifa au wanawekwa kwenye orodha kama wanapata taarifa lakini hawapati barua pepe ya taarifa.
Creates a ticket with an article, the new ticket can be linked with process ticket. Example:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Ticket Create', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketCreate', Config => { # ticket required: Title => 'Some Ticket Title', Queue => 'Raw', # or QueueID => 123, Lock => 'unlock', Priority => '3 normal', # or PriorityID => 2, State => 'new', # or StateID => 5, CustomerID => '123465', CustomerUser => 'customer@example.com', OwnerID => 'someuserlogin', # or OwnerID => 123, # ticket optional: TN => $TicketObject->TicketCreateNumber(), # optional Type => 'Incident', # or TypeID => 1, not required Service => 'Service A', # or ServiceID => 1, not required SLA => 'SLA A', # or SLAID => 1, not required ResponsibleID => 123, # not required ArchiveFlag => 'y', # (y|n) not required PendingTime => '2011-12-23 23:05:00', # optional (for pending states) PendingTimeDiff => 123 , # optional (for pending states) # article required: ArticleType => 'note-internal', # note-external|phone|fax|sms|... # excluding any email type SenderType => 'agent', # agent|system|customer ContentType => 'text/plain; charset=ISO-8859-15', # or optional Charset & MimeType Subject => 'some short description', # required Body => 'the message text', # required HistoryType => 'OwnerUpdate', # EmailCustomer|Move|AddNote|PriorityUpdate|WebRequestCustomer|... HistoryComment => 'Some free text!', # article optional: From => 'Some Agent <email@example.com>', # not required but useful To => 'Some Customer A <customer-a@example.com>', # not required but useful Cc => 'Some Customer B <customer-b@example.com>', # not required but useful ReplyTo => 'Some Customer B <customer-b@example.com>', # not required MessageID => '<asdasdasd.123@example.com>', # not required but useful InReplyTo => '<asdasdasd.12@example.com>', # not required but useful References => '<asdasdasd.1@example.com> <asdasdasd.12@example.com>', # not required but useful NoAgentNotify => 0, # if you don't want to send agent notifications AutoResponseType => 'auto reply' # auto reject|auto follow up|auto reply/new ticket|auto remove ForceNotificationToUserID => [ 1, 43, 56 ], # if you want to force somebody ExcludeNotificationToUserID => [ 43,56 ], # if you want full exclude somebody from notifications, # will also be removed in To: line of article, # higher prio as ForceNotificationToUserID ExcludeMuteNotificationToUserID => [ 43,56 ], # the same as ExcludeNotificationToUserID but only the # sending gets muted, agent will still shown in To: # line of article TimeUnit => 123 # other: DynamicField_NameX => $Value, LinkAs => $LinkType, # Normal, Parent, Child, etc. (respective original ticket) UserID => 123, # optional, to override the UserID from the logged user }
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa. Inachaguliwa kwa uhuru, lakini inatakiwa kuakisi maana ya kitendo kilicho sanidiwa.
'Title' The ticket title.
'Queue' or 'QueueID' specifies the name or id of the queue to be used in the new ticket.
'Lock' or 'LockID' sets the lock status of the ticket.
'Priority' or 'PriorityID' specifies the name or od if the priority to be used in the new ticket.
'State' or 'StateID' specifies the name or id of the state to be used in the new ticket.
'CustomerID', the customer id to be set for the new ticket.
'CustomerUser', the login of the customer that will be assigned in the ticket.
'Owner' or 'OwnerID', specifies the login or id of the agent that will be the new ticket owner.
'TN', custom number for the new ticket.
'Type' or 'TypeID' specifies the name or id of the ticket type to be used in the new ticket.
'Service' or 'ServiceID' specifies the name or id of the service to be used in the new ticket.
'SLA' or 'SLaID' specifies the name or id of the SLA to be used in the new ticket.
'ResponsibleID', the ID of the agent that will be the new ticket responsible.
'PendingTime', a predefined date to set the Ticket Pending Times, when the ticket state belongs to a pending state type
'PendingTimeDiff', a dynamically date ( expressed in seconds from current date/time ) to set the Ticket Pending Times, when the ticket state belongs to a pending state type
'Aina ya Makala' inafafanua aina ya makala itakayotengenezwa. Thamani ziwezekanazo: simu, faksi, ujumbe mfupi wa maneno, notisi-ndani, notisi-nje, na notisi-ripoti.
Aina Ya Mtumaji inafafanua aina ya mtumaji wa makala. Thamani ziwezekanazo: wakala, mfumo, mteja.
'AinaMaudhui' inafafanua aina ya maudhui ya makala. Thamani ziwezekanazo: 'nakala/ghafi; seti kibambo=ISO-8859-15' au seti kibambo nyingine yoyote halali na aina ya mime.
'Somo' inafafanua mada ya makala. Lazima.
'Kiini' inafafanua maudhui ya makala. Lazima.
'HistoryType' defines the type of the history entry. Possible values: AddNote, ArchiveFlagUpdate, Bounce, CustomerUpdate, EmailAgent, EmailCustomer, EscalationResponseTimeNotifyBefore, EscalationResponseTimeStart, EscalationResponseTimeStop, EscalationSolutionTimeNotifyBefore, EscalationSolutionTimeStart, EscalationSolutionTimeStop, EscalationUpdateTimeNotifyBefore, EscalationUpdateTimeStart, EscalationUpdateTimeStop, FollowUp, Forward, Lock, LoopProtection, Merged, Misc, Move, NewTicket, OwnerUpdate, PhoneCallAgent, PhoneCallCustomer, PriorityUpdate, Remove, ResponsibleUpdate, SendAgentNotification, SendAnswer, SendAutoFollowUp, SendAutoReject, SendAutoReply, SendCustomerNotification, ServiceUpdate, SetPendingTime, SLAUpdate, StateUpdate, Subscribe, SystemRequest, TicketDynamicFieldUpdate, TicketLinkAdd, TicketLinkDelete, TimeAccounting, TypeUpdate, Unlock, Unsubscribe, WebRequestCustomer.
'HistoriaMaoni' inafafanua maudhui ya ingizo la historia.
'Kutoka','Kwa','Nakala' na 'JibuKwa' peleka anuani za barua pepe kwenye nukuu zilizobainishwa juu.
'KatikaMajibuKwa' na 'Marejeo' chukua Vitambulisho vya ujumbe wa barua pepe.
'HakunaWakalaArifu'-kama imesetiwa kuwa 1, taarifa ya barua pepe ya Wakala haitatumwa.
'MajibuAinaOtomatiki' inaweza kuchukua thamani zifuatazo: ufwatiliaji otomatiki, ukataaji otomatiki, uondoaji otomatiki, majibu otomatiki, majibu otomatiki/tiketi mpya.
'LazimishaTaarifaKwaKitambulichoChaMtumiaji', 'TenganishaTaarifaKwaKitambulishoChamtumiaji', 'TenganishaNyamazishaTaarifaKwaKitambulishoChaMtumiaji' zinaweza kuchukua orodha ya Vitambulisho vya Watumiaji ambao aidha wanapata taarifa kila wakati, hawapati taarifa au wanawekwa kwenye orodha kama wanapata taarifa lakini hawapati barua pepe ya taarifa.
'TimeUnit' the time invested in the current ticket article expressed in seconds, minutes, hours, etc.
'DynamicField_NameX' where DynamicField_ is a required prefix and NameX is the name of a Dynamic Field to be set in the new ticket (on ticket level, not article levels)
'LinkAs' to define the new ticket relation with originator ticket, from the new ticket point of view, for example Normal, Parent, Child etc.
Inaseti mteja wa tiketi ya mchakato. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Customer Set Customer to test', Module => 'Kernel::System::Process::TransitionAction::TicketCustomerSet', Config => { No => 'test', User => 'client-user-123', # or in other words # CustomerID => 'client123', # CustomerUserID => 'client-user-123', }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
Hakuna au Kitambulisho cha Mteja inaseti kitambulisho cha Mteja.
Mtumiaji au KitambulishoChaMtumiajiMteja anaseti jina la mtumiaji la mteja.
Inabadilisha ufunguo wa tiketi ya mchakato, Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set Lock to lock', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketLockSet', Config => { Lock => 'lock', # or LockID => 2, }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Funga' inafafanua ufungaji mpya wa tiketi ya mchakato.
'Kitambulisho cha Funga' inafafanua kitambulisho cha ndani cha ufungaji mpya.
Inabadilisha mmiliki wa tiketi ya nchakato. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Owner Set root@localhost', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketOwnerSet', Config => { Owner => 'root@localhost', # or OwnerID => 1, }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Mmiliki' inaweka bayana jina la kuingia la mmiliki mpya.
'Kitambulisho cha Mmiliki' inaweka bayana kitambulisho cha ndani cha mmiliki mpya.
Inapeleka tiketi kwenye foleni lengwa. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Queue Move Raw', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketQueueSet', Config => { Queue => 'Raw', # or # QueueID => '2', }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Foleni' inaweka bayana jina la foleni lengwa.
'Kitambulisho cha Foleni' inaweka bayana kitambulisho cha ndani cha foleni lengwa.
Inabadilisha tiketi ya mchakato inayohusika. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Responsible Set root@localhost', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketResponsibleSet', Config => { Responsible => 'root@localhost', # or ResponsibleID => 1, }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Mhusika' inaweka bayana jina la kuingia la mhusika mpya.
'Kitambulisho cha Mhusika' inaweka bayana kitambulisho cha ndani cha mhusika mpya.
Inagawia huduma kwa tiketi ya mchakato. Tiketi inahitaji kuwa na mteja na huduma lazima iwe imegawiwa kwa huyo mteja. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set MyService service', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketServiceSet', Config => { Service => 'MyService', # or ServiceID => 123, }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Huduma' inafafanua huduma mpya ya tiketi ya mchakato. Jina kamili linahitajika (mf. HudumaBabu::HudumaBaba::HudumaMtoto ).
'Kitambulisho cha Huduma' inafafanua kitambulisho cha ndani cha huduma mpya.
Inagawia makubaliano ya ngazi ya huduma kwa tiketi ya mchakato. Tiketi inahitaji kuwa na huduma na SLA lazima igawiwe kwa hiyo huduma. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set MySLA SLA', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketSLASet', Config => { SLA => 'MyService', # or SLAID => 123, }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'SLA' inafafanua makubaliano ya ngazi ya huduma mpya ya mchakato wa tiketi.
'Kitambulisho cha SLA' inafafanua kitambulisho cha ndani cha SLA mpya.
Inabadilisha hali ya mchakato wa tiketi. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set State to open', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketStateSet', Config => { State => 'open', # or StateID => 4, PendingTimeDiff => 123, }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Hali' inafafanua hali mpya ya tiketi ya mchakato.
'Kitanbulisho cha Hali' inafafanua kitambulisho cha ndani cha hali mpya.
'MudaKusubiriTofauti' inatumika kwa ajili ya aina za hali za kusubiri tu, inafafanua utofauti wa muda katika sekunde yenye uhusiano (yenye uhusiano na muda wa utekelezaji wa Kitendo cha Mpito) na muda wa kusubiri wa tiketi uliosetiwa (mf. 3600 inamaanisha muda wa kusubiri ni lisaa 1 baada ya Kitendo cha Mpito kutekelezwa).
Inaseti kichwa cha habari cha tiketi ya mchakato. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set Ticket Title to Ticket-title', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketTitleSet', Config => { Title => 'Ticket-title', }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
"Kichwa cha Habari" kinaweka bayana kichwa cha habari kipya cha tiketi.
Inaseti aina ya tiketi ya mchakato. Mfano:
$Self->{'Process::TransitionAction'} = { 'TA1' => { Name => 'Set Ticket Type to default', Module => 'Kernel::System::ProcessManagement::TransitionAction::TicketTypeSet', Config => { Type => 'default', # or # TypeID => '1', }, }, };
'Jina' inaweka bayana jina la KitendoChaMpito kilicho sanidiwa.
'Aina' inaweka bayana jina la aina ya tiketi.
'Kitambulisho cha Aina' inaweka bayana kitambulisho cha ndani cha aina ya tiketi.
Kwa usaidizi kutoka ACLs, unaweza kuweka kikomo cha vitu vya kuchaguliwa kwenye tiketi za mchakato. Tafadhali ona pia rejea ya ACL kwa maelezo kamili ya sintaksi ya ACL.
ACL zinaweza kufafanuliwa kwenye Kernel/Config.pm
tu. Mfano:
$Self->{TicketAcl}->{'001-ACL-ProcessProperties'} = { Properties => { Process => { ProcessEntityID => ['P1'], ActivityEntityID => ['A1'], ActivityDialogEntityID => ['AD1'], } }, Possible => { ActivityDialog => ['AD1', 'AD3'], }, PossibleNot => { ActivityDialog => ['AD3'], }, };
Jina la sheria ya ACL. Kwa maelezo zaidi kuhusu sheria za ACL kwa ujumla, tafadhali nenda mwongozo wa ACL.
Hii sehemu inatumika lulagua kama ACL laizma itumike. Kama ina thamani zilizowekwa bayana, sheria itatumika. Thamani zifuatazo zinaweza kutumika:
Kitambulisho cha mchakato ambacho mchakato. Unafanania kama tiketi ikigawiwa kwa huu mchakato.
Kitambulisho cha Shughuli ambayo tiketi ya mchakato imegawiwa kwa sasa.
Hapa unaweza kuweka bayana orodha ya Vitambulisho vya Maongezi ya Shughuli. Hii orodha itaweka ukomo wa Maongezi ya Shughuli ambayo yanaweza kugawiwa kwa mtumijai katika barakoa ya kuza tiketi.
'Inawezekana' inaorodhesha Maongezi ya Shughuli ambayo yanaruhusiwa. Mpangilio hapo juu utaruhusu 'AD1' na 'AD3' tu kati ya orodha ya Maongezi ya Shughuli yaliyosanidiwa.
'InawezekanaHapana' inaorodhesha Maongezi ya Shughuli ambayo hayaruhusiwi. Katika mfano hapo juu, mpangilio utaondoa 'AD3' kutoka kwenye orodha ya Maongezi ya Shughuli yaliyosanidiwa.
Kama zote 'Inawezekana' na 'InawezekanaHapana' zimewekwa bayana, orodha ya Maongezi ya Shughuli yatachujwa kwanza na 'Inawezekana', na kuacha 'AD1' na 'AD3' tu katika mfano wetu. Kisha 'InawezekanaHapana' itafanyika na kuchuja 'AD3', ili 'AD1' pekee ibaki na inaonyeshwa kama Maongezi ya Shughuli yanayowezekana ambayo mtumiaji anaweza kutumia.
Kama sheria zaidi ya moja za ACL zimefanana, muunganiko wa sheria zote zinazofanana utatafutwa kutengeneza Maongezi ya Shughuli yanayowezekana. Mfano:
Maongezi ya Shughuli Yaliyosanidiwa: 'AD1', 'AD2', 'AD3', 'AD4', 'AD5', 'AD6', 'AD7'.
$Self->{TicketAcl}->{'001-ACL-Status'} = { Properties => { Ticket => { Status => 'new', } }, Possible => { ActivityDialog => ['AD1', 'AD2', 'AD3', 'AD6', 'AD7'], }, }; $Self->{TicketAcl}->{'002-ACL-Queue'} = { Properties => { Ticket => { Queue => ['Raw'] } }, Possible => { ActivityDialog => ['AD2', 'AD3', 'AD4', 'AD7'], }, }; $Self->{TicketAcl}->{'003-ACL-Priority'} = { Properties => { Ticket => { Priority => ['3 normal'] } }, PossibleNot => { ActivityDialog => ['AD3', 'AD4'], }, };
Kama tiketi ya mchakato ina hali 'mpya', iko kwenye foleni 'Mbichi' na ina kipaumbele '3 kawaida', basi sheria zote tatu za ACL zitafanana nayo.
Sheria ya kwanza inapunguza Maongezi ya Shughuli kutoka 'AD1', 'AD2', 'AD3', 'AD4', 'AD5', 'AD6', 'AD7' to 'AD1', 'AD2', 'AD3', 'AD6', 'AD7' na inakataza 'AD4' na 'AD5'.
Sheria ya pili itapunguza zaidi Maongezi ya Shughuli yaliyobaki. Katika mfano wetu, 'AD2', 'AD3', 'AD7' zitabaki.
Sasa sheria ya tatu itapunguza zaidi orodha kwa 'InawezekanaHapana'. 'AD3' inaondolewa kutoka kwenye orodha. 'AD4' haiondolewi, kwa kuwa haikuwa kwenye orodha tangu mwanzo. Mwishoni, 'AD2' na 'AD7' zitabaki kama Maongezi ya Shughuli yanayowezekana ambayo mtumiaji anaweza kutumia.
Pia inawezekana kuweka ukomo wa michakato ambayo inaweza kuonyeshwa katika skrini ya "Tiketi mpya ya mchakato", hii sifa ni sawa na kuweka ukomo wa MaongeziYaShughuli kwa ubaguzi mmoja: ACL zinaweza kujikita kwa watumiaji tu.
Ona mifano chini:
$Self->{TicketAcl}->{'200-ACL-Process'} = { # match properties Properties => { User => { UserID => [2, 3], }, }, Possible => { Process => ['P1', 'P2', 'P3'], }, PossibleNot => { Process => ['P4'], }, };
$Self->{TicketAcl}->{'201-ACL-Process'} = { # match properties Properties => { User => { Group_rw => [ 'MyGroup' ], }, }, Possible => { Process => ['P1', 'P2', 'P3'], }, PossibleNot => { Process => ['P4'], }, };
$Self->{TicketAcl}->{'202-ACL-Process'} = { # match properties Properties => { User => { Role => [ 'MyRole' ], }, }, Possible => { Process => ['P1', 'P2', 'P3'], }, PossibleNot => { Process => ['P4'], }, };