logo cisco-Nexus-3000-Series-Low-Latency-Switches-Switches

cisco Krijimi i detyrave të personalizuara të rrjedhës së punës

cisco-Creating-Custom-Workflow-Tasks-PRODUCT-IMAGE

Rreth hyrjeve të personalizuara të rrjedhës së punës

Cisco UCS Director Orchestrator ofron një listë të llojeve të hyrjeve të përcaktuara mirë për detyra të personalizuara. Cisco UCS Director gjithashtu ju mundëson të krijoni një hyrje të personalizuar të rrjedhës së punës për një detyrë të personalizuar të rrjedhës së punës. Ju mund të krijoni një lloj të ri të hyrjes duke klonuar dhe modifikuar një lloj hyrje ekzistues.

Parakushtet

Para se të shkruani detyra të personalizuara, duhet të plotësoni parakushtet e mëposhtme:

  • Cisco UCS Director është instaluar dhe funksionon në sistemin tuaj. Për më shumë informacion se si të instaloni Cisco UCS Director, referojuni Udhëzuesit për instalimin dhe konfigurimin e Cisco UCS Director.
  • Ju keni një hyrje me privilegje administratori. Ju duhet ta përdorni këtë hyrje kur krijoni dhe modifikoni detyra të personalizuara.
  • Duhet të keni lejen e shkrimit të CloupiaScript për të shkruar një detyrë të personalizuar duke përdorur CloupiaScript.
  • Ju duhet të keni lejen e ekzekutimit të CloupiaScript për të ekzekutuar një detyrë të personalizuar të krijuar duke përdorur CloupiaScript.

Krijimi i një hyrjeje të personalizuar të rrjedhës së punës

Mund të krijoni një hyrje të personalizuar për një detyrë të personalizuar të rrjedhës së punës. Hyrja shfaqet në listën e llojeve të hyrjeve që mund t'i lidhni me hyrjet e detyrave të personalizuara kur krijoni një detyrë të personalizuar të rrjedhës së punës.

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Klikoni "Inputs Custom Workflow".
  • Hapi 3 Klikoni Shto.
  • Hapi 4 Në ekranin Add CustomWorkflow Input, plotësoni fushat e mëposhtme:
    • Emri i llojit të hyrjes me porosi—Një emër unik për llojin e personalizuar të hyrjes.
    • Lloji i hyrjes—Kontrollo një lloj të hyrjes dhe kliko Zgjidh. Bazuar në hyrjen e zgjedhur, shfaqen fusha të tjera. Për shembullampLe, kur zgjidhni Adresën Email si lloj të hyrjes, shfaqet një listë vlerash (LOV). Përdorni fushat e reja për të kufizuar vlerat e hyrjes së personalizuar.
  • Hapi 5 Klikoni Submit.
  • Hyrja e personalizuar e rrjedhës së punës i shtohet Cisco UCS Director dhe është e disponueshme në listën e llojeve të hyrjeve.
Vleresimi i personalizuar i hyrjes

Konsumatorët mund të kenë nevojë të vërtetojnë të dhënat e rrjedhës së punës duke përdorur burime të jashtme. Nga kutia, Drejtori i Cisco UCS nuk mund të plotësojë nevojat e verifikimit të çdo klienti. Për të mbushur këtë boshllëk, Cisco UCS Director ofron një opsion për të vërtetuar çdo hyrje në kohën e ekzekutimit duke përdorur një skript të ofruar nga klienti. Skripti mund të raportojë gabime në hyrje dhe mund të kërkojë hyrje të vlefshme përpara se të ekzekutojë një kërkesë shërbimi. Skripti mund të shkruhet në çdo gjuhë, mund të aksesojë çdo burim të jashtëm dhe ka qasje në të gjitha vlerat e hyrjes së rrjedhës së punës.
Ju mund të shkruani skriptet e personalizuara të vlefshmërisë duke përdorur JavaScript, Python, një skript bash shell ose ndonjë gjuhë tjetër skriptimi.

Ish-i i mëposhtëmampSkriptet e vlefshmërisë mund të gjenden në Cisco UCS Director në Orkestrimi > Hyrjet e Përshtatshme të Rrjedhës së Punës:

  • Example-bash-script-validator
  • Example-javascript-validator
  • Example-python-validator

Ju mund të kopjoni ose klononi ish-inampLe të skriptohen hyrjet e rrjedhës së punës për të krijuar një hyrje të re të vërtetuar. Ju gjithashtu mund të përdorni ishample të dhëna të skriptuara të rrjedhës së punës si një udhëzues për zhvillimin e skripteve tuaja.

Pavarësisht nga gjuha e skriptimit, veçoritë dhe rregullat e mëposhtme zbatohen për vlefshmërinë e hyrjes me porosi të shkruar:

  • I gjithë vërtetimi i skriptuar ekzekutohet në një proces të veçantë, në mënyrë që një proces i dështuar i vërtetimit të mos ndikojë në procesin Cisco UCS Director.
  • Vetëm hyrjet e përgjithshme të tekstit mund të vërtetohen duke përdorur skriptet.
  • Skriptet e verifikimit ekzekutohen një nga një, në sekuencë, në të njëjtin rend në të cilin hyrjet shfaqen në faqen e hyrjeve të rrjedhës së punës. Një proces i veçantë niset për çdo hyrje të vërtetuar.
  • Një vlerë jozero e kthimit nga skripti tregon një vërtetim të dështuar. Opsionale, mund të kaloni një mesazh gabimi përsëri në formularin e hyrjes së rrjedhës së punës.
  • Të gjitha hyrjet e rrjedhës së punës i kalohen skriptit të vlefshmërisë në dy mënyra:
    • Si argumente për skriptin në formën “çelës”=”vlerë”.
    • Si variabla të mjedisit në procesin e skriptit. Emrat e variablave janë etiketat hyrëse.
      Për shembullampLe, nëse rrjedha e punës ka një hyrje të etiketuar si Kodi-Produkti dhe vlera hyrëse është AbC123, ndryshorja i kalohet skriptit të vleftësuesit si "Product-Code"="AbC123".
      Këto variabla hyrëse mund të përdoren nga skripti nëse është e nevojshme për të zbatuar vërtetimin. Përjashtim: Vlerat e tabelës përmbajnë vetëm numrin e rreshtit të përzgjedhjes së tabelës, dhe për këtë arsye janë ndoshta të padobishme.
  • Faqja Edit Custom Workflow Input e bën skriptin të disponueshëm në redaktorin e detyrave të personalizuara. Sintaksa është e theksuar për të gjitha gjuhët. Gabimet sintaksore kontrollohen vetëm për validuesit e JavaScript.
