Forguncy 10 オンラインヘルプ
アプリの開発 / ロジックの実装 / コマンド / コマンド(通常) / クエリー
このトピックで
    クエリー
    このトピックで

    指定したテーブルのフィールドに対して条件を設定して値を抽出することができます。このコマンドの実行についてはコマンド(通常) を参照してください。

    抽出した値はそのテーブルとデータ連結しているリストビューに反映されます。

    注意: ページロード時のコマンドに設定した場合、既定の設定の[ページ遷移]コマンドでは2回目以降の遷移では[クエリー]コマンドは実行されずキャッシュが使用されることに注意してください。2回目以降の遷移でも[クエリー]コマンドが実行されるようにするには、[ページ遷移]コマンドの[遷移先ページのクエリー結果と並べ替え結果のキャッシュを削除する]を有効に設定する必要があります。

    クエリーの条件設定

    [対象テーブル]をクリックして、クエリーの対象となるテーブルを指定します。

    [新しい条件]をクリックして条件を設定します。[新しい条件]のドロップダウンボタンをクリックし、[テーブルのフィールドから条件を自動生成]を選択すると、すべてのフィールドが追加されます。

    複数の条件を設定してAnd/Orで接続することができます。

    And/Or

    2つ目以降の条件は直前の条件とAnd/Orで接続できます。

    括弧

    条件式を括弧でくくることができます。条件式の前後でカッコを選択します。

    四重のカッコまで指定できます。

    カッコを使うと「((A and B) or C) and D」というような複雑な条件設定もできます。

    フィールド

    クエリーの対象となるフィールドを選択します。

    「作成者」「作成日時」「最終更新者」「最終更新日時」など自動作成されるフィールドも選択できます。

    関連フィールドを使用する場合、テーブルの関連付けは、同一データベースでかつ同一インスタンス内のテーブル同士である必要があります。たとえば、Forguncyの内部データベースとSQL Server、Oracle Databaseなど外部のデータベース間で関連付けを行ったり、SQL Server同士でもデータベースが異なりインスタンスが同一でなかったりする場合は関連フィールドは使用できません。

    条件

    フィールドと値を比較する条件を「等しい」「より大きい」などの条件を選択します。
    条件の「ワイルドカード」を使用すれば、ワイルドカード文字を使用したあいまい検索が可能です。ワイルドカードには下記の文字が使用できます。

    %

    任意の0文字以上の文字列を表します。

    (使用例) 条件の値が「bl%」の場合、bl、black、blue、blobなどが該当します。

    _

    任意の1文字を表します。

    (使用例) 条件の値が「h_t」の場合、hot、hat、hitなどが該当します。

    フィールドにLIST関数の集計フィールドを設定すると、リスト用の条件が表示されます。詳しくは集計フィールドのTipsを参照してください。

    比較する値を設定します。式や値を入力したり、特殊キーワード(%CurrentUser.UserName%など)を選択したりできます。

    ]をクリックすると、入力ダイアログが開き、値などの入力やセルを指定ができます。

    Forguncyキーワード

    データ取得のキーワードを参照してください。

    NULL値のクエリー動作

    条件式の値に設定した数式の結果がNullになる場合に返すレコードを指定します。

    • 0件のレコード:数式の結果がNULLの場合、レコードを返しません。
    • すべてのレコード:数式の結果がNULLの場合、すべてのレコードを返します。
    • 値が空のレコード:数式の結果がNULLの場合、値が空のレコードを返します。

    条件で「指定したリストに含まれる」を選択した場合、「指定したリスト」とは

    の3つのうちの「値」に該当します。この値には「指定したリスト」としてリスト項目をカンマ(,)で区切った文字列を指定します(項目そのものにカンマが含まれる文字列を指定することはできません。このため、項目にカンマが含まれる可能性のある「ログインユーザー.ロール」を、フィールドで指定することはできません)。なお、日付/時刻、時刻、Yes/No型を指定したリストにすることもできません。

    例えば、値に「A,B,C,D,E」の文字列を指定します。この場合、フィールドが「G」だった場合、「指定したリスト」である「A,B,C,D,E」には含まれないので、一致しないになります。しかし、「A」だった場合、「指定したリスト」に含まれるので、一致したとなります。

    注意: 条件に「指定したリストに含まれる」を使用し、条件の値としてチェックボックスグループ型セルを指定した場合、アプリケーションの実行時において対象のチェックボックスグループ型セルが1つもチェックされていない状態は、すべての項目が対象(絞り込みが行われない状態)となることに注意してください。1つ以上チェックされた段階で、チェックされた項目が対象となり、絞り込みが行われます。

    [条件の削除]をクリックすると、選択されている条件が削除されます。