model
Das Objekt „model“ stellt den Dialog dar.
Es unterstützt die folgenden Methoden:
Close
Diese Methode bewirkt, dass der Dialog geschlossen wird. Dabei werden keine Daten automatisch gespeichert.
Syntax | model.Close |
Parameter | Keine |
Beispiel | Beim Auswählen der Schaltfläche soll der Dialog geschlossen werden. Dazu wird für das Event „OnClick“ der Schaltfläche die Methode „model.Close“ hinterlegt. |
CreateObject
Diese Methode erstellt ein helpLine Objekt vom gewünschten Objekttyp.
Syntax | model.CreateObject("Definitionsname") |
Parameter | Definitionsname:Definitionsname des Objekts, das angelegt werden soll |
Rückgabewert | helpLine Objekt |
Beispiel |
Beim Auswählen einer Schaltfläche soll ein helpLine Personenobjekt erstellt und der Dialog geöffnet werden: Dim hlcontact Set hlcontact = model.CreateObject("Contact") model.Open hlcontact |
CreateWorkflow
Diese Methode startet den gewünschten Workflow, übergibt die gewünschten Parameter und öffnet den Vorgangsdialog. Die Parameter müssen vorher mit der Methode „CreateWorkflowParameters“ ermittelt werden.
Syntax | model.CreateWorkflow "Workflowname”, Workflow-Parameter |
Parameter |
Workflowname: Name der Workflowdefinition Workflow-Parameter: Parameter des Workflows als Objekte; müssen über die Methode „CreateWorkflowParameters“ ermittelt werden. |
Beispiel |
Die Parameter des Workflows „IncidentManagement“ sollen ermittelt werden und mit diesen Parametern soll derselbe Workflow gestartet werden: Dim parameters Set parameters = model.CreateWorkflowParameters("IncidentManagement") Model.CreateWorkflow "IncidentManagement", parameters
Anmerkung: Achten
Sie darauf, dass Sie dem Namen der WORKFLOWDEFINITION und nicht den
Definitionsnamen des Vorgangs angeben. |
CreateWorkflowParameters
Diese Methode ermittelt die Parameter des angegebenen Workflows und gibt diese zurück.
Syntax | model.CreateWorkflowParametersObject("Workflowname") |
Parameter | Workflowname: Name der Workflowdefinition |
Beispiel |
Die Parameter des Workflows „IncidentManagement“ sollen ermittelt werden und mit diesen Parametern soll derselbe Workflow gestartet werden: Dim parameters Set parameters = model.CreateWorkflowParameters("IncidentManagement") Model.CreateWorkflow "IncidentManagement", parameters
Anmerkung: Achten Sie
darauf, dass Sie dem Namen der WORKFLOWDEFINITION und nicht den
Definitionsnamen des Vorgangs angeben. |
CreateWorkflowSilent
Diese Methode hat dieselbe Funktion wie die Methode „CreateWorkflow“, mit dem Unterschied, dass der Vorgangsdialog nicht geöffnet wird.
Syntax | model.CreateWorkflowSilent "Workflowname”, Workflow-Parameter |
Parameter |
Workflowname: Name der Workflowdefinition Workflow-Parameter: Parameter des Workflows als Objekte; müssen über die Methode „CreateWorkflowParameters“ ermittelt werden |
Funktion | Startet den angegebenen Workflow und übergibt die angegebenen Parameter. |
Beispiel |
Die Parameter des Workflows „IncidentManagement“ sollen ermittelt werden und mit diesen Parametern soll derselbe Workflow gestartet werden, ohne dass der Vorgangsdialog geöffnet wird: Dim parameters Set parameters = model.CreateWorkflowParameters("IncidentManagement") Model.CreateWorkflowSilent "IncidentManagement",
parameters
Anmerkung: Achten Sie darauf, dass Sie dem Namen der
WORKFLOWDEFINITION und nicht den Definitionsnamen des Vorgangs
angeben. |
CurrentCommand.Abort
Diese Methode steht in direktem Zusammenhang mit dem Event „OnSave“ und mit der Methode „Model.save“. Mit dieser Methode kann der Speicherungsprozess abgebrochen werden, wenn eine Prüfung im Skript des Events „OnSave“ fehlschlägt.
Syntax | model.CurrentCommand.Abort(Item) |
Parameter | Item: Text (Dieser Parameter ist für zukünftige Verwendung vorgesehen. In der aktuellen Version muss dieser Parameter den Wert „“ enthalten.) |
'Zuerst Status des Vorgangs abfragen
state = hlobj.GetValue("CASEINFO.INTERNALSTATE",7,0,0,0)
If state = "Closed" Then
'Letzte SU ermitteln und Lösungstext auslesen
suindices = hlobj.GetSvcUnitIndices()
SUIdx = uBound(suindices) + 1
Solution = hlobj.GetValue("SUText.SolutionText" ,0,0,SUIdx,0)
'Überprüfen ob Lösungstext gefüllt, ansonsten Speichern
'abbrechen.
If solution = "" Then
msgbox "Der Vorgang kann nicht gespeichert werden, da keine Lösung eingetragen ist.", vbExclamation, "helpLine - Warnung"
model.CurrentCommand.Abort ""
End If
End If
EnableTimer
Diese Methode startet und stoppt den Timer, der z. B. zum Erfassen der Bearbeitungszeit verwendet wird.
Syntax | model.EnableTimer("SU-ID", Boolean) |
Parameter |
SU-ID: ID der SU, für die der Timer verwendet werden soll Boolean: „true“ = Der Timer wird gestartet. „false“ = Der Timer wird gestoppt. |
Funktion | Startet bzw. stoppt den Timer. |
Beispiel |
In der ITIL V3-Startkonfiguration gibt es im Incident auf der
Registerkarte Aktivitäten die
Schaltfläche Start/Stopp zum Starten und
Stoppen der Bearbeitungszeit:
Dahinter liegt folgendes Skript:
|
ExecuteToolbarCommand
Mit dieser Methode können Sie Aktionen aus der RibbonBar ausführen. So können Sie diese Funktionen zum Beispiel mit einer Schaltfläche verknüpfen, so dass sie beim Auswählen der Schaltfläche ausgeführt werden.
Für die Methode sind viele verschiedene Parameter verfügbar, die im Folgenden einzeln erläutert werden.
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | AddServiceUnit |
Beschreibung | Fügt dem Vorgang eine neue Service-Einheit hinzu. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | CaseReserve |
Beschreibung | Reserviert einen (geöffneten aber bislang unreservierten) Vorgang. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | DesignMode |
Beschreibung | Öffnet den Dialog zur Bearbeitung im Dialog Designer. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | CTICallback |
Beschreibung | Liefert die Funktionalität der Schaltfläche „Zurückrufen“ aus der helpLine Telefonie-Komponente „Phone Smart“. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | CTIForward |
Beschreibung | Liefert die Funktionalität der Schaltfläche „Weiterleiten“ aus der helpLine Telefonie-Komponente „Phone Smart“. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | CTIHangup |
Beschreibung | Liefert die Funktionalität der Schaltfläche „Auflegen“ aus der helpLine Telefonie-Komponente „Phone Smart“. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | DialogPrint |
Beschreibung | Liefert die Druckfunktionalität für Objekte. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | EditCaller |
Beschreibung | Öffnet den Objektdialog des Anfragers zur Bearbeitung. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | EditOrganization |
Beschreibung | Öffnet den Objektdialog der eingetragenen Organisationseinheit zur Bearbeitung. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | EditProduct |
Beschreibung | Öffnet den Objektdialog des eingetragenen Produkts (CI) zur Bearbeitung. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | ExecuteSLAs |
Beschreibung | Führt die zugehörigen SLAs aus. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | Help |
Beschreibung | Öffnet die Online-Dokumentation. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | NewSU |
Beschreibung | Fügt dem Vorgang eine neue Service-Einheit hinzu. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | NewCalendar |
Beschreibung | Öffnet den Dialog zur Erstellung eines neuen Servicezeiten-Kalenders (nur in Vertrags-Objekten). |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | Save |
Beschreibung | Speichert den Vorgang. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | SaveAndRelease |
Beschreibung | Speichert den Vorgang und gibt ihn frei. |
Syntax | model.ExecuteToolbarCommand("Parameter") |
Parameter | SaveClose |
Beschreibung | Speichert und schließt den Vorgang. |
GetActiveCasesByCaller
Diese Methode gibt die Anzahl der offenen (also nicht geschlossenen oder gelösten) Vorgänge des Anfragers zurück.
Syntax | model.GetActiveCasesByCaller |
Parameter | keine |
Rückgabewert |
Ganze Zahl Ist kein Anfrager definiert, ist der Rückgabewert „-1“. |
Beispiel |
Die Anzahl der offenen Vorgänge des Anfragers soll in einem Nachrichtenfenster ausgegegeben werden: Dim callercases Callercases = model.GetActiveCasesByCaller MsgBox callercases
Anmerkung: Damit die Anzahl der offenen Vorgänge des
Anfragers ausgegeben werden kann, muss später im Vorgang ein
Anfrager gesetzt werden. |
GetActiveCasesByOrgUnit
Diese Methode gibt die Anzahl der offenen (also nicht geschlossenen oder gelösten) Vorgänge der als Anfrager gesetzten Organisationseinheit zurück (sofern dies in Ihrem Dialog möglich ist).
Syntax | model.GetActiveCasesByOrgUnit |
Parameter | keine |
Rückgabewert |
Ganze Zahl Ist kein Anfrager definiert, ist der Rückgabewert „-1“. |
Beispiel |
Die Anzahl der offenen Vorgänge der als Anfrager gesetzten Organisationseinheit soll in einem Nachrichtenfenster ausgegegeben werden: Dim callerorgunitcases Callercases = model.GetActiveCasesByOrgUnit MsgBox callerorgunitcases |
GetActiveCasesByProduct
Diese Methode gibt die Anzahl der offenen (also nicht geschlossenen oder gelösten) Vorgänge zurück, in denen das Produkt, das in im geöffneten Vorgang als CI eingetragen ist, ebenfalls als CI eingetragen ist.
Syntax | model.GetActiveCasesByProduct |
Parameter | keine |
Rückgabewert |
Ganze Zahl Ist kein Anfrager definiert, ist der Rückgabewert „-1“. |
Beispiel |
Die Anzahl der offenen Vorgänge des als CI eingetragenen Produkts soll in einem Nachrichtenfenster ausgegeben werden: Dim productcases Callercases = model.GetActiveCasesByProduct MsgBox productcases |
GetControlFromID
Diese Methode ermittelt den Namen des Controls mit der angegebenen ID.
Syntax | model.GetControlFromID("Control-ID") |
Parameter | Control-ID als Zeichenkette: ID des gesuchten Controls |
Rückgabewert | helpLine Control als Objekt |
GetPersonForAgent
Diese Methode liefert die Person zurück, die dem angemeldeten Agenten zugewiesen ist.
Syntax | model.GetPersonForAgent("Agenten-ID") |
Parameter | Agenten-ID als Objekt: ID des angemeldeten Agenten als Objekt; kann über „hlsession.getagentid“ ermittelt werden |
Rückgabewert | helpLine Personenobjekt |
Beispiel |
Der Name des angemeldeten Agenten soll in einem Nachrichtenfenster ausgegegeben werden: Dim person Set person = model.GetPersonForAgent(hlsession.GetAgentId) MsgBox person.GetValue("PersonGeneral.Name", 0,0,0,0) |
GetSearchItemCount
Diese Methode liefert die Anzahl der Suchergebnisse zurück, die mit der angegebenen Suchbedingung gefunden werden.
Syntax | model.GetSearchItemCount(objectDefinitions, searchCondition) |
Parameter |
objectDefinitions: Definitionsnamen der Objektdefinitionen, in denen gesucht werden soll searchCondition: Suchbedingung als Zeichenkette |
Rückgabewert | Anzahl der gefundenen Suchergebnisse als ganze Zahl |
GetSearchItems
Syntax | model.GetSearchItems(objectDefinitions, searchCondition, attributeKeys, sortColumn, maximumNumberOfRows) |
Parameter |
objectDefinitions: Definitionsnamen der Objektdefinitionen, in denen gesucht werden soll searchCondition: Suchbedingung als Zeichenkette
Anmerkung: Falls Sie in der Suchbedingung
Datum/Uhrzeit-Werte verwenden, müssen diese in der Zeitzone UTC
angegeben werden. attributeKeys: Pfade der Attribute, deren Werte zurückgegeben werden sollen sortColumn: Nummer der Spalte, nach der die Ergebnisse sortiert werden sollen. Die Spaltennummern sind 0-basiert, d. h. die erste Spalte hat die Nummer 0, die zweite die Nummer 1 usw. maximumNumberOfRows: maximale Anzahl an Ergebnissen, die zurückgegeben werden sollen |
Rückgabewert |
Werte der angegebenen Attribute (attributeKeys) der gefundenen Objekte als Array Die ersten beiden Spalten des Rückgabewerts sind immer Objekt-ID und Definitions-ID des Objekt, erst danach folgen die gesuchten Attributwerte. Im Parameter „sortColumn“ werden die beiden IDs jedoch nicht berücksichtigt. |
Beispiel |
Bei der Eigabe der Inventarnummer eines Computers in eine TextBox soll geprüft werden, ob ein Computer mit dieser Inventarnummer bereits im System existiert. Ist dies der Fall, soll eine entsprechende Meldung ausgegeben werden. Dazu wird für das Event “OnDataChange” der TextBox folgendes Skript eingegeben:
|
GetTreePath
Diese Methode liefert den gesamten Attributpfad eines Baumattributelements zurück.
Syntax | model.GetTreePath("attributeKey", valueID) |
Parameter |
attributeKey: kompletter Name des Baumattributs, z. B. „Keywords.Keyword“ valueID: Value-ID des Baumattributs; kann über „hlobj.getvalue("Keywords.Keyword", 0,0,0,1)“ ermittelt werden. |
Rückgabewert | Attributpfad des Baumattributelements als Zeichenkette, z. B. „KeywordHardware.KeywordHardwarePrinter“ |
Beispiel |
Der Attributpfad des gesetzten Schlagworts soll in einem Nachrichtenfenster ausgegeben werden: MsgBox model.GetTreePath("Keywords.Keyword", hlobj.getvalue("Keywords.Keyword", 0,0,0,1)) |
IsAgent
Diese Methode prüft, ob es sich bei dem Serviceware Processes Objekt um einen Agenten handelt.
Syntax | model.IsAgent(helpLine Objekt) |
Parameter | helpLine Objekt |
Rückgabewert |
Boolean: „true“ = Bei dem helpLine Objekt handelt es sich um einen Agenten. „false“ = Bei dem helpLine Objekt handelt es sich nicht um einen Agenten. |
Beispiel |
Es soll geprüft werden, ob es sich bei dem helpLine Objekt, für das der Dialog erstellt wurde, um einen Agenten handelt: If model.IsAgent(hlobj) = False then MsgBox "Kein Agent" End if |
IsTimerEnabled
Diese Methode prüft, ob der über die Methode „EnableTimer“ gesteuerte Timer gerade läuft.
Syntax | model.IsTimerEnabled(“SU-ID”) |
Parameter | SU-ID: ID der SU, für die geprüft werden soll, ob der Timer gestartet wurde |
Rückgabewert |
Boolean: „true“ = Der Timer läuft. „false“ = Der Time läuft nicht. |
Beispiel |
Es soll geprüft werden, ob für die erste SU des Vorgangs der Timer gestartet wurde: If model.IsTimerEnabled(1) = True then MsgBox "Timer läuft." End if |
LoadObject
Diese Methode lädt ein Objekt.
Syntax | model.LoadObject(defId, objId) |
Parameter |
defId: Definitions-ID des Objekts, das geladen werden soll, als ganze Zahl objId: Objekt-ID des Objekts, das geladen werden soll, als ganze Zahl |
Rückgabewert | helpLine Objekt |
MsgBox
Diese Methode öffnet ein Nachrichtenfenster mit dem angegebenen Inhalt.
Syntax | model.MsgBox("Text") |
Parameter | Text: Text, der im Nachrichtenfenster angezeigt werden soll; ID der SU, für die geprüft werden soll, ob der Timer gestartet wurde. Alternativ können auch z. B. Rückgabewerte von Methoden ausgegeben werden. |
Beispiel 1 (mit Text) |
Es soll geprüft werden, ob für die erste SU des Vorgangs der Timer gestartet wurde: If model.IsTimerEnabled(1) = True then MsgBox "Timer läuft." End if |
Beispiel 2 (mit anderem Inhalt) |
Die Anzahl der offenen Vorgänge des Anfragers soll in einem Nachrichtenfenster ausgegeben werden: Dim callercases Callercases = model.GetActiveCasesByCaller MsgBox callercases |
NewCaller
Diese Methode legt ein neues Personenobjekt an und setzt dieses direkt als Anfrager des geöffneten Vorgangs. Die Methode entspricht der Funktion der Schaltfläche Neuen Anfrager anlegen in der RibbonBar des Vorgangsdialogs.
Syntax | model.NewCaller("Definitionsname") |
Parameter | Definitionsname:Definitionsname des Objekts, das angelegt werden soll |
Rückgabewert | helpLine Objekt |
NewOrgUnit
Diese Methode legt eine neue Organisationseinheit an und setzt diese direkt als Anfrager des geöffneten Vorgangs (sofern das in Ihrem Dialog möglich ist). Die Methode entspricht der Funktion der Schaltfläche Neue Organisation anlegen in der RibbonBar des Vorgangsdialogs.
Syntax | model.NewOrgUnit("Definitionsname") |
Parameter | Definitionsname:Definitionsname des Objekts, das angelegt werden soll |
Rückgabewert | helpLine Objekt |
NewProduct
Diese Methode legt ein neues Produkt an und setzt dieses direkt als CI des geöffneten Vorgangs. Die Methode entspricht der Funktion der Schaltfläche Neues Produkt anlegen in der RibbonBar des Vorgangsdialogs.
Syntax | model.NewProduct("Definitionsname") |
Parameter | Definitionsname:Definitionsname des Objekts, das angelegt werden soll |
Rückgabewert | helpLine Objekt |
Open
Diese Methode öffnet den Dialog eines Objekts.
Syntax | model.Open(helpLine Objekt) |
Parameter | helpLine Objekt:helpLine Objekt, dessen Dialog geöffnet werden soll, als Objekt |
Beispiel |
Durch die Methode „CreateObject“ soll ein neues Personenobjekt erstellt und dessen Dialog direkt geöffnet werden: Dim hlcontact Set hlcontact = model.CreateObject(Contact) model.Open hlcontact |
Save
Diese Methode speichert das helpLine Objekt, aus dessen Dialog sie aufgerufen wurde. Bei Verwendung dieser Methode wird ebenfalls das Event „OnSave“ ausgelöst.
Syntax | model.Save |
Parameter | Boolean |
SaveAndRelease
Diese Methode speichert das Objekt und gibt es frei. Die Funktion entspricht der der Schaltfläche Freigeben und schließen in der RibbonBar des Vorgangsdialogs.
Syntax | model.SaveAndRelease(Boolean1, Boolean2) |
Parameter |
Boolean1 (Schließen des Dialogs): „true“ = Der Dialog wird geschlossen. „false“ = Der Dialog wird nicht geschlossen. Boolean2 (Freigeben des Dialogs): „true“ = Der Vorgang wird freigegeben. „false“ = Der Vorgang wird nicht freigegeben. |
Rückgabewert | Boolean |
SaveObject
Diese Methode speichert das geöffnete Objekt. Die Funktion entspricht der der Schaltfläche Speichern in der RibbonBar des Vorgangsdialogs.
Syntax | model.SaveObject(helpLine Objekt) |
Parameter | helpLine Objekt: helpLine Objekt, das gespeichert werden soll, als Objekt |
Rückgabewert | Boolean |
SetCustomerInCase
Diese Methode setzt das ausgewählte Personenobjekt als Anfrager. So kann z. B. bei einer tabellarischen Auflistung von Personen in einem Dialog eine Person ausgewählt und dann über diese Methode als Anfrager gesetzt werden.
Syntax | model.SetCustomerInCase(Basisobjekttyp, helpLine Objekt) |
Parameter |
Basisobjekttyp: Basisobjekttyp des Objekts, das als Anfrager gesetzt werden soll, als Zeichenkette. Verfügbare Werte sind die Werte der Eigenschaft „SymbolName“. helpLine Objekt: helpLine Objekt, das als Anfrager gesetzt werden soll, als Objekt |
Rückgabewert | Boolean |
SetFocusToControl
Diese Methode setzt den Fokus auf das angegebene Control. Das zugehörige Control wird im Hintergrund automatisch ermittelt.
Syntax | model.SetFocusToControl "attributeKey" |
Parameter | attributeKey: AttributeKey (ODE.Attribut), auf das der Fokus gesetzt werden soll, als Zeichenkette |
Rückgabewert | Boolean |
Beispiel |
Der Fokus soll via Skript auf das Beschreibungsfeld im Incident Record gesetzt werden: model.SetFocusToControl "CaseDescription.Description.RAWTEXT" |
Translate
Diese Methode übersetzt die angegebene Ressource in die Sprache, in der die aktuelle Anwendung gerade geöffnet ist.
Syntax | model.Translate("resourceKey") |
Parameter |
resourceKey: Übersetzungsschlüssel der Ressource; zu
ermitteln im Processes
Designer >> Menü „Extras“ >>
„Ressourcen…“ >> Registerkarte „Allgemeines“
>> Spalte „Übersetzungsschlüssel“
|
Rückgabewert | Übersetzung der angegebenen Ressource |
Beispiel |
Die Übersetzung der angegebenen Ressource soll in einem Nachrichtenfenster ausgegeben werden: model.Translate("#ERR_ASCFLD_001") |
model.TranslateForPerson
Diese Methode übersetzt die angegebene Ressource in die Sprache des angegebenen Personenobjekts.
Syntax | model.TranslateForPerson(helpLine object, "resourceKey") |
Parameter |
helpLine object: Das Personenobjekt, für das die Übersetzung zurückgegeben werden soll. Wenn nichts übergeben wird, für die Person keine Sprache definiert ist oder die Sprache nicht ermittelt werden kann, dann wird die helpLine Standardsprache verwendet (siehe Processes Designer - in Startkonfigurationen ist die Standardsprache English). resourceKey: Übersetzungsschlüssel der Ressource; siehe Processes Designer: „Extras“ >> „Ressourcen…“ >> Registerkarte „Allgemeines“ >> Spalte „Übersetzungsschlüssel“ |
Rückgabewert | Übersetzung der angegebenen Ressource |
Beispiel |
Übersetze den Bodytext der E-Mail in die Sprache des Anfragers. model.Translate(hlCaller, "DefaultMailBody") |