Klonimi i një hyrjeje të personalizuar të rrjedhës së punës

Ju mund të përdorni një hyrje ekzistuese të rrjedhës së punës me porosi në Cisco UCS Director për të krijuar një hyrje të personalizuar të rrjedhës së punës.

Para se të filloni
Një hyrje e personalizuar e rrjedhës së punës duhet të jetë e disponueshme në Cisco UCS Director.

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Klikoni "Inputs Custom Workflow".
  • Hapi 3 Klikoni rreshtin me hyrjen e personalizuar të rrjedhës së punës që do të klonohet.
    Ikona e Klonit shfaqet në krye të tabelës së hyrjeve të rrjedhës së punës me porosi.
  • Hapi 4 Klikoni Clone.
  • Hapi 5 Futni emrin e tipit të hyrjes me porosi.
  • Hapi 6 Përdorni komandat e tjera në ekranin e hyrjes së rrjedhës së punës së personalizuar në Klon për të personalizuar hyrjen e re.
  • Hapi 7 Klikoni Submit.
    Hyrja e detyrës së rrjedhës së punës me porosi klonohet pas konfirmimit dhe është e disponueshme për përdorim në detyrën e rrjedhës së punës me porosi.
Krijimi i një detyre të personalizuar

Për të krijuar një detyrë të personalizuar, bëni sa më poshtë:

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Klikoni Tasks Custom Workflow.
  • Hapi 3 Klikoni Shto.
  • Hapi 4 Në ekranin e Shto Detyrë të Rrjedhës së Punës të Përshtatshme, plotësoni fushat e mëposhtme:
    • Fusha e emrit të detyrës—Një emër unik për detyrën e personalizuar të rrjedhës së punës.
    • Fusha e etiketës së detyrave—Një etiketë për të identifikuar detyrën e personalizuar të rrjedhës së punës.
    • Fusha Regjistrohu nën Kategori—Kategoria e rrjedhës së punës nën të cilën duhet të regjistrohet detyra e rrjedhës së punës me porosi.
    • Kutia e kontrollit Activate Task—Nëse zgjidhet, detyra e personalizuar e rrjedhës së punës regjistrohet me Orchestrator dhe përdoret menjëherë në rrjedhat e punës.
    • Fusha e përshkrimit të shkurtër—Një përshkrim i detyrës së rrjedhës së punës me porosi.
    • Fusha e përshkrimit të detajuar—Një përshkrim i detajuar i detyrës së rrjedhës së punës me porosi.
  • Hapi 5 Klikoni Next.
    Shfaqet ekrani "Inputet e detyrave të personalizuara".
  • Hapi 6 Klikoni Shto.
  • Hapi 7 Në ekranin Shto hyrje në hyrje, plotësoni fushat e mëposhtme:
    • Fusha e emrit të fushës hyrëse—Një emër unik për fushën. Emri duhet të fillojë me karakter analfabetik dhe nuk duhet të përmbajë hapësira ose karaktere të veçanta.
    • Fusha e etiketës së fushës së hyrjes—Një etiketë për të identifikuar fushën e hyrjes.
    • Lista rënëse e llojit të fushës së hyrjes—Zgjidhni llojin e të dhënave të parametrit të hyrjes.
    • Fusha Harta në Lloji i hyrjes (Pa Hartëzimi)—Zgjidhni një lloj hyrjeje në të cilën mund të vihet në hartë kjo fushë, nëse kjo fushë mund të hartohet nga një dalje tjetër detyre ose hyrje globale e rrjedhës së punës.
    • Kutia e kontrollit të detyrueshëm - Nëse zgjidhet, përdoruesi duhet të japë një vlerë për këtë fushë.
    • Fusha RBID—Futni vargun RBID për fushën.
    • Lista rënëse e madhësisë së fushës së hyrjes—Zgjidhni madhësinë e fushës për hyrjet e tekstit dhe tabelave.
    • Fusha e ndihmës në fushën e hyrjes—(Opsionale) Një përshkrim që shfaqet kur vendosni miun mbi fushë.
    • Fusha e shënimit të fushës së hyrjes—(Opsionale) Tekst këshillues për fushën e hyrjes.
    • Fusha e emrit të grupit të fushave—Nëse specifikohet, të gjitha fushat me emrat e grupeve që përputhen vendosen në grupin e fushave.
    • Zona ATRIBUTET E FUSHËS SË TEKSTIT—Plotësoni fushat e mëposhtme kur lloji i fushës së hyrjes është tekst.
    • Kutia e kontrollit të hyrjes së shumëfishtë—Nëse zgjidhet, fusha e hyrjes pranon vlera të shumta bazuar në llojin e fushës hyrëse:
    • Për një LOV - Fusha e hyrjes pranon vlera të shumta hyrëse.
    • Për një fushë teksti—Fusha e hyrjes bëhet fushë teksti me shumë rreshta.
    • Fusha Maksimum Length of Input—Përcaktoni numrin maksimal të karaktereve që mund të futni në fushën e hyrjes.
    • Zona LOV ATTRIBUTES—Plotësoni fushat e mëposhtme kur lloji i hyrjes është Lista e vlerave (LOV) ose LOV me butonat e radios.
    • Fusha Lista e vlerave—Një listë vlerash e ndarë me presje për LOV-të e integruara.
      Fusha e emrit të ofruesit LOV—Emri i ofruesit të LOV për LOV-të jo të integruara.
    • Zona TABLE ATRIBUTES—Plotësoni fushat e mëposhtme kur lloji i fushës së hyrjes është kutia e kontrollit "Tabela", "Tabela kërcyese" ose "Tabela me përzgjedhje".
    • Fusha e emrit të tabelës—Një emër i raportit tabelor për llojet e fushave të tabelës.
    • Zona e VLERËSIMIT TË HYRJES SË FUSHËS—Një ose më shumë nga fushat e mëposhtme shfaqet në varësi të llojit të zgjedhur të të dhënave. Plotësoni fushat për të specifikuar se si do të vërtetohen fushat e hyrjes.
    • Lista rënëse e "Vlerësuesit të hyrjes"—Zgjidhni një verifikues për hyrjen e përdoruesit.
    • Fusha e shprehjes së rregullt—Një model shprehjeje e rregullt që përputhet me vlerën hyrëse.
    • Fusha e mesazhit të shprehjes së rregullt—Një mesazh që shfaqet kur vërtetimi i shprehjes së rregullt dështon.
    • Fusha me vlerë minimale—Një vlerë numerike minimale.
    • Fusha e vlerës maksimale—Një vlerë numerike maksimale.
    • Zona HIDE ON FIELD CONDITION—Plotësoni fushat e mëposhtme për të vendosur kushtin për të fshehur fushën në një formë.
    • Fusha Hide On Field Name—Një emër i brendshëm i fushës në mënyrë që programi që trajton formularin të mund ta identifikojë fushën.
    • Fusha Hide On Field Value—Vlera që duhet të dërgohet sapo të dorëzohet formulari.
    • Lista rënëse Hide On Field Condition—Zgjidhni një kusht në të cilin fusha duhet të fshihet.
    • Fusha e ndihmës HTML-Udhëzimet e ndihmës për fushën e fshehur.
  • Hapi 8 Klikoni Submit.
    Hyrja e hyrjes shtohet në tabelë.
  • Hapi 9 Klikoni Shto për të shtuar më shumë hyrje në hyrje.
  • Hapi 10 Kur të keni mbaruar me shtimin e hyrjeve, klikoni Next.
    Shfaqet ekrani Detyrat e Përshtatshme të Rrjedhës së Punës.
  • Hapi 11 Klikoni Shto.
  • Hapi 12 Në ekranin Shto hyrje në dalje, plotësoni fushat e mëposhtme:
    • Fusha e emrit të fushës së daljes —Një emër unik për fushën e daljes. Duhet të fillojë me një karakter alfabetik dhe nuk duhet të përmbajë hapësira ose karaktere të veçanta.
    • Fusha e përshkrimit të fushës së daljes — Një përshkrim i fushës së daljes.
    • Fusha e llojit të fushës së daljes—Kontrollo një lloj prodhimi. Ky lloj përcakton se si rezultati mund të krahasohet me hyrjet e tjera të detyrave.
  • Hapi 13 Klikoni Submit.
    Hyrja e daljes shtohet në tabelë.
  • Hapi 14 Klikoni Shto për të shtuar më shumë hyrje në dalje.
  • Hapi 15 Kliko Tjetër
    Shfaqet ekrani i Kontrolluesit
  • Hapi 16 (Opsionale) Klikoni Shto për të shtuar një kontrollues.
  • Hapi 17 Në ekranin Shto hyrje te kontrolluesi, plotësoni fushat e mëposhtme:
    • Lista rënëse e metodave—Zgjidhni një metodë marshalizimi ose shkëputjeje për të personalizuar hyrjet dhe/ose daljet për detyrën e rrjedhës së punës me porosi. Metoda mund të jetë një nga këto:
    • Para Marshall-Përdorni këtë metodë për të shtuar ose vendosur një fushë hyrëse dhe për të krijuar dhe vendosur në mënyrë dinamike LOV në një faqe (formë).
    • Pas Marshall-Përdorni këtë metodë për të fshehur ose zbuluar një fushë hyrëse.
    • Before Unmarshall—Përdorni këtë metodë për të kthyer një vlerë hyrëse nga një formë në një formë tjetër—për shembullample, kur dëshironi të enkriptoni një fjalëkalim përpara se ta dërgoni në bazën e të dhënave.
    • After Unmarshall—Përdorni këtë metodë për të vërtetuar një hyrje të përdoruesit dhe për të vendosur mesazhin e gabimit në faqe.
      Shih Shampe: Duke përdorur kontrollorët, në faqen 14.
    • Zona e tekstit të skriptit—Për metodën që zgjodhët nga lista rënëse Method, shtoni kodin për skriptin e personalizimit të GUI.
      Shënim Kliko Shto nëse dëshiron të shtosh kod për më shumë metoda.
      Nëse ka ndonjë vërtetim për fjalëkalimet e futura, sigurohuni që të ndryshoni vërtetimin e kontrolluesit për fjalëkalimet në mënyrë që të mund të modifikoni detyrat e personalizuara në rrjedhat e punës.
      Shënim
  • Hapi 18 Klikoni Submit.
    Kontrolluesi shtohet në tabelë.
  • Hapi 19 Klikoni Next.
    Shfaqet ekrani Script.
  • Hapi 20 Nga lista rënëse e gjuhës së ekzekutimit, zgjidhni një gjuhë.
  • Hapi 21 Në fushën Script, futni kodin CloupiaScript për detyrën e personalizuar të rrjedhës së punës.
    Kodi i Cloupia Script vërtetohet kur futni kodin. Nëse ka ndonjë gabim në kod, një ikonë gabimi (kryqi i kuq) shfaqet pranë numrit të linjës. Zhvendosni miun mbi ikonën e gabimit në view mesazhi i gabimit dhe zgjidhja
  • Hapi 22 Klikoni Save Script.
  • Hapi 23 Klikoni Submit.
    Detyra e personalizuar e rrjedhës së punës është krijuar dhe është e disponueshme për përdorim në rrjedhën e punës

