Forguncy 10 オンラインヘルプ
アプリの開発 / 外部連携と入出力 / レポート / 対話的な機能 / 列の動的な表示切替(Table)
このトピックで
    列の動的な表示切替(Table)
    このトピックで

    ユーザーがパラメータパネルで列を選択することで、選択した列のみがTableデータ領域に出力されるように制御できます。

    1. Tableデータ領域を追加し、フィールドをデータ連結します。

    2. レポートパラメータを追加し、下の図のように編集します。

      ユーザーが選択できるパラメータの値として、「受注番号」や「カテゴリ」といったような列の名称を設定します。

    3. Tableデータ領域の列選択領域をクリックして「受注番号」の列を選択し、[表示]カテゴリの[非表示]プロパティで  アイコンをクリックして[式を選択します。

    4. [式エディタ]ダイアログで式を「  {IIF(Join(@p1, ",").IndexOf("受注番号") >= 0, false, true)}」に設定します。

      式の意味:Join関数を使用してレポートパラメータ「P1」を配列からカンマ区切りの文字列に変換し、文字列「受注番号」が含まれているかどうかをIndexOf関数で確認します。含まれている場合は「False」を返し、含まれていない場合は「Ture」を返します。

      「非表示」プロパティは、値が「False」の場合には非表示にならず、「Ture」の場合に非表示になります。

    5. そのほかの「カテゴリ」や「商品名」などの列に対しても同様の操作を行い、[非表示]プロパティに式を設定します。

      設定する式は以下のようにIndexOf関数のパラメータ部分をそれぞれの列名に変更します。

       {IIF(Join(@p1, ",").IndexOf("カテゴリ") >= 0, false, true)}

    6. レポートをプレビューし、パラメータパネルで列名を選択すると、選択した列のみが表示されることを確認できます。