In bestimmten Anwendungsfällen ist es möglicherweise erforderlich, ein Skript auszuführen, nachdem ein Ticket eine Workflow-Aktivität durchlaufen hat. Diese Art von Skript kann zum Beispiel verwendet werden, um nach der Ausführung einer Workflow-Aktivität ein anderes Ticket im Web Client anzuzeigen. Aus der Sicht des Bearbeiters springt der Web Client zum nächsten Ticket. Dies kann, je nach Anwendungsfall, ein Child-Ticket oder das nächste Ticket in der Liste sein.
Das Systemverhalten wird in einem Admin-Tool-Skript definiert, dem PostActivityExecutionScript (manchmal auch Standardskript für Workflow-Aktivität genannt). Der Name des Skripts muss in der System-Property cmweb-server-adapter, postActivityExecutionScriptName gesetzt werden, siehe System-Properties.
Dieses Skript wird nach jeder manuellen Workflow-Aktivität ausgeführt. Dies bedeutet, dass Sie alle Kontrollmechanismen und die gesamte Intelligenz in das Skript einfügen müssen:
Ab Version 6.10.2 kann ConSol CM mit einem PostActivityExecutionScript einen der vier unterschiedlichen Seitentypen (im Ansichtsmodus) öffnen:
Das Skript muss nur das entsprechende Objekt zurückgeben. Der folgende Code zeigt ein Beispiel für jeden der vier Typen.
switch(activity.name){
case 'defaultScope/Goto_ticket':
return ticketService.getByName("SUP-11")
case 'defaultScope/Goto_contact':
return unitService.getById(123)
case 'defaultScope/Goto_company':
return unitService.getById(456)
case 'defaultScope/Goto_resource':
return resourceService.getById(890)
}
Beispiel: Zum nächsten Ticket in einer Liste springen.
Abbildung 399: ConSol CM Admin Tool - Property zur Definition von postActivityExecutionScriptName
Das PostActivityExecutionScript ermöglicht es auch, zu einer Unit-Seite (d. h. einer Firmenseite oder einen Kontaktseite) oder einer Ressourcenseite zu springen, indem die Unit bzw. die Ressource im Skript zurückgegeben wird.
Siehe folgendes Beispielskript:
switch(activity.name){
case 'defaultScope/Goto_the_ticket':
return ticketService.getByName("SUP-11")
case 'defaultScope/Goto_the_contact':
return unitService.getById(123)
case 'defaultScope/Goto_the_company':
return unitService.getById(456)
case 'defaultScope/Goto_the_resource':
return resourceService.getById(890)
}
Code-Beispiel 64: PostActivityExecutionScript
Ein anderes Beispiel, das das Verhalten des Web Clients zeigt:
Abbildung 400: ConSol CM Admin Tool - PostActivityExecutionHandler-Skript
switch(activity.name){
case 'defaultScope/Service_Desk/New_ticket/Open_Page_of_Main_Contact':
def main_cont = ticket.getMainContact()
return main_cont
// ( ... )
}
Code-Beispiel 65: PostActivityExecutionHandler
Abbildung 401: ConSol CM Process Designer - Aktivität, die mit dem PostActivityExecutionScript gesteuert wird
Abbildung 402: ConSol CM Web Client - Ticket mit Workflow-Aktivität, mit der der Web Client zur Kontaktseite springt
Abbildung 403: ConSol CM Web Client - Kontaktseite, die direkt aus dem Ticket geöffnet wurde