業務システムで最も表示回数が多い画面は、ほぼ例外なく一覧画面です。ここが1秒速くなれば、システム全体の体感が変わります。
一覧画面の標準構成
- 画面タイトル・パンくず
- 検索条件(折りたたみ可能。ただし主要条件は常時表示)
- 操作バー(新規作成・一括操作・CSV出力・表示件数)
- 件数表示(「1,248件中 1〜50件を表示」)
- 一覧本体(ヘッダー行は固定)
- ページャー
この並びを全一覧画面で統一するだけで、操作の迷いは大きく減ります。
検索条件の設計
主要条件は常に見せる
すべての条件を折りたたむと、毎回開く操作が発生します。使用頻度の高い2〜4条件は常時表示し、それ以外を「詳細条件」に格納します。
条件は必ず保持する
- 詳細画面から戻ったとき、条件・並び順・ページ位置が復元される
- ブラウザの再読み込みでも条件が消えない(条件をURLに載せる)
- 条件をURLに載せると、条件付きURLを同僚に共有できる
- 「条件をクリア」ボタンを明示的に用意する
- よく使う条件の組み合わせを保存できるとなお良い
検索条件をURLのクエリパラメータで表現しておくと、共有・ブックマーク・戻る操作・別タブ表示がすべて自然に動くようになります。実装コストに対して効果が非常に大きい設計判断です。
検索の実行タイミング
即時検索(入力するたびに結果が更新される)は、件数が少ない場合には快適ですが、業務システムの数万件規模ではサーバー負荷と誤操作の原因になります。明示的な検索ボタン+Enterキーでの実行を基本とし、即時検索は補助的に使うのが安全です。
列設計のルール
| データ種別 | 揃え | 書式 |
|---|---|---|
| コード・ID | 左揃え | 等幅フォント推奨 |
| 名称・テキスト | 左揃え | 長い場合は省略記号+ツールチップ |
| 数値・金額 | 右揃え | 3桁区切り。単位は列見出しに(例:金額(円)) |
| 日付・日時 | 左揃え | YYYY/MM/DD で固定。相対表記は使わない |
| ステータス | 中央または左 | バッジ表示。色+文言 |
| 操作 | 右端固定 | アイコンのみは避け、文言を添える |
「3日前」のような相対日付表記は、業務システムでは避けてください。証跡として日付そのものが必要であり、締め日との前後関係を数える作業が発生します。
列の並び順
左から「識別 → 分類 → 内容 → 数値 → 状態 → 日付 → 操作」の順が、多くの業務で自然に読めます。利用者が横スクロールせずに判断できる範囲(左から6〜8列)に、判断に必要な情報を収めてください。
列幅と省略
- キー列(伝票番号・氏名)は横スクロール時に左端固定
- 長いテキストは折り返さず省略し、ホバーで全文表示
- 列幅をユーザーが調整でき、次回も保持されると満足度が高い
- 表示列の選択(列の表示・非表示)を用意すると、部署ごとの要望を吸収できる
ソートの標準
- 初期の並び順は「更新日時の降順」など、業務上の優先順に合わせる
- どの列でソート中かを矢印アイコンで明示する
- ソートはサーバー側で全件に対して行う(表示中のページ内だけの並べ替えは誤解を生む)
- 複数列ソートは、必要な業務でのみ提供する
ページングの方式
| 方式 | 向いている場面 | 業務システムでの評価 |
|---|---|---|
| ページ番号 | 件数が多く、位置を把握したい | ◎ 標準。何ページ目かが分かり、戻れる |
| 「もっと見る」 | 閲覧主体のコンテンツ | △ 位置が分からず、戻ると先頭に戻る |
| 無限スクロール | SNS・フィード | ✕ 業務では避ける。フッターに到達できない |
表示件数は 20 / 50 / 100 の3択が扱いやすく、選択値をユーザーごとに保持します。1,000件表示のような選択肢は、性能事故の原因になるため提供しないほうが無難です。
0件・エラー時の表示
空のテーブルだけが表示され、検索が実行されたのかも分からない。
「条件に一致する受注は0件でした。期間を広げるか、取引先の条件を外してお試しください。」+条件クリアボタン。
初回表示(まだ検索していない状態)と、検索した結果0件の状態は、必ず区別して表示してください。
一括操作の安全設計
複数行を選択して一括処理する機能は、事故が起きたときの影響が大きい機能です。
選択状態を明示する
「12件を選択中」と常に表示します。ページをまたぐ選択がある場合は「全ページで48件を選択中」と区別します。
実行前に対象件数を確認させる
確認ダイアログには「12件の受注を承認します。よろしいですか?」と件数と操作名を必ず含めます。
部分的な失敗を正しく報告する
「12件中10件成功、2件失敗」と結果を分けて表示し、失敗分の理由と再実行手段を提示します。全部まとめて「失敗しました」で終わらせないでください。
ヘッダーのチェックボックスが「表示中の50件」を選ぶのか「該当する全1,248件」を選ぶのかは、必ず明示してください。この曖昧さは重大な誤操作につながります。
CSV出力
- 出力対象は「現在の検索条件に一致する全件」か「選択行」かを選ばせる
- 文字コードとBOMの扱いを決めておく(Excelで開く前提ならUTF-8 BOM付き)
- 件数が多い場合は非同期処理にし、完了を通知する
- 出力した列と画面の列を一致させる
チェックポイント
- 検索条件がURLに載っており、戻る・共有・再読み込みで消えない
- 数値が右揃え、日付が固定書式で統一されている
- ヘッダー行とキー列が固定されている
- 0件時に次の行動を促す文言が出る
- 一括操作の対象件数が実行前に明示される
- ページングはページ番号方式で、表示件数が保持される