帳票個別仕様

Home

📕Arrow icon of a page linkサンエムシステム 上流工程標準(Preview版)

⚖️Arrow icon of a page linkサンエムシステム上流工程 標準規格

📘Arrow icon of a page link要件定義 実践ガイド

📘Arrow icon of a page link基本設計 実践ガイド

📄Arrow icon of a page linkテンプレート集

Get Started

📄Arrow icon of a page link基本設計工程のルール

📄Arrow icon of a page link基本設計書の構成を決める

🚧Arrow icon of a page link基本設計のプロセスモデル

実践ガイド

文書情報
システム方式設計
外部仕様設計
運用設計
インフラ設計
移行計画
テスト方針・計画
開発プロセス・規約
レビュー・承認

帳票個別仕様

各帳票の出力仕様、レイアウト、データ項目、処理フローを明確に定義します。

🎯 概要


  • 目的: 各帳票の出力仕様を明確に定義し、レイアウト、出力項目、データ取得ロジック、生成処理フローを標準化することで、帳票機能の品質を担保し、実装・保守を効率化する
  • スコープ: PDF・Excel・CSV等の出力形式別の仕様、テンプレート管理、データ項目定義、ソート順、処理フローをカバーする。帳票デザインの詳細なビジュアル調整は対象外
  • 推奨する実施タイミング: 画面設計や外部インターフェース設計と並行して、帳票の出力要件が明確になった段階で実施する
  • 関連するステークホルダー: UIデザイナー、アプリケーション開発者、業務担当者、テスト担当者

📥 重要な前提知識・インプット


  • 前提知識: 帳票レイアウトの基本知識、PDF・Excel・CSVの各フォーマット特性、帳票生成ライブラリの理解、データ取得・変換処理の基礎
  • インプット: 業務要件定義書、画面設計書、データベース設計書、帳票レイアウト案(ワイヤーフレームやデザインカンプ)、出力項目一覧、既存帳票仕様(リプレース案件の場合)

📄 成果物の定義


  • ドキュメントテンプレート: 📄Arrow icon of a page link[テンプレ]帳票個別仕様
  • 必須要素: 帳票一覧表、各帳票の個別仕様書(出力形式、レイアウト図またはテンプレートファイル、出力項目定義、ソート順、処理フロー図、形式別固有仕様)
✅ 品質基準・レビュー観点

品質チェックリスト:

チェック項目 チェック内容
出力項目の網羅性 業務要件で必要な全ての項目が定義されているか
レイアウトの実現可能性 各フォーマットの制約内でレイアウトが実現可能か
データ取得方法の明確性 各項目のデータ取得元とロジックが明確か
テンプレートの整備 PDF・Excelテンプレートが適切に管理されているか
パフォーマンス考慮 大量データ出力時の処理方法が定義されているか

👁️‍🗨️ レビュー観点:

  • 業務要件との整合性: 業務担当者が求める出力内容・形式が満たされているか
  • ユーザビリティ: 出力された帳票が見やすく、利用しやすいレイアウトか
  • データ整合性: 出力項目間の整合性(例: 合計値の計算)が保たれているか
  • 保守性: テンプレートやレイアウト変更時の影響範囲が限定的か
  • パフォーマンス: 想定データ量での生成時間が許容範囲内か
🧪成果物のサンプル
# REP-001: ユーザー一覧帳票

## 概要
システムに登録されているユーザーの一覧を出力する帳票。検索条件に基づいてフィルタリングされたユーザー情報を各形式で出力する。

## 出力形式対応
- **PDF**: A4縦、複数ページ対応
- **Excel**: 1シート、データ部は行追加可能
- **CSV**: ヘッダー付き

## レイアウト・テンプレート
- **PDFテンプレート**: [Figma - ユーザー一覧帳票PDF](FigmaデザインのURLを挿入)
- **Excelテンプレート**: `templates/REP001_user_list_template.xlsx`
- **CSVフォーマット**: 下記「出力項目」参照