Detyrat dhe depot e personalizuara

Kur krijoni një detyrë të personalizuar, në vend që të shkruani kodin e detyrës me porosi në dritaren e skriptit ose të prisni dhe ngjitni kodin nga një redaktues teksti, mund ta importoni kodin nga një file të ruajtura në një depo GitHub ose BitBucket. Për ta bërë këtë, ju:

  1. Krijo një ose më shumë tekst files në një depo GitHub ose BitBucket, qoftë në github.com ose në një depo GitHub të ndërmarrjes private.
    Shënim Cisco UCS Director mbështet vetëm GitHub (github.com ose një shembull i ndërmarrjes GitHub) dhe ose BitBucket. Ai nuk mbështet shërbime të tjera të pritjes Git duke përfshirë GitLab, Perforce ose Codebase.
  2. Regjistroni depon në Cisco UCS Director. Shihni Shtimi i një depoje GitHub ose BitBucket në Cisco UCS Director, në faqen 7.
  3. Zgjidhni depon dhe specifikoni tekstin file që përmban skriptin e detyrës me porosi. Shihni Shkarkimi i kodit të skriptit të detyrave të personalizuara nga një depo GitHub ose BitBucket, në faqen 8.

Shtimi i një depoje GitHub ose BitBucket në Cisco UCS Director
Për të regjistruar një depo GitHub ose BitBucket në Cisco UCS Director, bëni sa më poshtë:

