Datensatz-Scripts sind ein generischer Hook-Typ, der als Antwort auf ein Ereignis in einem Formular oder von anderen Hooks aufgerufen wird. Sie können ein Script schreiben, das benutzerdefiniertes Verhalten im Kontext eines Datensatzes ausführt. Die Scripts werden im Kontext des aktuell ausgewählten Datensatzes ausgeführt. Eine Datensatz-Script-Subroutine bezieht sich speziell auf einen Satztyp.
In der Regel werden Datensatz-Scripts zum Implementieren einer Aktion verwendet, die als Reaktion auf das Klicken auf eine Schaltfläche oder einen Kontextmenüeintrag ausgeführt wird, der einem bestimmten Feld in einem Formular zugeordnet ist. Beispielsweise kann ein Datensatz-Script Daten über den aktuellen Datensatz an ein anderes System senden.
Sie haben drei Möglichkeiten, ein Datensatz-Script auszuführen:
Beispielsweise ermöglicht das Datensatz-Script "Build_Properties" im Schema "TeamTest" Benutzern das Anzeigen der Eigenschaften des ausgewählten Builds. Das Script ist einer Schaltfläche zugeordnet, die das Script ausführt. Anschließend ruft das Datensatz-Script "Build_Properties" die Build-Informationen aus dem Repository von Rational ClearQuest ab und zeigt sie in einem Fenster an.
Alle Datensatz-Scripts verwenden dieselbe Syntax:
Function RecordName_HookName(param) ' param As Variant ' RecordName_HookName As Variant ' ... End Function
Beim Aufrufen eines Datensatz-Scripts von einem anderen Hook aus ist der an den Hook übergebene Parameter eine einfache Variante mit den entsprechenden Daten. Gibt der Hook Informationen an den aufrufenden Hook zurück, geben Sie diese Informationen in einer Variante zurück.
Bei Zuordnung zu einem Formularsteuerelement enthält der an die Methode übergebene Parameter eine Instanz der Klasse "EventObject". Diese Instanz enthält Informationen zu dem Ereignis, das zum Aufrufen des Hooks geführt hat. (Siehe Formularsteuerelementereignisse.) Rational ClearQuest erwartet keinen Rückgabewert von Datensatz-Scripts, die Formularsteuerelementen zugeordnet sind. Ein Rückgabewert ungleich null von einem Datensatz-Hook wird als Fehler interpretiert und kann von der Clientkomponente von Rational ClearQuest in einem Nachrichtenfenster angezeigt werden.
Datensatz-Scripts können Schaltflächen, Textfeldern und Listen zugeordnet werden. Bei Zuordnung zu einer Schaltfläche wird nach Klicken auf die Schaltfläche automatisch der Hook ausgeführt. Bei Zuordnung zu Textfeldern und listenbezogenen Steuerelementen wird der Hook zum Kontextmenü des Steuerelements hinzugefügt.
Sie können ein Datensatz-Script auch einer Aktion vom Typ "RECORD_SCRIPT_ALIAS" zuordnen. Diese Zuordnung gibt Ihnen die Möglichkeit, eine benutzerdefinierte Schaltfläche in das Aktionsmenü eines Rational-ClearQuest-Formulars einzufügen.
Rational ClearQuest Web prüft den Rückgabewert eines durch eine Schaltfläche aufgerufenen Datensatz-Scripts. Ist der Rückgabewert eine Zeichenfolge, wird diese als Fehlernachricht interpretiert, und der Hook schlägt fehl.
Wenn Sie den Rückgabewert der Funktion des Datensatz-Scripts nicht explizit festlegen, wird ein Nullwert oder ein leerer Wert zurückgegeben, der anzeigt, dass der Hook erfolgreich ausgeführt wurde.
Wählen Sie zum Aktivieren von Datensatz-Hooks für das Web die Option "Enable for web" auf der Registerkarte "Extended" der Anzeige mit den Eigenschaften des Steuerelements aus.
In Rational ClearQuest Web werden Datensatz-Hooks auf der Serverkomponente von Rational ClearQuest Web ausgeführt. Wegen der Ausführung auf dem Server sollten Sie keine Windows-Routinen aufrufen, die das Anzeigen eines Fensters auslösen. Das Fenster würde auf dem Server und nicht auf dem Client angezeigt werden. Die Serverkomponente von Rational ClearQuest Web legt beim Starten einer Serversitzung einen Wert "Session.NameValue" mit der Bezeichnung "CQ_WEB_SESSION" fest, damit Ihre Scripts für das Web aktiviert werden können.
Wenn ein Datensatz-Script durch ein Formularsteuerelement ausgelöst wird, übergibt Rational ClearQuest ein Objekt "EventObject" als Parameter an das Datensatz-Script. Dieses Objekt enthält Informationen über den Typ des aufgetretenen Objekts. Verschiedene Steuerelemente können verschiedene Ereignistypen generieren (z. B. das Klicken auf eine Schaltfläche, das Auswählen von Elementen usw.). Sie müssen anhand der Informationen im Objekt "EventObject" festlegen, wie das Ereignis behandelt wird.
Für Formularsteuerelemente werden die folgenden Ereignistypen generiert:
Die folgende Tabelle enthält den für jedes Steuerelement unterstützten Ereignistyp und die vom Objekt "EventObject" bereitgestellten Zusatzinformationen. Die in der Spalte für den unterstützten Ereignistyp aufgelisteten Konstanten sind Bestandteil des nummerierten Typs "EventType".
Steuerelementtyp | Unterstützter Ereignistyp | Weitere Informationen |
---|---|---|
Schaltfläche | AD_BUTTON_CLICK | Name der Schaltfläche |
Kombinationsfeld | AD_CONTEXMENU_ITEM_SELECTION | Nullzeichenfolge |
Dropdown-Listenfenster | AD_CONTEXMENU_ITEM_SELECTION | Nullzeichenfolge |
Listenfenster | AD_CONTEXMENU_ITEM_SELECTION | Aktuelle Feldwertauswahl |
Listensicht | AD_CONTEXMENU_ITEM_SELECTION | Aktuelle Feldwertauswahl |
Textfeld | AD_CONTEXMENU_ITEM_SELECTION | Aktuelle Feldwertauswahl |
Dropdown-Kombinationsfeld | AD_CONTEXMENU_ITEM_SELECTION | Nullzeichenfolge |