## 出力項目
| 項目No | 項目名 | データ型 | 桁数 | 備考 |
|-------|-------|---------|------|------|
| 1 | ユーザーID | 文字列 | 10 | - |
| 2 | ユーザー名 | 文字列 | 50 | - |
| 3 | メールアドレス | 文字列 | 255 | - |
| 4 | 権限 | 文字列 | 20 | 管理者/一般ユーザー |
| 5 | ステータス | 文字列 | 10 | 有効/無効 |
| 6 | 登録日 | 日時 | - | YYYY/MM/DD HH:MM |
| 7 | 最終ログイン日時 | 日時 | - | YYYY/MM/DD HH:MM |

## ソート順
1. ユーザーID 昇順

## 処理フロー
```mermaid
sequenceDiagram
    participant U as ユーザー
    participant S as 画面
    participant A as API
    participant D as データベース
    participant R as 帳票生成処理

    U->>S: 帳票出力ボタン押下
    U->>S: 出力形式選択(PDF/Excel/CSV)
    S->>A: 帳票データ取得API呼び出し
    A->>D: ユーザーデータ検索
    D->>A: データ返却
    A->>R: 帳票生成依頼
    R->>R: テンプレート読込
    R->>R: データ埋め込み
    R->>R: ファイル生成
    R->>A: 帳票ファイル返却
    A->>S: ファイルダウンロードURL返却
    S->>U: ファイルダウンロード
```


## PDF固有仕様
| 項目 | 仕様 |
|---|---|
| 用紙サイズ | A4|
| ヘッダー | 「ユーザー一覧」、出力日時、ページ番号 |
| フッター | システム名、出力者名 |
| 1ページあたり行数 | 最大30|
| 改ページ | 30行ごとに自動改ページ |

## Excel固有仕様
| 項目 | 仕様 |
|---|---|
| シート名 | 「ユーザー一覧」 |
| ヘッダー行 | 1行目:タイトル、2行目:出力日時、4行目:項目名 |
| データ開始行 | 5行目 |
| セルスタイル | ヘッダー:背景色グレー、太字 |
| 列幅 | 自動調整 |

## CSV固有仕様
| 項目 | 仕様 |
|---|---|
| ヘッダー行 | あり(1行目) |
| データ開始行 | 2行目 |
| 特殊文字対応 | カンマ、改行を含む場合はダブルクォートで囲む |

---

# REP-002: 月次売上集計帳票

## 概要
月ごとの売上を集計し、部門別・商品別の内訳を出力する帳票。月次バッチ処理で自動生成され、管理者に配信される。

## 出力形式対応
- **PDF**: A4横、複数ページ対応
- **Excel**: 複数シート(サマリー、詳細)

