ソート
最終更新日: 2022年4月21日
R8 | R9
図1は、顧客モデルの一覧表示画面において「顧客名称」「顧客カナ」「メール」の3つの項目をソートキーと指定した例です。
画面表示時は、第一ソートキーで並びます。(この例ではアルファベット降順としています。)
ソートキーに指定した項目は、項目名部分をクリックできます。
図2は電子メール項目をアルファベット昇順ソートに切り替えた例です。
ソートキーは画面ごと、かつ、利用者ごとに記憶されます。利用を終了し、再びログオンすると、最後に指定したソートキーで並び替えられた一覧画面が表示されます。
検索画面で「検索条件のクリア」を行うと、再検索と同時に初期ソート順に戻ります。
下図の顧客モデルを例に説明します。
モデル項目詳細定義を開きます。各項目の「ソート順」という欄に数字を指定します。
数値の前に「マイナス」を指定すると、初期ソートルールが逆順ソートとなります。(「メール」項目)
上の図4,5,6のように複数のソートキーを指定した場合、一覧表示画面の初期表示時は第一ソートキーのみが働くわけではなく、第二以降のソートキーもソート順として反映されます。(後述する SQL の ORDER BY 句に、第一ソートキーから順に列挙されます。)
上の図4,5,6に示した初期設定の昇順/降順にかかわらず、一覧表示画面の列のクリック操作は一度目のクリックで昇順、二度目は降順となります。
ソートはデータベースの SQL 処理 (ORDER BY 句) によって実現しています。
ソートはデータベースの ORDER BY 句によって実現しています。
日本語文字でのソートは、利用者が期待した並びにならないことがあります。これは文化的な並びではなく、文字コード順となるためです。
主キーは必ずソートキーに含まれます。(*1)
主キーがソート項目として指定されていなければ、最も最後のソート条件になります。(order by 句の末尾に付与されます。)
値が "NULL" のソートは、データベースによって扱いが異なります。
R9.0.0からR9.0.2までは、モデル参照項目をソート対象とすることができません。R9.0.3でこの制約が緩和され、参照先モデルが単一キーの場合は "ID値" でソートされるようになりました。ただし参照先モデルが複合キーの場合はソートできません。
参照連動項目が自モデル保存となっている必要があります。
例
クリックするとその項目でソートが行われます。同じ項目をクリックすると、ソート順を反転させることができます。
ソートキーは記憶されます
ソートキーを初期化する
定義方法
ここでは「顧客名称」「顧客カナ」「メール」の3つの項目にソートキーを設定します。
数字の若い順に第一ソートキー、第二ソートキー... と割り当てられます。
複数のソートキーを指定した場合の動作
初期設定についての補足
仕様・制約
そのため、データベースによってルールが変わります。
データベースに保存しない項目はソートキーに指定できません
そのため、データベースに保存しない項目はソートキーとして指定することはできません。
一般的なルール
注意
主キーの扱い
主キーがソート項目として指定されていれば、その設定に従います。
NULL 値のソート
モデル参照項目のソート
モデル参照(参照連動)項目のソート
外部キー関係における子モデル部の表示