Een ogenblik geduld aub...
De website wordt geladen...
Twitter LinkedIn Vimeo YouTube Facebook
Knowledge Base
Taak starten vanuit een andere taak (RunTask Script)
Id: 000015 | Datum: 01-12-2016 | Producten: TaskCentre
In sommige gevallen wil men een structuur opzetten, waarbij vanuit een taak een andere taak gestart kan worden. Het is mogelijk om, binnen TaskCentre, door middel van een VBScript een andere taak te starten. De onderstaande VBScript is hiervan een voorbeeld.

Men kan deze VBScript zowel in de "Run VBScript" plakken, als een globale function maken welke aangeroepen kan worden met enkel het taaknummer. Dit script kan overigens ook met een .vbs bestand buiten TaskCentre uitgevoerd worden, maar men moet dan wel de TaskCentre client op de lokale machine hebben staan..

VBScript:
Dim TCAPI, Session, TaskItem
Const LogonTaskCentre = 1
Const LogonWindows = 2
Set TCAPI = CreateObject("Iwcltcp.TCAPI")
TCAPI.ConnectCallbackOnLogon = False
Set Session = TCAPI.Logon(LogonTaskCentre, "localhost", "username", "password")
Set TaskItem = Session.OpenTaskItem(taakid) ' 1 is the Task ID
If TaskItem.Disabled = False Then
TaskItem.queuetask
End If

Men moet enkele zaken aanpassen:
  • "localhost" vervangt men met de naam van de server.
  • "username" vervangt men met de naam van de TaskCentre gebruiker.
  • "password" vervangt men met het wachtwoord van deze gebruiker.
  • "taakid" vervangt men met het nummer van de taak die uitgevoerd moet worden.

Men kan door een globale function te gebruiken deze zo instellen dat enkel het taakID dynamisch meegegeven hoeft te worden.

TaakID
Binnen TaskCentre heeft iedere taak een uniek ID, dat gebruikt wordt om de taak aan te roepen. Men kan dit ID vinden door dit in de taak op te zoeken.

Dit kan op de volgende manier:
  • Open de gewenste taak.
  • Ga naar "General" (1)
  • Klik op "Options…" (2)



Afbeelding 1- opzoeken taakid.

Men ziet nu de opties van de taak. Vervolgens klikt men op de tab advanced (Afbeelding 12.2). In deze Tab ziet men bij Identification een Task ID staan – dit is het unieke ID van deze taak. Bij een aanroep van het starttaak script laat men echter de nullen aan het begin weg (In het geval van de screenshot is de taskID dus 3)



Afbeelding 2- opzoeken taakid.

Benodigde rechten
In de VBScript wordt gebruik gemaakt van het object "CreateObject". Met dit object is het mogelijk om andere objecten buiten TaskCentre aan te roepen zoals, in dit geval, de TaskCentre API. Het is echter ook mogelijk om andere software aan te roepen.

Wegens de veelzijdigheid van CreateObject is het gebruik hiervan limiteerbaar per TaskCentre gebruiker, en staat de mogelijkheid om CreateObject te gebruiken standaard bij iedere gebruiker uit. Wanneer men vanuit een TaskCentre taak een andere taak wil laten starten, is het noodzakelijk om de gebruiker die "Owner" is van deze taak rechten te geven op het "CreateObject" object. De owner van een taak kan men binnen TaskCentre in de lijst met taken terugvinden:



Afbeelding 3 – TaskCentre taaklijst met de kolom "Owner", welke de eigenaar van de taak weergeeft.

Men kan gebruikers rechten op CreateObject toekennen binnen de gebruikerssettings van de desbetreffende gebruiker. Men gaat hiervoor binnen TaskCentre naar "System" -> "Users" waar men de gebruiker opent men deze rechten wil toekennen. Op het tabblad "Script Objects" zet men "Any Script" en "Allow this user the use of System.GetObject in script" aan.

Met deze instellingen heeft de gebruiker voldoende rechten om middels VBScript het StartTaak script uit te mogen voeren.



Afbeelding 4 –Instellen permissies
ID: 000015
Datum: 01-12-2016
Heeft betrekking op de volgende producten:
TaskCentre
Heeft u vragen, of wellicht ondersteuning nodig? Neem dan via onze Orbis Portal contact op met onze helpdesk.
LinkedIn Vimeo YouTube