Sie spezifizieren Objekte und Eigenschaften in JavaScript-Ausdrücken. Sie können diese Ausdrücke für die Laufzeitwerte des Attributs "value" für die Elemente verwenden, die Sie als Felder auf Formularen verwenden. Diese Ausdrücke werden typischerweise in folgendem Format angegeben: $(_.object.property).
Um beispielsweise den Laufzeitwert des angemeldeten Anwenders zu erfassen, der ein Formular für einen Auftrag ausfüllt, verwenden Sie $(_.user.firstName). Sie können Zeichenfolgen auch verketten, dies wird weiter hinten in diesem Abschnitt behandelt.
Diese Variablen gelten nur für Formulardesigner-Formulare! Sie sind den Objekten und Eigenschaften, die in Formularvariablen für CA Workflow definiert werden, ähnlich, jedoch nicht völlig mit ihnen identisch. Wenn Sie Formulare des Formulardesigners und CA Workflow-Formulare nebeneinander verwenden, achten Sie darauf, die korrekten Objekte und Eigenschaften für den jeweiligen Formulartyp zu verwenden.
Das Formularobjekt enthält folgende Eigenschaft, die Sie in JavaScript-Ausdrücken oder als ersten Parameter in JavaScript-Funktionen verwenden können: ca_fd.formId.
"formId" bezieht sich auf das aktive Formular. Das Formular ist in aktiv, wenn ein Feld im Formular ein Event auslöst. Es folgen ein paar Beispielaktionen, die Formulare aktivieren:
Das Anwenderobjekt enthält ein Array der Anwendereigenschaften, auf das Sie mit _.user zugreifen können.
Jedes Anwenderobjekt listet folgende Eigenschaften in zugehörigen Gruppen auf:
Die Eigenschaft "_.user.groups" gibt den Namen einer Anwendergruppe in CA EEM an. Sie können diese Eigenschaft verwenden, um ein Feld zu manipulieren, das darauf basiert, ob der Anwender einer bestimmten CA EEM-Gruppe gehört. Weitere Informationen finden Sie im Beispielabschnitt.
Die Eigenschaft "_.user.groups" enthält ein Array mit allen CA EEM-Gruppen, denen der Anwender angehört.
Beispiele
Sie können die Eigenschaft "_.user.groups" verwenden, damit ein Feld für die Mitglieder einer CA EEM-Gruppe, z. B. der Gruppe der Entwickler, nicht angezeigt wird. Legen Sie dazu das HTML-Attribut "Hidden" folgendermaßen fest:
_.user.groups.indexOf("Entwickler") >= 0
Sie können aber auch ein Feld für Anwender anzeigen, die kein Mitglied einer CA EEM-Gruppe sind. Legen Sie dazu den Wert des HTML-Attributs "Hidden" folgendermaßen fest:
_.user.groups.indexOf("Entwickler") < 0
Das Geschäftsbereichsobjekt enthält ein Array der Geschäftsbereichseigenschaften, auf das Sie mit _.bu zugreifen können.
Jedes Geschäftsbereichsobjekt listet folgende Eigenschaften in zugehörigen Gruppen auf:
Das Auftragsobjekt enthält ein Array der Auftragseigenschaften, auf das Sie mit _.request zugreifen können.
Jedes Auftragsobjekt listet folgende Eigenschaften in zugehörigen Gruppen auf:
Diese Eigenschaften stellen den neuen Wert eines Objekts dar, sobald der Anwender das Objekt während des Lebenszyklus eines Auftrags aktualisiert. (Der Anwender ist normalerweise ein Auftragsmanager oder der Anforderer.)
Der Anwender kann das Objekt beispielsweise aktualisieren, während die ausstehende Aktion für das Element mit der zugeordneten Eigenschaft genehmigt, abgelehnt oder erzwungen wird. Der neue Wert wird sofort übernommen, sobald der Anwender die Eigenschaft aktualisiert. Speichern ist nicht erforderlich.
Wenn Formulare erstellt oder bearbeitet werden, können Sie diese Eigenschaften nach eigenem Ermessen verwenden. Zum Beispiel können Sie diese Eigenschaften in einer anwenderspezifischen JavaScript-Funktion zur Validierung verwenden, die Sie im JavaScript-Attribut "OnSubmit" verwenden. Wenn ein Anwender beispielsweise ein ungültiges Datum eingibt, wie z. B. einen Feiertag, kann Ihre anwenderspezifische JavaScript-Funktion einen Text anzeigen, der die gültigen Daten erklärt.
Das Serviceobjekt enthält ein Array der Auftragseigenschaften, auf das Sie mit _.service zugreifen können.
Jedes Service-Objekt listet folgende Eigenschaften in zugehörigen Gruppen auf:
Das Serviceoptionsgruppenobjekt enthält ein Array der Serviceoptionen, auf das Sie mit _.sog.name zugreifen können.
Jede Serviceoptionsgruppe listet folgende Eigenschaften in zugehörigen Gruppen auf:
Das Serviceoptionsobjekt gilt nur für die vordefinierte JavaScript-Funktion "_.serviceoption.status( )".
Die Funktion "_.serviceoption.status( )" enthält eine einzelne Eigenschaft mit dem Namen "newStatus".
Hinweis: Diese Funktion übernimmt keine Parameter.
Gibt den neuen Wert für den Status an, wenn eine Anwenderaktion den Status der Serviceoption aktualisiert. Diese Eigenschaft übernimmt den neuen Wert für den Status, sobald der Anwender einen der folgenden Schritte ausführt:
In beiden Fällen ändert sich der Wert von "_.serviceoption.newStatus( )" sofort. Im Gegensatz dazu bleibt der Wert von "_.serviceoption.status( )" unverändert, bis die Seite übergeben und aktualisiert wird.
Hinweis: JavaScript-Funktionen, die mit Statusänderungen zusammenhängen, ändern ihr Verhalten nicht, wenn sie von davon abhängig sind, dass der Anwender die Seite oder das Dialogfeld fertigstellt. (Normalerweise wird für diese Aktion auf "OK" geklickt). Zum Beispiel weist die JavaScript-Funktion "onSubmit" normalerweise auf Statusänderungen hin. Die Funktion "onSubmit" wird nur ausgeführt, wenn der Anwender die Seite oder das Dialogfeld fertigstellt, nicht wenn der Wert von "newStatus" sich ändert.
Beispiele
Sie können die Eigenschaft "newStatus" verwenden, damit Ihre Implementierung Reservierungen effizient verarbeitet. Nehmen Sie beispielsweise an, dass ein Anwender einen Hauptauftrag für einen Computer und zusätzliche Aufträge für zugehörige Optionen übergibt. Diese Optionen schließen zusätzlichen Speicher, eine aktualisierte Tastatur usw. ein. Sie können eine anwenderspezifische JavaScript-Funktion so erstellen, dass wenn der Hauptauftrag abgelehnt wird, die Funktion "onSubmit" für alle optionalen Aufträge ausgeführt wird. Beispiele für optionale Aufträge beinhalten Zubehör, zusätzlichen Speicher usw. ein. Zum Beispiel ergibt folgender Ausdruck den Wert "Wahr", wenn der ursprüngliche Status 400 ist, und wenn "newStatus" auf 800 geändert wird:
if (_.serviceoption.status() == 400 && _.serviceoption.newStatus == 800)...
Hier werden die Operatoren beschrieben, die hauptsächlich für das Formulardesign eingesetzt werden. Für eine vollständige Beschreibung der Standardoperatoren siehe die JavaScript-Standardreferenz, die Ihre Organisation verwendet, z. B. www.developers.sun.com oder www.javascript.com.
Sie können in Ihrem JavaScript-Ausdruck alle Standardoperatoren außer Zuordnungsoperatoren angeben.
Die Zuordnungsoperatoren lauten: =, +=, -=, *=, /= .
Zum Beispiel ist folgender Ausdruck ungültig, da der Zuweisungsoperator = verwendet wird:
$(var x = 1+2)
Geben Sie JavaScript-Ausdrücke an, die für die Attribute "disabled", "checked" und " hidden" verwendet werden, die einen der folgenden Werte zurückgeben:
Wenn der Ausdruck einen anderen Wert zurückgibt, ersetzt CA Service Catalog diesen Wert durch "falsch". Wenn Sie "$(_.user.firstName)" für das Attribut "disabled" eines Textfeldes angeben, wird das Feld also nicht deaktiviert - es sei denn, der Vorname des Anwenders lautet "wahr".
Sie können optional zwei Zeichenfolgen mithilfe des Operators + miteinander verketten.
Zum Beispiel gibt $ ('Hallo'+ _.user.firstName +'' + _.user.lastName) folgenden Text zurück: Hallo Vorname Nachname. "Hallo John Doe" und "Hallo Jane Smith" sind Beispiele.
Alternativ können Sie folgende Vergleichsoperatoren verwenden:
Beispiele, die im Formulardesigner verwendet werden, finden Sie unter folgenden Abschnitten:
Alternativ können Sie folgende logische Operatoren verwenden:
Beispiele, die im Formulardesigner verwendet werden, finden Sie unter folgenden Abschnitten:
| Copyright © 2013 CA. Alle Rechte vorbehalten. |
|