Para se të filloni
Krijoni një depo GitHub ose BitBucket. Depoja mund të jetë në çdo server GitHub ose BitBucket, publik ose privat që është i aksesueshëm nga Drejtori juaj UCS i Cisco.
Kontrolloni një ose më shumë files që përmban kodin JavaScript për detyrat tuaja të personalizuara në depon tuaj.

  • Hapi 1 Zgjidhni Administrim > Integrim.
  • Hapi 2 Në faqen e Integrimit, klikoni Menaxho Depot.
  • Hapi 3 Klikoni Shto.
  • Hapi 4 Në faqen Shto depo, plotësoni fushat e kërkuara, duke përfshirë sa vijon:
    • Në fushën Pseudonimi i depove, vendosni një emër për të identifikuar depon brenda Cisco UCS Director.
    • Në depo URL fushë, futni URL të depove të GitHub ose BitBucket.
    • Në fushën Emri i Degës, shkruani emrin e degës së depove që dëshironi të përdorni. Emri i paracaktuar është dega kryesore.
    • Në fushën e Përdoruesit të Depove, futni emrin e përdoruesit për llogarinë tuaj GitHub ose BitBucket.
    • Për të shtuar depon e GitHub, në fushën Password/API Token, futni shenjën e gjeneruar API për GitHub-in tuaj.
      Për të gjeneruar shenjën API duke përdorur GitHub, klikoni Cilësimet dhe lundroni te Cilësimet e zhvilluesit > Shenjat e aksesit personal dhe klikoni Genero token të ri.
      Për të shënuar, shtoni depon e BitBucket, në fushën Password/API Token, vendosni fjalëkalimin për BitBucket tuaj.
    • Për të paracaktuar në këtë depo kur krijoni një detyrë të re të personalizuar, kontrolloni Bëje këtë depo timen e paracaktuar.
    • Për të testuar nëse Cisco UCS Director mund të hyjë në depo, klikoni Test Connectivity.
      Gjendja e lidhjes me depon shfaqet në një baner në krye të faqes.
      Nëse nuk jeni në gjendje të lidheni dhe të komunikoni me depon e GitHub ose BitBucket nga Cisco UCS
      Drejtori, përditësoni Cisco UCS Director për të hyrë në internet përmes një serveri proxy. Shihni Udhëzuesin e Administrimit të Drejtorit të Cisco UCS.
      Shënim
  • Hapi 5 Kur të jeni të kënaqur që informacioni i depove është i saktë, klikoni Submit.

Shkarkimi i kodit të skriptit të detyrave të personalizuara nga një depo GitHub ose BitBucket

Për të krijuar një detyrë të re të personalizuar duke importuar tekst nga një depo GitHub ose BitBucket, bëni sa më poshtë:

Para se të filloni
Krijoni një depo GitHub ose BitBucket dhe kontrolloni në një ose më shumë tekst files që përmban kodin JavaScript për detyrat tuaja të personalizuara në depon tuaj.

Shtoni depon e GitHub te Cisco UCS Director. Shihni Shtimin e një depoje GitHub ose BitBucket në Cisco UCS Director, në faqen

  • Hapi 1 Në faqen Orkestrimi, klikoni Detyrat e Rrjedhës së Punës të Përshtatshme.
  • Hapi 2 Klikoni Shto.
  • Hapi 3 Plotësoni fushat e kërkuara në faqen e Informacionit të Detyrës së Përshtatshme. Shikoni Krijimi i një detyre të personalizuar, në faqen 3.
  • Hapi 4 Plotësoni fushat e kërkuara në faqen "Inputet e detyrave të personalizuara". Shikoni Krijimi i një detyre të personalizuar, në faqen 3.
  • Hapi 5 Plotësoni fushat e kërkuara në faqen "Detyrat e personalizuara". Shikoni Krijimi i një detyre të personalizuar, në faqen 3.
  • Hapi 6 Plotësoni fushat e kërkuara në faqen e Kontrolluesit. Shikoni Krijimi i një detyre të personalizuar, në faqen 3.
  • Hapi 7 Në faqen Script, plotësoni fushat e kërkuara:
    • Nga lista rënëse e gjuhës së ekzekutimit, zgjidhni JavaScript.
    • Kontrolloni Use Depository for Scripts për të mundësuar që detyra e personalizuar të përdorë një skript file nga një depo. Kjo ju mundëson të zgjidhni depon dhe të specifikoni skriptin file për të përdorur.
    • Nga lista rënëse Select Depo, zgjidhni depo GitHub ose BitBucket që përmban skriptin files. Për detaje se si të shtoni depo, shihni Shtimi i një depoje GitHub ose BitBucket në Cisco UCS Director, në faqen 7.
    • Futni rrugën e plotë të skriptit file në Script filefusha e tekstit të emrit.
    • Për të shkarkuar skriptin, klikoni Load Script.
      Teksti nga file kopjohet në zonën e modifikimit të tekstit Script.
    • Opsionale, bëni ndryshime në skriptin e shkarkuar në zonën e modifikimit të tekstit Script.
    • Për të ruajtur skriptin siç shfaqet në zonën e redaktimit të tekstit të skriptit, klikoni Ruaj skriptin.
      Kur shtypni Save Script, skripti ruhet në sesionin tuaj aktual të punës. Duhet të klikoni Submit për të ruajtur skriptin në detyrën e personalizuar që po redaktoni.
      Shënim
  • Hapi 8 Për të ruajtur detyrën e personalizuar, klikoni Submit.
    Nëse keni bërë ndryshime në skriptin e shkarkuar në zonën e modifikimit të tekstit Script, ndryshimet ruhen në detyrën e personalizuar. Asnjë ndryshim nuk ruhet në depon e GitHub ose BitBucket. Nëse dëshironi të hidhni skriptin e ngarkuar dhe të futni skriptin tuaj, klikoni Hidh Skriptin për të pastruar dritaren e skriptit.

Çfarë duhet bërë më pas
Ju mund të përdorni detyrën e re të personalizuar në një rrjedhë pune.

Importimi i flukseve të punës, detyrave të personalizuara, moduleve të skriptit dhe aktiviteteve

Për të importuar artefakte në Cisco UCS Director, bëni sa më poshtë:

Shënim Variablat globalë të lidhur me një fluks pune do të importohen gjatë importimit të një fluksi pune nëse ndryshorja globale nuk është e disponueshme në pajisje.

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Në faqen Orkestrimi, klikoni Workflows.
  • Hapi 3 Klikoni Import.
  • Hapi 4 Në ekranin Import, klikoni Zgjidh a File.
  • Hapi 5 Në zgjedhje File në ekranin e ngarkimit, zgjidhni file për t'u importuar. Cisco UCS Drejtor i importit dhe eksportit files kanë një .wfdx file shtrirje.
  • Hapi 6 Klikoni Open.
    Kur të file është ngarkuar, të File Shfaqet ekrani i ngarkimit/validimit File gati për përdorim dhe çelësi.
  • Hapi 7 Futni çelësin që është futur gjatë eksportimit të file.
  • Hapi 8 Klikoni Next.
    Ekrani i Politikave të Importit shfaq një listë të objekteve Cisco UCS Director të përfshira në të ngarkuarit file.
  • Hapi 9 (Opsionale) Në ekranin e Politikave të Importit, specifikoni se si trajtohen objektet nëse ato dublikojnë emra tashmë në dosjen e rrjedhës së punës. Në ekranin e importit, plotësoni fushat e mëposhtme
Emri Përshkrimi
Rrjedhat e punës Zgjidhni nga opsionet e mëposhtme për të specifikuar se si trajtohen flukset e punës me emër identik:
  • Zëvendësoni—Zëvendësoni rrjedhën ekzistuese të punës me rrjedhën e punës së importuar.
  • Mbajini të dy—Importoni rrjedhën e punës si një version të ri.
  • Kapërceni—Mos e importoni rrjedhën e punës.
Detyrat e personalizuara Zgjidhni nga opsionet e mëposhtme për të specifikuar se si trajtohen detyrat e personalizuara me emër identik:
  • Zëvendësoni
  • Mbajini të dy
  • Kapërceni
Emri Përshkrimi
Modulet e Skriptit Zgjidhni nga opsionet e mëposhtme për të specifikuar se si trajtohen modulet e skriptit me emër identik:
  • Zëvendësoni
  • Mbajini të dy
  • Kapërceni
Aktivitetet Zgjidhni nga opsionet e mëposhtme për të specifikuar se si trajtohen aktivitetet me emër identik:
  • Zëvendësoni
  • Mbajini të dy
  • Kapërceni
Importoni flukset e punës në dosje Check Importo flukset e punës në dosje për të importuar rrjedhat e punës. Nëse nuk kontrolloni Importo flukset e punës në dosje dhe nëse nuk ka version ekzistues të një fluksi punew ekziston, ai fluks pune nuk importohet.
Zgjidhni Dosjen Zgjidhni një dosje në të cilën do të importoni rrjedhat e punës. Nëse keni zgjedhur [E re Dosja..]

në listën rënëse, Dosje e re shfaqet fusha.

Dosje e re Futni emrin e dosjes së re për të krijuar si dosjen tuaj të importit.
  • Hapi 10 Klikoni Import.

Eksportimi i flukseve të punës, detyrave të personalizuara, moduleve të skriptit dhe aktiviteteve

Për të eksportuar artefakte nga Cisco UCS Director, bëni sa më poshtë:

Shënim Variablat globale të lidhura me një fluks pune do të eksportohen automatikisht gjatë eksportimit të një fluksi pune.

  • Hapi 1 Klikoni Export.
  • Hapi 2 Në ekranin Zgjidh flukset e punës, zgjidhni flukset e punës që dëshironi të eksportoni.
    Rrjedhat e punës, detyrat dhe skriptet e personalizuara të krijuara në Cisco UCS Director përpara versionit 6.6 mund të dështojnë të importohen nëse përmbajnë të dhëna XML.
    Shënim
  • Hapi 3 Klikoni Next.
  • Hapi 4 Në ekranin Zgjidh detyrat e personalizuara, zgjidhni detyrat e personalizuara që dëshironi të ekspozoni
    Shënim Detyra e personalizuar e eksportuar përmban të gjitha hyrjet e personalizuara që përdoren nga ajo detyrë e personalizuar.
  • Hapi 5 Klikoni Next.
  • Hapi 6 Në ekranin Eksporto: Zgjidhni Modulet e Skriptit, zgjidhni modulet e skriptit që dëshironi të eksportoni.
  • Hapi 7 Klikoni Next.
  • Hapi 8 Në ekranin Eksporto: Zgjidhni Aktivitetet, zgjidhni aktivitetet që dëshironi të eksportoni.
  • Hapi 9 Klikoni Next.
  • Hapi 10 Në ekranin Eksporto: Zgjidhni Hapni API-të, zgjidhni API-të që dëshironi të eksportoni.
  • Hapi 11 Në ekranin Export: Confirmation, plotësoni fushat e mëposhtme:
Emri Përshkrimi
Eksportuar nga Emri juaj ose një shënim se kush është përgjegjës për eksportin.
Komentet Komentet për këtë eksport.
Enkriptoni të eksportuarit file Kontrolloni Encrypt të eksportuar file kutinë e kontrollit për të enkriptuar file për t'u eksportuar. Si parazgjedhje, kutia e kontrollit është e kontrolluar.
Çelësi Futni çelësin për enkriptimin e file.

Kjo fushë shfaqet vetëm kur Encrypt e eksportuar file kutia e kontrollit është e shënuar.

Ruajeni çelësin ashtu siç nevojitet gjatë importimit të rrjedhës së punës për deshifrim.

Konfirmo çelësin Fusni përsëri çelësin për konfirmim.

Kjo fushë shfaqet vetëm kur Encrypt e eksportuar file kutia e kontrollit është e shënuar.

Eksportohet File Emri Emri i file në sistemin tuaj lokal. Shkruani vetëm bazën fileemri; të file Shtesa e tipit (.wfdx) shtohet automatikisht.
  • Hapi 12 Klikoni Export.
    Ju kërkohet të ruani file.
Klonimi i një detyre të personalizuar të rrjedhës së punës nga Biblioteka e Detyrave

Ju mund të klononi detyra në bibliotekën e detyrave për t'i përdorur në krijimin e detyrave të personalizuara. Ju gjithashtu mund të klononi një detyrë të personalizuar për të krijuar një detyrë të personalizuar.

