FlexReport for WinForms
パラメータのカスケード
パラメータの操作 > パラメータのカスケード

カスケードパラメータは、一方のパラメータの値のリストがもう一方のパラメータで選択されている値に依存する場合に使用されます。したがって、パラメータは 2 つ存在します。一方のパラメータのデータ値をリストするために使用されるデータソースが、もう一方のパラメータによって変更されます。

たとえば、選択されたカテゴリに属する製品リストから製品を選択する場合は、以下を実行する必要があります。

  1. 新しいレポートを作成します。そのレポートを C1NWind.mdb 内の Order Details に連結します。
  2. 2 つのデータソース(2 つのパラメータに 1 つずつ)を追加します。
    • パラメータ prmCategory に値を渡すための dsCategory
    • パラメータ prmProduct に値を渡すための dsProduct

  3. dsCategories を右クリックし、[編集]を選択してデータソースを編集します。データプロバイダと接続文字列を設定し、次の SQL 文を記述します。

    select * from categories

  4. dsProducts に対して上記の手順を繰り返します。次の SQL 文を記述します。

    select * from products where categoryid = prmCategory

  5. メインデータソースを右クリックし、[編集]を選択し、メインデータソースに対する SQL 文を記述します。

    select * from [order details] where productid = prmProduct

  6. 2 つのパラメータを追加します。
    • カテゴリを選択するための prmCategory
    • prmCategory パラメータで選択されたカテゴリに属する製品を選択するための prmProduct
  7. 次のように、2 つのパラメータに対して AllowedValuesDefinition プロパティを設定します。
    prmCategory prmProduct
    データソース dsCategory dsProduct
    ラベル CategoryName ProductName
    CategoryID ProductID
  8. [プレビュー]をクリックします。

カテゴリを選択すると、そのカテゴリ内の製品のリストが、もう 1 つのパラメータに表示されます。次に、製品を選択し、[パラメータの適用]をクリックします。ここでは、Condiments カテゴリに含まれる Aniseed Syrup 製品のデータが表示されています。