Aktionsleiste (Beta)
Definition und Verwendung
Bei der "Aktionsleiste" handelt es sich um ein Widget, welches eine Reihe von Aktionen anzeigt, die dem Benutzer zur Verfügung stehen. Die Aktionen werden als eine Reihe von Schaltflächen und in einem nebenstehenden Listenfeld angezeigt. Die Konfiguration der Komponente sowie die Größe des vom Benutzer verwendeten Bildschirms bestimmen, wie viele Aktionen in Form von Schaltflächen zur Verfügung stehen. Alle Aktionen, die nicht als Schaltfläche angezeigt werden, stehen im Listenfeld zur Verfügung.
Die folgende Beispielabbildung zeigt die "Aktionsleiste":
Sie können die "Aktionsleiste" auf folgende Weise konfigurieren:
Definieren der Aktionen, die in der Aktionsleiste zur Verfügung stehen sollen
Festlegen der maximalen Anzahl der Aktionen, die als Schaltflächen angezeigt werden sollen
Festlegen der Sichtbarkeit für die Aktionen, abhängig von deren Verfügbarkeit
Definieren der Reihenfolge der Aktionen
Definieren, ob Eingaben für eine Aktion erforderlich sind
Auswahl des gewünschten Stils für die Aktionsleiste
Aktionen sind dafür konzipiert, entweder einen Dienst oder ein Popup zu aktivieren. Der Dienst oder das Popup-Mashup müssen separat in ThingWorx konfiguriert sein. Alle weiteren Funktionen, z.B. Toastnachrichten, müssen im entsprechenden Dienst oder Mashup in ThingWorx konfiguriert werden.
Eine Aktionsleiste kann in den Komponenten "Elementliste" und "Element-Identität" enthalten sein.
Es stehen keine vordefinierten Konfigurationen für die "Aktionsleiste" zur Verfügung.
Bindende Eigenschaften 
Eingabe
Eigenschaftenname
Beschreibung
Eigenschaftstyp
Disabled
Deaktiviert das Widget im Mashup.
Boolesch
Input
Dient zum Identifizieren der Daten, die aus dem Backend-System abgerufen werden sollen.
JSON im CCO-Format
ServiceActionId
Wenn auf die Aktion geklickt wird, wird diese Zeichenfolge mit der Aktions-ID einer Dienstaktion aktualisiert.
String
SubComponentConfiguration
Binden Sie die Konfiguration an diese Eigenschaft, wenn sie sich zur Laufzeit ändert.
JSON
Ausgabe
Eigenschaftenname
Beschreibung
Eigenschaftstyp
EventTriggered
Ereignis, das ausgelöst wird, wenn die Ausführung eines Dienstes beendet oder ein Popup angezeigt wird, sofern die Konfigurationseigenschaft fireEventOnFinish der Aktion auf "true" festgelegt ist.
Ereignis
ServiceActionIdChanged
Ereignis, das ausgelöst wird, wenn der Wert in ServiceActionId geändert wird, was bedeutet, dass die Ausführung eines von der Aktionsleiste aufgerufenen Dienstes beendet wurde.
Ereignis
PopupClosed
Ereignis, das ausgelöst wird, wenn ein geöffnetes Popup geschlossen wird.
Ereignis
Konfigurationseigenschaften 
Die folgende Tabelle zeigt die für die Konfiguration dieser Komponente verwendeten JSON-Eigenschaften an.
Weitere Informationen zur Struktur der Konfiguration finden Sie unter Konfigurationsstruktur von Komponenten.
Weitere Informationen zu Untereigenschaften finden Sie unter Untereigenschaften und Container-Schlüssel.
Eigenschaftenname
Beschreibung
Eigenschaftstyp
Standardwert
Erforderlich oder optional
maxItemsToShow
Die maximale Anzahl der angezeigten Aktionsschaltflächen. Wenn die tatsächliche Anzahl der Aktionsschaltflächen diesen Wert übersteigt, sind jegliche weiteren Aktionen im Listenfeld enthalten.
2
Erforderlich
modelThingName
Der Name des Dings, das einen Dienst mit der folgenden Signatur enthält:
public JSONObject GetActions(@ThingworxServiceParameter(name = "ccoJson", baseType = "JSON") JSONObject ccoJson)
Dieser Dienst akzeptiert Eingaben im CCO-Format, das ein einzelnes Element enthält. Der Dienst gibt dann ein JSONObject zurück, das ein Array enthält, das die ID einer verfügbaren Aktion ihrer vom Backend erhaltenen Beschriftung zuordnet. Ein Beispiel für eine JSON-Konfiguration finden Sie im Anschluss.
PTC.ActionBar Model.Thing
Erforderlich
actions
Die Liste der Aktionen, für die Daten aus dem Backend-System abgerufen werden müssen. Container-Schlüssel ist actionConfiguration. Siehe Untereigenschaften weiter unten:
-/-
Erforderlich
overrideLabel
Der hier festgelegte Wert wird als Beschriftung der Aktionsschaltfläche verwendet und überschreibt den Wert, der vom Backend-System bereitgestellt wird. Schließen Sie zum Lokalisieren den Wert in doppelte Klammern ein.
-/-
Optional
actionButtonVisibility
Bestimmt, unter welchen Bedingungen die Aktionsschaltflächen angezeigt werden und in welchem Status. Optionen: AlwaysShown, DisableUnavailable, HideUnavailable. Für AlwaysShown ist die Schaltfläche immer sichtbar und aktiviert. Für DisableUnavailable ist die Schaltfläche immer sichtbar, jedoch deaktiviert, wenn die Aktion für eine vorgegebene Auswahl nicht verfügbar ist. Für HideUnavailable ist die Schaltfläche nur dann sichtbar, wenn die Aktion für die vorgegebene Auswahl verfügbar ist.
Hinweis: Es sind andere Konfigurationen vorhanden, die Auswirkungen darauf haben, ob eine Schaltfläche aktiviert oder deaktiviert ist.
-/-
Erforderlich
buttonStyle
Bestimmt die visuelle Darstellung einer Schaltfläche. Optionen: primary, secondary, tertiary, danger, transparent.
-/-
Erforderlich
overrideSetDisabled
Wenn dieses Feld festgelegt ist, bestimmt allein sein Wert, ob eine Schaltfläche aktiviert oder deaktiviert ist. Optionen: true, false. Der Wert "true" stellt sicher, dass die Schaltfläche deaktiviert ist und "false" stellt sicher, dass die Schaltfläche aktiviert ist.
-/-
Optional
activityType
Bestimmt, ob diese Aktion einen Dienst ausführt oder ein Popup-Mashup anzeigt. Optionen: popup, service. Siehe die nachfolgenden Tabellen für die erforderlichen Untereigenschaften für Popup und Dienst.
-/-
Erforderlich
fireEventOnFinish
Bei Festlegung dieses Felds auf true wird das Ereignis EventTriggered ausgelöst, wenn die Ausführung eines Dienstes beendet wird, und das Ereignis PopupClosed, wenn ein Popup geschlossen wird.
-/-
Optional
inputConstraints
Bestimmt die Eingabebeschränkung für diese Aktion. Optionen: InputRequired, SingleInputOnly und NoInputRequired.
InputRequired: Für diese Aktion muss eine Eingabe erfolgen, damit sie ausgeführt werden kann. Ist die Eingabe leer und enthält keine Elemente, so wird die Schaltfläche der Aktion deaktiviert.
SingleInputOnly: Für diese Aktion muss eine einzelne Eingabe erfolgen, damit sie ausgeführt werden kann. Ist die Eingabe leer oder enthält mehr als ein Element, so wird die Schaltfläche der Aktion deaktiviert.
NoInputRequired: Diese Aktion kann ohne oder mit Eingabe ausgeführt werden.
-/-
Optional
iconWhenEnabled
Ist dieses Feld angegeben, so enthält die Schaltfläche der Aktion ein Symbol links neben der Beschriftung, wenn die Aktionsschaltfläche aktiviert ist.
entityName
Der Name der Medieneinheit, die als Symbol verwendet werden soll
iconWhenDisabled
Ist dieses Feld angegeben, so enthält die Schaltfläche der Aktion ein Symbol links neben der Beschriftung, wenn die Aktionsschaltfläche deaktiviert ist.
entityName
Der Name der Medieneinheit, die als Symbol verwendet werden soll
mashupName
Der Name des Mashups, das als Popup angezeigt wird.
Diese Eigenschaft wird nur verwendet, wenn activityType auf popup festgelegt ist.
-/-
Erforderlich
redirectAfterPopupSuccess
Leitet zu einem anderen Mashup um, wenn das Popup nach einer erfolgreichen Operation geschlossen wird.
Um die Aktionsleiste darüber zu informieren, ob die vom Popup ausgeführte Operation erfolgreich abgeschlossen wird, müssen Sie den Sitzungsparameter mit dem Namen PTC.ActionBar.popupCloseParameters so festlegen, dass er die erfolgreiche oder fehlerhafte Ausführung anzeigt. Beispiel: Das Popup-Mashup enthält einen Ausdruck, der nach Abschließen der vom Popup durchgeführten Operation ausgeführt wird. In diesem Ausdruck wird der Sitzungsparameter festgelegt. Im nachfolgenden Beispiel ist das JSON-Attribut operationSuccessful auf "true" festgelegt, da die Operation erfolgreich war:
sessionStorage.setItem("PTC.ActionBar.popupCloseParameters", JSON.stringify( { operationSuccessful: true } ));
Diese Eigenschaft wird nur verwendet, wenn activityType auf popup festgelegt ist.
-/-
Optional
popupWidth
Gibt die Breite des angezeigten Popups an.
Diese Eigenschaft wird nur verwendet, wenn activityType auf popup festgelegt ist.
1024
Optional
popupHeight
Gibt die Breite des angezeigten Popups an.
Diese Eigenschaft wird nur verwendet, wenn activityType auf popup festgelegt ist.
640
Optional
thingWithService
Der Name des Dings, das den auszuführenden Dienst enthält
Diese Eigenschaft wird nur verwendet, wenn activityType auf service festgelegt ist.
-/-
Erforderlich
serviceName
Der Name des auszuführenden Dienstes
Diese Eigenschaft wird nur verwendet, wenn activityType auf service festgelegt ist.
-/-
Erforderlich
parameters
Dieses optionale Feld erlaubt das Übergeben von hartcodierten Parametern an den Dienst. Die Parameter sind in einem JSONObject definiert, müssen jedoch als "String" eines JSON-Objekts mit in Escape-Zeichen gesetzten Anführungszeichen formatiert werden. Parameter sollten in folgender Form in die Konfigurationsdatei eingegeben werden: "{\"myParamName\": \"hardcodedValue\"}" . Weitere Informationen finden Sie nachfolgend.
Diese Eigenschaft wird nur verwendet, wenn activityType auf service festgelegt ist.
-/-
Optional
Verwendung von parameters für die Konfiguration einer Dienstaktion:
Dies ist die Signatur eines Beispieldienstes mit dem Namen MyService:
@ThingworxServiceDefinition(name = "MyService", category = "MyCategory")
public void MyService(
@ThingworxServiceParameter(name = "exampleInt", baseType = "INTEGER") Integer exampleInt,
@ThingworxServiceParameter(name = "ExampleString", baseType = "STRING") String exampleString,
@ThingworxServiceParameter(name = "ExampleBoolean", baseType = "BOOLEAN") Boolean exampleBoolean)
Die Parameterwerte für MyService sehen wie folgt aus:
{
\"exampleInt\": 123,
\"exampleString\": \"Hello\",
\"exampleBoolean\": true
}
* 
Zwei Parameter werden für den Dienst automatisch abgerufen, wenn die Dienstsignatur entsprechend definiert wird: serviceParam_InputCco und serviceParam_ActionId. Der Parameter serviceParam_InputCco ist ein JSONObject und die Eingabe, die für die Aktionsleiste bereitgestellt wurde. Der Parameter serviceParam_ActionId ist eine Zeichenfolge mit der ID der Aktion, auf die geklickt wurde. Sind diese Parameter nicht in der Signatur Ihres Dienstes enthalten, so können Sie sie nicht verwenden. Sollten Sie die Parameter verwenden wollen, definieren Sie Ihre Dienstsignatur für die Verwendung von einem oder beiden Parametern wie folgt:
@ThingworxServiceDefinition(name = "MyService", category = "MyCategory")
public void MyService(
@ThingworxServiceParameter(name = "serviceParam_InputCco", baseType = "JSON")
JSONObject serviceParam_InputCco,
@ThingworxServiceParameter(name = "serviceParam_ActionId", baseType = "STRING")
String serviceParam_ActionId)
Beispielkonfiguration 
{
"maxItemsToShow":{
"value":3
},
"modelThingName":{
"entityName":"PTC.ActionBarModel.Thing"
},
"actions":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"Approve",
"additionalData":{
"actionConfiguration":{
"overrideLabel":{
"value":""
},
"actionButtonVisibility":{
"selectedKey":"HideUnavailable"
},
"buttonStyle":{
"selectedKey":"primary"
},
"activityType":{
"selectedKey":"popup"
},
"mashupName":{
"mashupName":"PTC.AccessApp.WindchillServices.RoutingOptionMashup"
},
"fireEventOnFinish":{
"value":false
},
"inputConstraints":{
"selectedKey":"SingleInputOnly"
}
}
},
"ordinal":1
},
{
"id":"Reject",
"additionalData":{
"actionConfiguration":{
"overrideLabel":{
"value":""
},
"actionButtonVisibility":{
"selectedKey":"HideUnavailable"
},
"buttonStyle":{
"selectedKey":"primary"
},
"activityType":{
"selectedKey":"popup"
},
"mashupName":{
"mashupName":"PTC.AccessApp.WindchillServices.RoutingOptionMashup"
},
"fireEventOnFinish":{
"value":false
},
"inputConstraints":{
"selectedKey":"SingleInputOnly"
}
}
},
"ordinal":2
},
{
"id":"Analyze",
"additionalData":{
"actionConfiguration":{
"overrideLabel":{
"value":""
},
"actionButtonVisibility":{
"selectedKey":"HideUnavailable"
},
"buttonStyle":{
"selectedKey":"primary"
},
"activityType":{
"selectedKey":"popup"
},
"mashupName":{
"mashupName":"PTC.AccessApp.WindchillServices.RoutingOptionMashup"
},
"fireEventOnFinish":{
"value":false
},
"inputConstraints":{
"selectedKey":"SingleInputOnly"
}
}
},
"ordinal":3
},
{
"id":"Reassign",
"additionalData":{
"actionConfiguration":{
"overrideLabel":{
"value":"Reassign"
},
"actionButtonVisibility":{
"selectedKey":"AlwaysShown"
},
"buttonStyle":{
"selectedKey":"primary"
},
"activityType":{
"selectedKey":"popup"
},
"mashupName":{
"mashupName":"PTC.AccessApp.WindchillServices.ReassignActionMashup"
},
"fireEventOnFinish":{
"value":false
},
"inputConstraints":{
"selectedKey":"InputRequired"
}
}
},
"ordinal":4
}
],
"objectType":"WT.WorkItem.Actions"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
}
War dies hilfreich?