すべての
Work With for Web パターンインスタンスに含まれる Selection ノードで、対応する WW<トランザクション名>
Web パネルで生成されるものに関するすべてを定義し、設定できます。
以下では、このノードに含まれるプロパティおよびサブノードについて説明します。変更を加えると、対応するオブジェクト内にコードが生成されます。たとえば、Selection ノードの一部のプロパティを変更すると、WW<トランザクション名> Web パネルにコードが記述されます。
このノードを使用して、
Transaction オブジェクトを呼び出すために指定するモードを定義できます。
- Insert: Default | True | False
- Update: Default | True | False
- Delete: Default | True | False
- Display: Default | True | False
- Export: Default | True | False
Default 値は、
Work With for Web パターン設定が使用されることを表します。
各モードについて条件を指定できます。そのために以下のプロパティを利用できます:
- Insert Condition
- Update Condition
- Delete Condition
- Display Condition
- Export Condition
条件が定義されると、評価が True の場合のみ、関連付けられたアクションが有効になります。
(特定のレコードに適用される) 更新、削除、および表示のアクションについては、条件は「CustomerId = 10」などの行の値を取ることができます。
GeneXus の if 文に記述できる内容すべてを条件とすることができます。多くの場合、コンテキスト (現在のユーザー、ユーザーレベルなど) の参照、オブジェクトパラメーター、Like 演算子などを含みます。
このノードには、グリッドに表示する項目属性および変数が含まれます。
Attributes ノードを右クリックすると、
コンテキストメニューが表示され、新しい項目属性または変数を追加できます。
項目属性のプロパティ:
- Attribute: 項目属性名です。
- Description: タブのラベルまたはグリッドタブの列タイトルとして表示されるテキストです。既定値は、項目属性の [ ContextualTitle ] プロパティから取得されます。
- Autolink: この項目属性が名称項目属性であり、このプロパティが True に設定されている場合、項目属性を使用する場所に対応する [ ビュー ] へのリンクを配置します。
- Visible: True (既定値) または False です。
- Class: 選択したテーマのクラスに従って、Web テーマクラスに基づく項目属性を定義します。
- Column Class: 列のテーマクラスを選択するためのダイナミック コンボ ボックスです。
- Format: 使用するフォーマットを定義します。
変数のプロパティ:
- Name: 変数の名前です。
- Description: 変数の説明です。
- Domain: 変数のドメインです。
- Load Code: 変数をロードするために Load イベントに追加されるコードです。
- Form
- Visible: 値は True または False です。
- Class: コントロールに関連付けられた Web テーマクラスです。
- Format: 値は [ Text ] 、 [ HTML ] 、 [ Raw HTML ] 、または [ Text with meaningful spaces ] です。
グリッド行を並べ替えるために、生成される Web パネルではさまざまな並べ替え条件を利用できます。Orders ノードを右クリックして、新しい並べ替え条件、名前、および構成を追加できます。それぞれの並べ替え条件を多数の項目属性を使って構成できます。また、各項目属性を昇順または降順に設定できます。たとえば、次のようなトランザクションが定義されているとします:
Continent
{
ContinentId*
ContinentName
}
Country
{
CountryId*
CountryName
ContinentId
ContinentName
City
{
CityId*
CityName
}
}
この場合、Work With for Web パターンを Country トランザクションに適用し、国をその名前 (
CountryName)、大陸 (
ContinentName)、またはその両方で並べ替えられるようにすることができます。
並べ替え条件が多数ある場合は、コンボボックスも提供します (コンボボックスに表示される値は並べ替え条件の名前です)。
行にフィルタをかける条件を定義します。
サブノードは次のとおりです:
- Attributes: 条件内で評価される単純なレベルのフォーム内の項目属性/変数を定義します。
- Conditions: Attributes ノードに追加された項目属性/変数に対して条件を追加し、フィルタをかけてグリッドに表示されるデータを絞り込むことができます。
上の例では、フィルタ項目属性は CountryName および ContinentName であり、条件は 2 つあります。
事前に定義されたノードのほかに、Actions というノードを Selection ノードに追加できます。そのためには、Selection ノードを右クリックして、
[ 追加 ] > [ Actions ] の順に選択します。このノードによりアクションの定義が可能であり、ユーザーは [ Work With ] Web パネルでの作業中にアクションを実行できます。
アクションを作成するには、
Actions ノードを右クリックして、
[ 追加 ] > [ Actions ] の順に選択します。
各アクションは [ Work With ] Web パネル内のイベントとして生成されます。
アクションのプロパティ:
- Name: アクション名 (関連するイベント呼び出しが Do<アクション名> という名前で生成されます)。
- Caption: アクションのキャプションです。例: Action がボタンと関連付けられている場合、このプロパティがボタンのキャプションに適用されます。
- GXObject: アクション実行時に呼び出されるオブジェクトの名前です。
- Condition: アクションを有効にする条件を決定します。
- ButtonClass: Action に関連付けられたボタンに割り当てられる Web テーマクラスです。
- Grid グループ
- In Grid: アクションをグリッドの列として追加する (特定の行にアクションを適用可能) か、または独立したアクションとして (グリッドの外に) 追加するかを定義します。後者では、 [ Caption ] プロパティの値を名前とする、関連付けられたユーザーイベントを持つボタンを追加します。グリッド内にアクションを設定する場合は True を使用します。グリッド外にアクションを設定する場合は False を使用します。True を選択すると、アクションがグリッドの冒頭に表示されます。False を選択すると、アクションのボタンが Web パネルの下側に含まれます。
- MultiRowSelection: このプロパティを True に設定すると、チェックボックスの列をグリッドの 1 番目の列 (左から右の順) に追加し、グリッドからアクションを利用できます。こうすることで、実行時に複数の行にアクションを適用できます (エンドユーザーが目的の行のチェックボックスをオンにして、選択した行にアクションを実行できます)。このプロパティの既定値は False です。 [ MultiRowSelection ] プロパティが True に設定されている場合、ボタンに関連付けられたイベントコードに、選択した行のすべての項目属性を含む SDT コレクションが追加されます。それから、 [ GXObject ] プロパティで指定した GeneXus オブジェクトを呼び出し、最初のパラメーターとして、追加のパラメーターと合わせて SDT を転送します。
- Image: アクションが有効になっている場合に、Work With Web パネルでアクションに関連付けられる画像です ( [ Condition ] プロパティによって異なります)。
- Disabled Image: アクションが無効になっている場合に、Work With Web パネルでアクションに関連付けられる画像です ( [ Condition ] プロパティによって異なります)。
- Disabled Class: アクションが無効になっている場合にグリッドで使用されるクラスを定義します。
- Tooltip: ツールチップは、マウスポインターを任意のアクションに重ねた場合に表示されます。
- In Grid Class: グリッドのアクションを表す変数のための Web テーマクラスを定義します。
- Column Class: 列のテーマクラスを定義するためのダイナミック コンボ ボックスです。
- Call Type: グリッドアクション内のオブジェクトのコールタイプを指定します。この値が「Auto」の場合、メインではないプロシージャーを除くすべてのオブジェクトでは「Link」を指定したものとして呼び出しが行われます。値が「Call」の場合、Transaction オブジェクトを呼び出すためのイベントが生成されます。値が「Link」の場合、グリッドのロードロジックで、オブジェクトを呼び出すために Link メソッドが使用されます (&Control.Link = TransactionName.Link(Mode, parameters))。
- Custom グループ
- Custom Code: アクションを実行するための手続き型の GeneXus コードです。カスタムコードは、 [ MultiRowSelection ] のアクションと一緒には使用できません。
呼び先オブジェクトに送信するパラメーターを指定できます。そのためには、アクションを右クリックして、
コンテキストメニューから
[ 追加 ] > [ パラメーター ] の順に選択します。
たとえば、ユーザーが別の Web パネルを開くことができるアクションを追加するとします。その Web パネルでは、グリッドで選択した国と同じ大陸にあるすべての国を表示します。
呼び出される Web パネルの名前は「ShowCountriesSameContinent」で、次の
Parm ルールを含みます:
Parm(ContinentId); // この項目属性がフィルタとして機能
Web レイアウトは次のとおりです:
そのインスタンスでの [ GXObject ] プロパティおよびそのパラメーターは次のようになります:
Work With Web パネルで次のイベントが生成されます:
Event 'DoShowCountriesSameContinent'
ShowCountriesSameContinent(ContinentId)
EndEvent