レコード スクリプト

レコード スクリプトは、 フォーム上でイベントに対応して呼び出される、または別のフックから呼び出される、フックの一般フォームです。 レコードのコンテキストでカスタム動作を実行するスクリプトを作成できます。 スクリプトは、現在選択しているレコードのコンテキストで実行されます。 レコード スクリプト サブルーチンは、1 つのレコード タイプ専用です。

一般的に、レコード スクリプトはアクションを実装するために使用します。そのようなアクションは、 フォーム上の特定のフィールドに関連付けられたプッシュ ボタンまたはコンテキスト メニュー項目での クリック イベントに対応して実行されます。 たとえば、レコード スクリプトを使用して、現在のレコードに関するデータを別のシステムに送信できます。

レコード スクリプトを実行する方法は 3 つあります。

すべてのレコード スクリプトは、同じ構文を使用します。

 Function RecordName_HookName(param)
   ' param As Variant
   ' RecordName_HookName As Variant
   ' ...
 End Function
 

レコード スクリプトを別のフックから呼び出す場合、 フックに渡すパラメータは適切なデータを含む Variant 型です。 フックが呼び出し側のフックに情報を返す場合、情報を Variant 型で返してください。

レコード スクリプトをフォーム コントロールに関連付ける場合、メソッドに渡されるパラメータには、EventObject クラスのインスタンスが含まれます。 このインスタンスには、フックを呼び出すイベント情報が含まれます (「フォーム コントロール イベント」を参照)。Rational ClearQuest ソフトウェアは、 レコード スクリプトがフォーム コントロールに関連付けられている場合、 レコード スクリプトからの戻り値を要求しません。レコード フックからヌル以外の値が返された場合、Rational ClearQuest クライアントがエラーとして解釈し、その値をメッセージ ボックスに表示することがあります。

レコード スクリプトは、プッシュ ボタン、テキスト フィールド、リストに関連付けることができます。 ボタンに関連付けると、ボタンをクリックすることでフックが実行されます。 テキスト フィールドやリスト関連コントロールに関連付けると、 フックがコントロールのコンテキスト メニューに追加されます。

また、レコード スクリプトを、RECORD_SCRIPT_ALIAS タイプのアクションに関連付けることもできます。 この関連付けによって、Rational ClearQuest フォームの [アクション] メニューに カスタム ボタンを設定できます。

詳細については、以下を参照してください。

Rational ClearQuest Web でのレコード スクリプトの使用法

Rational ClearQuest Web は、プッシュ ボタンによって起動されるレコード スクリプトの戻り値を調べます。戻り値が文字列の場合は、 エラー メッセージと見なされ、フックは失敗します。

レコード スクリプト関数の戻り値を明示的に設定しないと、 フックが正常に実行されたことを示す NULL または空の値が 戻されます。

Web でレコード フックを有効にするには、 コントロールのプロパティ シートにある [拡張] タブで [WEB で有効] を 選択します。

Rational ClearQuest Web では、 レコード フックは Rational ClearQuest Web サーバーで 実行されます。このため、ウィンドウが開く Windows ルーチンを呼び出さないでください。 ウィンドウは、クライアントではなくサーバー上で開きます。 Rational ClearQuest Web サーバーは、 サーバー セッションの起動時に CQ_WEB_SESSION という Session.NameValue オブジェクトを設定して、 スクリプトを Web で使用できるようにします。

フォーム コントロール イベント

レコード スクリプトが フォーム コントロールによって起動される場合、Rational ClearQuest ソフトウェアは、 レコード スクリプトにパラメータとして EventObject オブジェクトを渡します。このオブジェクトには、発生したイベント タイプ情報が含まれます。 各種コントロールは、ボタン クリック、項目の選択などを含む、さまざまなイベント タイプを生成できます。 EventObject オブジェクト内の情報を使用して、イベントの処理方法を決定してください。

次のタイプのイベントがフォーム コントロールに対して 生成されます。

以下の表に、各コントロールでサポートされるイベント タイプのリストと、EventObject によって提供される追加情報を示します。 サポートされているイベント タイプ列に示されている定数は、EventType 列挙型の一部です。

コントロール タイプ サポートされているイベント タイプ
プッシュ ボタン AD_BUTTON_CLICK ボタン名
コンボ ボックス AD_CONTEXMENU_ITEM_SELECTION Null 文字列
ドロップダウン リスト ボックス AD_CONTEXMENU_ITEM_SELECTION Null 文字列
リスト ボックス AD_CONTEXMENU_ITEM_SELECTION 表示されるフィールド値を選択
一覧 AD_CONTEXMENU_ITEM_SELECTION 表示されるフィールド値を選択
テキスト ボックス AD_CONTEXMENU_ITEM_SELECTION 表示されるフィールド値を選択
ドロップダウン コンボ ボックス AD_CONTEXMENU_ITEM_SELECTION Null 文字列

フィードバック