グリッド・カラムの例

次の例では従業員リスト内の部門のカラムにコンボ・ボックスを追加します。#DEPTMENTカラムを含む#EMPLISTと呼ばれる従業員リストと#DEPTMENTと#DEPTDESCを含む#DEPTSとよばれる部門リストがあります。

1.  グリッドをWebroutineの[デザイン]に追加し、listnameプロパティにEMPLISTを設定します。

2.  grid_col_propertiesプロパティを修正し、DEPTMENTカラムで[カラムのカスタマイズ]オプションを選択します。

3.  コンボ・ボックス・ウェブレットをDEPTMENTカラムの最初のヘッダー以外のセルにドラッグしてください。

4.  ドロップダウンのlistnameプロパティにDEPTSを設定します。

5.  codefieldプロパティにDEPTMENTを、captionfieldプロパティにDEPTDESCを設定します。グリッドは、以下のようになります。

lastpic011

valueプロパティにシングル・ピリオド(.)が含まれていることに注意してください。これはコンボ・ボックスの値がEMPLISTリストの現在のカラム値であるべきことを示しています。

また、display_modeプロパティには$tsml_col_modeが設定されていることにも注目してください。これは特別なXSLT変数で、グリッドの中でDEF_LISTに定義された表示モードを示すために使用されます。

これで、on_changeアクションがコンボ・ボックスに追加され、値が変更されるとWebroutineが実行されます。UpdateDepartmentWebroutineには2つの入力があります。EMPNODEPTMENTです。

6.  コンボ・ボックスのon_change_wrnameプロパティにUpdateDepartmentを設定します。

7.  コンボ・ボックスのtagfield1プロパティにDEPTMENTを設定します。これはDEPTMENTカラム(DEPTSリスト内の)で選択された値を実行するようコンボ・ボックスに指示します。

8.  コンボ・ボックスのreentryfieldプロパティにEMPNOを設定し、reentryvalueプロパティに../lxml:column[@name='EMPNO']を設定します。これはXPath式ですので、値を入力する際は[詳細]タブの下部にあるXPathエントリー・エリアを使用する必要があります。これはグリッドのEMPNOコラムの値を取得し、EMPNOという名前のフィールドに送るようコンボ・ボックスに指示します。