Detyra e klonuar është një kornizë me të njëjtat hyrje dhe dalje të detyrës si detyra origjinale. Megjithatë, detyra e klonuar është vetëm një kornizë. Kjo do të thotë që duhet të shkruani të gjithë funksionalitetin për detyrën e re në CloupiaScript.

Vini re gjithashtu se vlerat e përzgjedhjes për hyrjet e listës, të tilla si listat rënëse dhe listat e vlerave, barten në detyrën e klonuar vetëm nëse vlerat e listës nuk varen nga sistemi. Gjëra të tilla si emrat dhe adresat IP të sistemeve ekzistuese varen nga sistemi; gjëra të tilla si opsionet e konfigurimit të mbështetura nga Cisco UCS Director nuk janë. Për shembullample, grupet e përdoruesve, emrat e cloud dhe grupet e porteve varen nga sistemi; rolet e përdoruesve, llojet e reve kompjuterike dhe llojet e grupeve të porteve nuk janë.

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Klikoni Tasks Custom Workflow.
  • Hapi 3 Klikoni Clone From Task Library.
  • Hapi 4 Në ekranin Clone from Task Library, kontrolloni rreshtin me detyrën që dëshironi të klononi.
  • Hapi 5 Klikoni Zgjidh.
    Një detyrë e personalizuar e rrjedhës së punës krijohet nga biblioteka e detyrave. Detyra e re e personalizuar është detyra e fundit e personalizuar në raportin e detyrave të rrjedhës së punës me porosi. Detyra e re e personalizuar është emëruar sipas detyrës së klonuar, me datën e bashkangjitur.
  • Hapi 6 Klikoni Submit

Çfarë duhet bërë më pas
Ndryshoni detyrën e personalizuar të rrjedhës së punës për t'u siguruar që emri dhe përshkrimi i duhur janë në vend për detyrën e klonuar.

Klonimi i një detyre të rrjedhës së punës me porosi

Ju mund të përdorni një detyrë ekzistuese të rrjedhës së punës me porosi në Cisco UCS Director për të krijuar një detyrë të personalizuar të rrjedhës së punës.

Para se të filloni
Një detyrë e personalizuar e rrjedhës së punës duhet të jetë e disponueshme në Cisco UCS Director.

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Klikoni Tasks Custom Workflow.
  • Hapi 3 Klikoni rreshtin me detyrën e personalizuar të rrjedhës së punës që dëshironi të klononi.
    Ikona e Klonit shfaqet në krye të tabelës së detyrave të rrjedhës së punës me porosi.
  • Hapi 4 Klikoni Clone.
  • Hapi 5 Në ekranin Clone Custom Workflow Task, përditësoni fushat e kërkuara.
  • Hapi 6 Klikoni Next.
    Shfaqen hyrjet e përcaktuara për detyrat me porosi të rrjedhës së punës.
  • Hapi 7 Klikoni rreshtin me hyrjen e detyrës që dëshironi të modifikoni dhe klikoni Edit për të modifikuar hyrjet e detyrës.
  • Hapi 8 Klikoni Shto për të shtuar një hyrje të hyrjes në detyrë.
  • Hapi 9 Klikoni Next.
    Redaktoni rezultatet e detyrës.
  • Hapi 10 Klikoni Shto për të shtuar një hyrje të re dalëse.
  • Hapi 11 Klikoni Next.
  • Hapi 12 Ndryshoni skriptet e kontrolluesit. Shihni Kontrollimi i hyrjeve të detyrave të rrjedhës së punës me porosi, në faqen 13.
  • Hapi 13 Klikoni Next.
  • Hapi 14 Për të personalizuar detyrën e personalizuar, modifikoni skriptin e detyrës.
  • Hapi 15 Klikoni Submit
Kontrollimi i hyrjeve të detyrave të rrjedhës së punës me porosi

Përdorimi i Kontrollorëve
Mund të modifikoni pamjen dhe sjelljen e hyrjeve të detyrave të personalizuara duke përdorur ndërfaqen e kontrolluesit të disponueshëm në Cisco UCS Director.

Kur të përdorni kontrollorët
Përdorni kontrollorët në skenarët e mëposhtëm:

  • Për të zbatuar sjellje komplekse të shfaqjes dhe fshehjes së GUI, duke përfshirë kontrollin më të mirë të listave të vlerave, listat tabelare të vlerave dhe kontrolle të tjera hyrëse që i shfaqen përdoruesit.
  • Për të zbatuar logjikën komplekse të vlefshmërisë së hyrjes së përdoruesit.

Me kontrollorët e hyrjes mund të bëni sa më poshtë:

  • Shfaq ose fshih kontrollet e GUI: Mund të shfaqësh ose fshehësh në mënyrë dinamike fusha të ndryshme të GUI, si kutitë e kontrollit, kutitë e tekstit, listat rënëse dhe butonat, bazuar në kushtet. Për shembullampKështu, nëse një përdorues zgjedh UCSM nga një listë rënëse, ju mund të kërkoni kredencialet e përdoruesit për Cisco UCS Manager ose të ndryshoni listën e vlerave (LOVs) në listën rënëse për të treguar vetëm portet e disponueshme në një server.
  • Vlefshmëria e fushës së formularit: Mund të vërtetoni të dhënat e futura nga një përdorues kur krijoni ose modifikoni flukset e punës në Projektuesin e Rrjedhës së Punës. Për të dhënat e pavlefshme të futura nga përdoruesi, mund të shfaqen gabime. Të dhënat hyrëse të përdoruesit mund të ndryshohen përpara se të ruhen në bazën e të dhënave ose përpara se të ruhen në një pajisje.
  • Marrja dinamike e një liste vlerash: Mund të merrni në mënyrë dinamike një listë vlerash nga objektet Cisco UCS Director dhe t'i përdorni ato për të mbushur objektet e formës GUI.

Marshalizimi dhe zhbërja e objekteve të formës GUI
Kontrollorët shoqërohen gjithmonë me një formular në ndërfaqen e hyrjeve të detyrave të Projektuesit të Workflow. Ekziston një hartë një-për-një midis një formulari dhe një kontrolluesi. Kontrollorët punojnë në dy stages, marshalling dhe unmarshalling. Të dy stages kanë dy nënstages, para dhe pas. Për të përdorur një kontrollues, ju marshalloni (kontrolloni fushat e formës së ndërfaqes së përdoruesit) dhe/ose anuloni (vlerësoni hyrjet e përdoruesit) objektet përkatëse të formularit GUI duke përdorur skriptet e kontrolluesit.

