# 共通ドキュメント

## 帳票

### 概要

- 設定
- AbstractReport
- Reportクラス
- Printer
- XlsCreator

### 設定

- 使用するプリンター
- 帳票生成のための一時ディレクトリ
- 帳票保存のための名称

### AbstractReport

帳票出力の基本操作を定義する。

#### 機能

Create | 帳票を生成する。出力先は実装が決定する。
Save | 保存処理。
SaveAs | 保存処理

### Reportクラス

特定帳票のためのReportクラスを実装する。

#### 必要な要素

- 帳票出力先( Printer | XlsCreator | 他の帳票生成ツール)
- ドメインモデル

#### 注意

保存処理が不要な場合、AbstractReport#Save,SaveAsを実装し例外送出。

似てるからっていろんな処理を混ぜるな

### Printer

物理的帳票出力先。

#### 機能

- 使用できるプリンターの一覧
- 用紙姿設定
- 文字列出力
- 画像出力？
- 出力位置設定
- 罫線など

#### 生成

...

#### 出力

...

#### 注意

...

### XlsCreator

Excel生成、PDF生成

#### 機能

#### 注意

...

### ExcelWrapper

Excel生成

#### 機能

...

#### 注意

...