## レイアウト・テンプレート
- **PDFテンプレート**: [Figma - 月次売上集計帳票PDF](https://www.notion.so/Figma%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B3%E3%81%AEURL%E3%82%92%E6%8C%BF%E5%85%A5)
- **Excelテンプレート**: `templates/REP002_monthly_sales_template.xlsx`

## 出力項目(サマリー)
| 項目No | 項目名 | データ型 | 桁数 | 備考 |
|---:|---|---|---:|---|
| 1 | 対象年月 | 文字列 | 7 | YYYY/MM形式 |
| 2 | 総売上金額 | 数値 | - | 円、カンマ区切り |
| 3 | 前月比 | 数値 | - | %、小数点以下1|
| 4 | 前年同月比 | 数値 | - | %、小数点以下1|
| 5 | 取引件数 | 数値 | - ||

## 出力項目(部門別詳細)
| 項目No | 項目名 | データ型 | 桁数 | 備考 |
|---:|---|---|---:|---|
| 1 | 部門コード | 文字列 | 10 | - |
| 2 | 部門名 | 文字列 | 50 | - |
| 3 | 売上金額 | 数値 | - | 円、カンマ区切り |
| 4 | 構成比 | 数値 | - | %、小数点以下1|
| 5 | 取引件数 | 数値 | - ||

## 処理フロー
```mermaid
flowchart TD
	A[月次バッチ起動] --> B[対象年月取得]
	B --> C[売上データ集計]
	C --> D[部門別集計]
	D --> E[商品別集計]
	E --> F[前月・前年データ取得]
	F --> G[比較計算]
	G --> H{出力形式選択}
	H -->|PDF| I[PDFテンプレート読込]
	H -->|Excel| J[Excelテンプレート読込]
	I --> K[データ埋め込み]
	J --> K
	K --> L[ファイル生成]
	L --> M[ファイルサーバー保存]
	M --> N[管理者へメール通知]
	N --> O[処理完了]
```

## PDF固有仕様
| 項目 | 仕様 |
|---|---|
| 用紙サイズ | A4|
| ページ構成 | 1ページ目:サマリー、2ページ目以降:部門別・商品別詳細 |
| グラフ | 売上推移グラフ、部門別円グラフを含む |
| ヘッダー | 「月次売上集計表」、対象年月、出力日時 |

## Excel固有仕様
| 項目 | 仕様 |
|---|---|
| シート構成 | シート1:サマリー、シート2:部門別、シート3:商品別 |
| グラフ | サマリーシートに売上推移グラフを埋め込み |
| 数式 | 構成比は数式で算出 |
| 条件付き書式 | 前月比・前年同月比がマイナスの場合は赤字表示 |

---

# REP-003: 取引履歴帳票

## 概要
指定期間の取引履歴をCSV形式で出力する帳票。データ分析や他システム連携に使用される。

## 出力形式対応
- **CSV**: ヘッダー付き

## 出力項目
| 項目No | 項目名 | データ型 | 桁数 | 備考 |
|---:|---|---|---:|---|
| 1 | 取引ID | 文字列 | 20 | - |
| 2 | 取引日時 | 日時 | - | YYYY/MM/DD HH:MM:SS |
| 3 | 顧客ID | 文字列 | 10 | - |
| 4 | 顧客名 | 文字列 | 100 | - |
| 5 | 商品コード | 文字列 | 15 | - |
| 6 | 商品名 | 文字列 | 100 | - |
| 7 | 数量 | 数値 | - | - |
| 8 | 単価 | 数値 | - ||
| 9 | 金額 | 数値 | - ||
| 10 | 支払方法 | 文字列 | 20 | 現金/クレジット/その他 |
| 11 | ステータス | 文字列 | 20 | 完了/キャンセル/返品 |

## ソート順
1. 取引日時 昇順
2. 取引ID 昇順

## 処理フロー
```mermaid
sequenceDiagram
    participant U as ユーザー
    participant S as 画面
    participant A as API
    participant D as データベース
    participant F as ファイル生成

    U ->> S: 期間指定
    U ->> S: CSV出力ボタン押下

    S ->> A: 取引履歴取得API呼び出し
    A ->> D: 取引データ検索
    D ->> A: データ返却(最大10万件)

    alt データ件数 > 10万件
        A ->> S: 警告メッセージ返却
        S ->> U: 「期間を短縮してください」表示
    else データ件数 ≤ 10万件
        A ->> F: CSV生成依頼
        F ->> F: CSV形式変換
        F ->> A: CSVファイル返却
        A ->> S: ダウンロードURL返却
        S ->> U: ファイルダウンロード
    end
```

## CSV固有仕様
| 項目 | 仕様 |
|---|---|
| 最大出力件数 | 100,000|
| 件数超過時の対応 | エラーメッセージ表示、期間短縮を促す |
| 特殊文字エスケープ | カンマ、ダブルクォート、改行を含む場合は適切にエスケープ |

---

## 帳票仕様記載のガイドライン
各帳票の個別仕様を記載する際は、以下のテンプレートを使用する:

### 帳票仕様テンプレート
```markdown
# REP-XXX: [帳票名]

## 概要
[帳票の目的と用途を簡潔に記述]

## 出力形式対応
- **PDF**: [用紙サイズ、ページ構成]
- **Excel**: [シート構成]
- **CSV**: [特記事項]

## レイアウト・テンプレート
- **PDFテンプレート**: [Figmaリンク]
- **Excelテンプレート**: [ファイルパス]
- **CSVフォーマット**: [参照先]

## 出力項目
| 項目No | 項目名 | データ型 | 桁数 | 備考 |
|-------|-------|---------|------|------|
| [記載] | [記載] | [記載] | [記載] | [記載] |

## ソート順
[ソート条件を記載]

## 処理フロー
[Mermaidフロー図またはシーケンス図で記載]

## PDF固有仕様(該当する場合)
| 項目 | 仕様 |
|-----|------|
| [記載] | [記載] |

## Excel固有仕様(該当する場合)
| 項目 | 仕様 |
|-----|------|
| [記載] | [記載] |

## CSV固有仕様(該当する場合)
| 項目 | 仕様 |
|-----|------|
| [記載] | [記載] |

```
---

## 備考
- 帳票テンプレートファイル(PDF用Figmaデザイン、Excel用テンプレート)は別途管理し、本仕様書にはリンク・パスを記載する
- テンプレート変更時は最新版に更新し、バージョン管理を行う
- 新規帳票追加時は帳票一覧にも追記する

🔄 設計の進め方・プロセス


🏗️ プロセス1: 帳票一覧の作成と優先順位付け

設計対象:

システムで必要な全ての帳票を洗い出し、帳票ID、帳票名、用途、出力形式、優先度を一覧化する。

具体例:

  • どのような帳票が必要か(ユーザー一覧、売上集計、取引履歴など)
  • 各帳票の出力タイミング(オンデマンド / バッチ自動生成)
  • 対応する出力形式(PDF / Excel / CSV)
  • 実装優先度(必須 / 推奨 / オプション)

設計原則:

  • 業務要件との対応: 業務フロー上で必要な帳票を漏れなく特定する
  • 出力形式の適切性: 用途に応じて最適な形式を選択(閲覧用はPDF、加工用はExcel、データ連携用はCSV)
  • 重複の排除: 類似した帳票は統合し、パラメータやフィルタで対応できないか検討する
  • 実装コストの考慮: 優先度を明確にし、MVP(最小実装)で必須の帳票を絞り込む

文書化の推奨表現:

  • 帳票一覧表の作成: 帳票ID、帳票名、出力形式、用途、優先度、備考を一覧表で整理する
  • 出力タイミングの明記: オンデマンド出力かバッチ自動生成かを区別する
  • 関連画面・機能の記載: どの画面・機能から帳票出力が呼び出されるかを明記する
🏗️ プロセス2: レイアウト設計とテンプレート作成

設計対象:

各帳票のレイアウトを設計し、PDF用のデザインカンプやExcel用のテンプレートファイルを作成する。

具体例:

  • PDF: Figmaやデザインツールでレイアウトを作成し、ヘッダー・フッター・本文の配置を決定
  • Excel: テンプレートファイル(.xlsx)を作成し、シート構成・セルスタイル・数式を定義
  • CSV: ヘッダー行の項目名と順序を定義

設計原則:

  • 視認性の確保: 情報が読みやすく、重要な項目が目立つレイアウトにする
  • フォーマット制約の理解: 各形式の制約(PDFの改ページ、Excelの列幅、CSVの特殊文字エスケープ)を考慮する
  • テンプレートの再利用性: 共通ヘッダー・フッターは部品化し、複数帳票で再利用できるようにする
  • バージョン管理: テンプレートファイルはGitやファイルサーバーで適切に管理し、変更履歴を残す

文書化の推奨表現:

  • レイアウト図の添付: PDFレイアウトはFigmaリンクやスクリーンショットで示す
  • テンプレートファイルのパス: Excelテンプレートの保存先パスを明記する
  • ページ構成の説明: ヘッダー・フッター・本文・グラフの配置ルールを記述する
🏗️ プロセス3: 出力項目とデータ取得の定義

設計対象:

帳票に出力する項目を定義し、各項目のデータ取得元・変換ロジック・ソート順を明確にする。

具体例:

  • 出力項目一覧(項目No、項目名、データ型、桁数、備考)を表形式で整理
  • 各項目のデータ取得元(テーブル名・カラム名)を特定
  • データ変換ロジック(日時フォーマット、金額カンマ区切り、ステータス名称変換など)を定義
  • ソート順・集計条件を明記

設計原則:

  • データ整合性の確保: データベース設計書と照合し、取得可能な項目のみを定義する
  • 変換ロジックの明確化: フォーマット変換や計算ロジックを曖昧にせず、具体例を示す
  • パフォーマンス考慮: 大量データ出力時のデータ取得方法(ページング、インデックス利用)を検討する

文書化の推奨表現:

  • 出力項目一覧表: 項目No、項目名、データ型、桁数、データ取得元、変換ロジック、備考を記載
  • SQLクエリのサンプル: 複雑なデータ取得の場合はSQLクエリ例を提示する
  • ソート順の明記: 優先度付きでソート条件を記述する
🏗️ プロセス4: 処理フローの設計

設計対象:

帳票生成の処理フローを設計し、画面操作からファイル生成・ダウンロードまでの一連の流れを定義する。

具体例:

  • ユーザーが帳票出力ボタンを押下 → API呼び出し → データ取得 → テンプレート読込 → データ埋め込み → ファイル生成 → ダウンロードURL返却
  • バッチ自動生成の場合: スケジュール起動 → データ集計 → ファイル生成 → ファイルサーバー保存 → メール通知

設計原則:

  • 非同期処理の検討: 生成に時間がかかる帳票は非同期処理とし、完了通知を行う
  • エラーハンドリング: データ取得エラー、テンプレート読込失敗、ファイル生成失敗時の対応を定義
  • リトライ・タイムアウト: 外部システム連携がある場合はリトライ・タイムアウト設定を検討

文書化の推奨表現:

  • フロー図の作成: Mermaidでシーケンス図またはフローチャートを作成し、処理の流れを可視化する
  • エラー分岐の明記: 正常系だけでなく異常系の処理フローも記載する
  • タイミング図の提示: バッチ処理の場合は実行タイミング・頻度を明記する
🏗️ プロセス5: 形式別固有仕様の定義

設計対象:

PDF・Excel・CSV各形式固有の仕様(用紙サイズ、シート構成、エスケープルールなど)を定義する。

具体例:

  • PDF: 用紙サイズ(A4縦/横)、ヘッダー・フッター内容、1ページあたり行数、改ページルール、グラフ・画像の配置
  • Excel: シート構成、ヘッダー行・データ開始行、セルスタイル、列幅、数式、条件付き書式、グラフ
  • CSV: ヘッダー行の有無、最大出力件数、特殊文字エスケープルール、文字コード

設計原則:

  • フォーマット標準の遵守: 各形式の標準仕様(RFC4180など)に準拠する
  • 互換性の確保: Excel形式は主要なバージョンで開けることを確認する
  • データ量制限の明記: CSV出力の最大件数など、制限事項を明確にする

文書化の推奨表現:

  • 形式別仕様表: PDF固有仕様、Excel固有仕様、CSV固有仕様を表形式で整理する
  • サンプルファイルの提示: 実際の出力イメージをサンプルファイルで示す
  • 制限事項の記載: 各形式の技術的制約や運用上の制限を明記する

🚨 よくある失敗と予防策


🚧 実例収集後、追記予定

📚 参考資料・関連リンク


  • 参考文献: 『PDFリファレンス』、RFC4180(CSVフォーマット標準)、Excel互換性ガイドライン
  • 関連する他のガイド: 画面設計ガイド、データベース設計ガイド、API設計ガイド、バッチ処理設計ガイド
  • ツール・テンプレート: Figma(PDFレイアウト設計)、Excel(テンプレート作成)、Mermaid(処理フロー図)、帳票生成ライブラリ(Apache POI、iText、jsPDFなど)

テンプレートサイト: 📄Arrow icon of a page linkテンプレート集