Tabela e mëposhtme përmbledh këto stages.

Stage Nën-stage
Marshalling — Përdoret për të fshehur dhe zbuluar fushat e formave dhe për kontrollin e avancuar të LOV-ve dhe LOV-ve tabelare. para Marshallit — Përdoret për të shtuar ose vendosur një fushë hyrëse dhe për të krijuar dhe vendosur në mënyrë dinamike LOV në një faqe (formë).

pas Marshallit — Përdoret për të fshehur ose zbuluar një fushë hyrëse.

Stage Nën-stage
Unmarshalling – Përdoret për vërtetimin e hyrjes së përdoruesit në formë. para Unmarshall — Përdoret për të kthyer një vlerë hyrëse nga një formë në një formë tjetër, p.shample, për të enkriptuar fjalëkalimin përpara se ta dërgoni në bazën e të dhënave.

pas Unmarshall — Përdoret për të vërtetuar një hyrje të përdoruesit dhe për të vendosur mesazhin e gabimit në faqe.

Ndërtimi i skripteve të kontrolluesit
Kontrollorët nuk kërkojnë që të importohen ndonjë paketë shtesë.
Ju nuk i kaloni parametrat metodave të kontrolluesit. Në vend të kësaj, kuadri Cisco UCS Director i bën parametrat e mëposhtëm të disponueshëm për t'u përdorur në marshalling dhe unmarshalling:

Parametri Përshkrimi Example
Faqe Faqja ose forma që përmban të gjitha hyrjet e detyrës. Ju mund ta përdorni këtë parametër për të bërë sa më poshtë:
  • Merrni ose vendosni vlerat e hyrjes në një formë GUI.
  • Shfaqni ose fshihni hyrjet në një formë GUI.
page.setHidden(id + “.portList”, true); page.setValue(id + “.status”, “Nuk ka port është ngritur. Lista e porteve është e fshehur”);
id Identifikuesi unik i fushës së hyrjes së formularit. Një ID gjenerohet nga korniza dhe mund të përdoret me emrin e fushës së hyrjes së formularit. page.setValue(id + “.status”, “Nuk ka port është ngritur. Lista e porteve është e fshehur”);// këtu 'status' është emri i fushës së hyrjes.
Poo POJO (objekt i thjeshtë i vjetër Java) është një fasule Java që përfaqëson një formë hyrëse. Çdo faqe GUI duhet të ketë një POJO përkatëse që mban vlerat nga formulari. POJO përdoret për të ruajtur vlerat në bazën e të dhënave ose për të dërguar vlerat në një pajisje të jashtme. pojo.setLunSize(asciiValue); //cakto vlerën e fushës hyrëse 'lunSize'

Shih Shampe: Duke përdorur kontrollorët, në faqen 14 për një kod pune sample që demonstron funksionalitetin e kontrolluesit.

Example: Përdorimi i kontrollorëve

Kodi i mëposhtëm p.shample demonstron se si të zbatohet funksionaliteti i kontrolluesit në detyrat e rrjedhës së punës me porosi duke përdorur metoda të ndryshme - përpara Marshall, pas Marshall, përpara Unmarshall dhe pas Unmarshall.
/*

Përshkrimet e metodës:
Para Marshall: Përdorni këtë metodë për të shtuar ose vendosur një fushë hyrëse dhe për të krijuar dhe vendosur në mënyrë dinamike LOV në një faqe (formë).
Pas Marshall: Përdorni këtë metodë për të fshehur ose zbuluar një fushë hyrëse.
Para UnMarshall: Përdorni këtë metodë për të kthyer një vlerë hyrëse nga një formë në një formë tjetër,
për shembullample, kur dëshironi të kriptoni fjalëkalimin përpara se ta dërgoni në bazën e të dhënave. Pas UnMarshall: Përdorni këtë metodë për të vërtetuar një hyrje të përdoruesit dhe për të vendosur mesazhin e gabimit në
faqe.
*/
//Para Marshallit:
/*
Përdorni metodën BeforeMarshall kur ka një ndryshim në fushën e hyrjes ose për të krijuar në mënyrë dinamike LOV dhe për të vendosur fushën e re të hyrjes në formular përpara se të ngarkohet.
Në ishampMë poshtë, një fushë e re e hyrjes 'portList' shtohet në faqe përpara se formulari të shfaqet në një shfletues.
*/
importPackage (com.cloupia.model.cIM);
importPackage (java.util);
importPackage (java.lang);
var portList = new ArrayList();
var lovLabel = “eth0”;
var lovValue = “eth0”;
var portListLOV = grup i ri();
portListLOV[0] = i ri FormLOVPair(lovLabel, lovValue);//krijo fushën e hyrjes lov
//parametri 'faqe' përdoret për të vendosur fushën e hyrjes në formular
page.setEmbeddedLOVs(id + “.portList”, portListLOV);// vendosni fushën e hyrjes në formularin ========================== ================================================== =================================
//Pas Marshallit:
/*
Përdorni këtë metodë për të fshehur ose zbuluar një fushë hyrëse.
*/
page.setHidden(id + “.portList”, true); //fsheh fushën e hyrjes 'portList'.
page.setValue(id + “.status”, “Nuk ka port është ngritur. Lista e porteve është e fshehur”);
page.setEditable(id + “.status”, false);
================================================== ================================================== =========
//Para Unmarshall:
/*
Përdorni metodën BeforeUnMarshall për të lexuar hyrjen e përdoruesit dhe për ta kthyer atë në një formë tjetër përpara se ta futni në bazën e të dhënave. Për shembullample, mund të lexoni fjalëkalimin dhe ta ruani fjalëkalimin në bazën e të dhënave pasi ta konvertoni atë në kodimin base64, ose të lexoni emrin e punonjësit dhe ta konvertoni në ID të punonjësit kur emri i punonjësit të dërgohet në bazën e të dhënave.
Në kodin p.shampLe nën madhësinë lun lexohet dhe konvertohet në një vlerë ASCII.
*/
importPackage (org.apache.log4j);
importPackage (java.lang);
importPackage (java.util);
var size = page.getValue(id + “.lunSize”);
var logger = Logger.getLogger (“loggeri im”);
nëse (madhësia != null){
logger.info(“Vlera e madhësisë”+madhësia);
if((new java.lang.String(madhësia)).përputhet (“\\d+”)){ var byteValue = size.getBytes (“US-ASCII”); //konvertoni madhësinë lun dhe merrni grupin e karaktereve ASCII

var asciiValueBuilder = ri StringBuilder();
për (var i = 0; i < byteValue.length; i++) {
asciiValueBuilder.append(byteValue[i]);
}
var asciiValue = asciiValueBuilder.toString()+” – Ascii
vlera”
//id + “.lunSize” është identifikuesi i fushës hyrëse
page.setValue(id + “.lunSize”,asciiValue); //parametri
'faqe' përdoret për të vendosur vlerën në fushën e hyrjes.
pojo.setLunSize(asciiValue); //vendosni vlerën në pojo.
Kjo pojo do të dërgohet në DB ose pajisje të jashtme
}
================================================== ================================================== =========
// Pas unMarshall:
/*
Përdorni këtë metodë për të vërtetuar dhe vendosur një mesazh gabimi.
*/
importPackage (org.apache.log4j);
importPackage (java.lang);
importPackage (java.util);
//var size = pojo.getLunSize();
var size = page.get Vlera (id + “.lunSize”);
var logger = Logger .get Logger(“logger im”);
logger.info(“Vlera e madhësisë”+madhësia);
nëse (madhësia > 50) { //vleftësoni madhësinë
faqe. vendos Gabim(id+).lunSize”, “LUN Size nuk mund të jetë më shumë se 50MB”); //vendos
mesazhi i gabimit në faqe
page .set Page Message (“Madhësia LUN nuk mund të jetë më shumë se 50MB”);
//faqe. vendos statusin e faqes (2);
}

Përdorimi i daljes së një detyre të mëparshme në një rrjedhë pune

Ju mund të përdorni daljen e një detyre të mëparshme si hyrje për një detyrë tjetër në një rrjedhë pune direkt nga skripti i një detyre të personalizuar dhe një detyrë Ekzekutimi i skriptit Cloupia të bibliotekës së detyrave.
Për të hyrë në këtë dalje, mund të përdorni një nga mënyrat e mëposhtme:

  • Merrni variablin nga konteksti i rrjedhës së punës duke përdorur metodën get Input().
  • Referojuni prodhimit duke përdorur shënimin e ndryshores së sistemit.

Për të marrë një dalje duke përdorur metodën e kontekstit getInput(), përdorni:
var emri = ctxt.getInput (“PreviousTaskName.outputFieldName”);

Për shembullampe:
emri var = ctxt.getInput(“detyra_custom1_1684.NAME”); // EMRI është emri i daljes së detyrës1
fushën në të cilën dëshironi të hyni
Për të marrë një dalje duke përdorur shënimin e ndryshores së sistemit, përdorni:
var emri = “${Emri i detyrës së mëparshme. Emri i fushës së daljes}”;

Për shembullampe:
var emri = “${custom_task1_1684.NAME}”; // EMRI është emri i fushës së daljes së detyrës1 që dëshironi të përdorni

Example: Krijimi dhe ekzekutimi i një detyre të personalizuar

Për të krijuar një detyrë të personalizuar, bëni sa më poshtë:

  • Hapi 1 Zgjidhni Orkestrimin.
  • Hapi 2 Klikoni Tasks Custom Workflow.
  • Hapi 3 Klikoni Shto dhe futni informacionin e personalizuar të detyrës.
  • Hapi 4 Klikoni Next.
  • Hapi 5 Klikoni + dhe shtoni detajet e hyrjes.
  • Hapi 6 Klikoni Submit.
  • Hapi 7 Klikoni Next.
    Shfaqet ekrani i Detyrave të personalizuara.
  • Hapi 8 Klikoni + dhe shtoni detajet e daljes për detyrën e personalizuar.
  • Hapi 9 Klikoni Next.
    Shfaqet ekrani i Kontrolluesit.
  • Hapi 10 Klikoni + dhe shtoni detajet e kontrolluesit për detyrën e personalizuar.
  • Hapi 11 Klikoni Next.
    Shfaqet ekrani Script.
  • Hapi 12 Zgjidhni JavaScript si gjuhë ekzekutimi dhe futni skriptin e mëposhtëm për ta ekzekutuar.
    logger.addInfo ("Përshëndetje Botë!");
    logger.addInfo ("Mesazhi "+input.message);
    ku mesazhi është emri i fushës hyrëse.
  • Hapi 13 Klikoni Save Script.
  • Hapi 14 Klikoni Submit.
    Detyra e personalizuar përcaktohet dhe shtohet në listën e detyrave të personalizuara.
  • Hapi 15 Në faqen Orkestrimi, klikoni Workflows.
  • Hapi 16 Klikoni Shto për të përcaktuar një rrjedhë pune dhe për të përcaktuar hyrjet dhe daljet e rrjedhës së punës.
    Pasi të përcaktohen hyrjet dhe daljet e rrjedhës së punës, përdorni Projektuesin e rrjedhës së punës për të shtuar një detyrë të rrjedhës së punës në rrjedhën e punës.
  • Hapi 17 Klikoni dy herë mbi një fluks pune për të hapur fluksin e punës në ekranin e projektuesit të rrjedhës së punës.
  • Hapi 18 Në anën e majtë të projektuesit të rrjedhës së punës, zgjeroni dosjet dhe zgjidhni një detyrë të personalizuar (për shembullample, 'Përshëndetje detyrë e personalizuar në botë').
  • Hapi 19 Zvarritni dhe lëshoni detyrën e zgjedhur te projektuesi i rrjedhës së punës.
  • Hapi 20 Plotësoni fushat në Add Task ( ) ekran.
  • Hapi 21 Lidhni detyrën me rrjedhën e punës. Shih Cisco UCS Director Orchstration Guide.
  • Hapi 22 Klikoni Validate workflow.
  • Hapi 23 Klikoni Ekzekutoni Tani dhe klikoni Submit.
  • Hapi 24 Shihni mesazhet e regjistrit në dritaren e regjistrit të Kërkesave të Shërbimit.

Dokumentet / Burimet

cisco Krijimi i detyrave të personalizuara të rrjedhës së punës [pdfUdhëzuesi i përdoruesit
Krijimi i detyrave të personalizuara të rrjedhës së punës, detyrave të personalizuara të rrjedhës së punës, krijimi i detyrave të rrjedhës së punës, detyrave të rrjedhës së punës, detyrave

Referencat

Lini një koment

Adresa juaj e emailit nuk do të publikohet. Fushat e kërkuara janë shënuar *