- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
# ファイルの書式
<!--
SPDX-License-Identifier: AGPL-3.0-only
Copyright 2025 Shota FUJI
This program is free software: you can redistribute it and/or modify it under the terms
of the GNU Affero General Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along
with this program. If not, see <http://www.gnu.org/licenses/>.
-->
集計を開始すると、 Yamori は取り込む対象のフォルダ配下のファイルを全て読み込み、一つのデータベースにまとめます。
これにより、ファイル内に最低限必要な情報さえ入力されていれば自由なフォルダ構成にすることができます。


## 利用可能なファイルフォーマット
現在 Yamori でサポートされているファイルフォーマットは以下のとおりです。
- CSV (`.csv` 拡張子)
- TSV (`.tsv` 拡張子)
将来的にサポートが予定されているファイルフォーマットは以下となります。
- Excel ワークブック (`.xlsx`, `.xlsm` 拡張子)
- 旧 Excel ワークブック (`.xls` 拡張子)
- JSON (`.json` 拡張子)
## ファイルの種類
ファイルには勤怠の記録をつける「勤怠記録」と、社員の情報をひとまとめに管理する「社員マスタ」の 2 種類があります。
### 勤怠記録
勤怠記録は社員の出勤や欠勤といった「勤怠区分」の日付ごとのデータです。
- [社員 ID](#社員-id)
- [日付](#日付)
- [勤怠区分](#勤怠区分)
#### 社員 ID
社員を一意に識別する文字列です。
必ず必要となり、入力されていない場合はその行は無視されます。
社員番号などの実際の ID や、ランダムな数字 (例: `A001~A999`)、ハンドルネームなど一意性が確保される限り何を使っても問題ありません。
!!! warning "注意"
Excel などのアプリケーションを使う場合、数値のみの ID を使うと自動書式といった機能の対象になってしまう場合があります。
アルファベットを先頭につける (例: `X1`, `A25`)、名前を後ろにつける (例: `1-tanaka`) など数値として認識されない ID をつけることを推奨します。
#### 日付
この行の記録がいつのものなのかを表す日付です。
必ず必要となり、入力されていない場合はその行は無視されます。
サポートされる書式は以下となります (サンプルは共通して 2025年 10月 3日) 。
- `YYYY-MM-DD` (`2025-10-03`)
- `YYYY/MM/DD` (`2025/10/03`)
- `YYYY/M/D` (`2025/10/3`)
日付は全て Yamori を実行しているコンピュータのタイムゾーンで計算されます。
時間を扱わないため異なるタイムゾーンで実行しても同じ結果となります。
#### 勤怠区分
実際の勤務予定に対する実績・結果です。
出勤率計算式は以下となります。
```
出勤率 = 出勤日数 / (出勤日数 + 欠勤日数)
```
##### 出勤
年次有給休暇付与の際の出勤率計算時に「出勤した」とみなします。
以下の文字列は全て出勤として扱われます。
- 出勤
- 出
- 勤
##### 欠勤
年次有給休暇付与の際の出勤率計算時に「出勤していない」とみなします。
以下の文字列は全て欠勤として扱われます。
- 欠勤
- 欠
##### 公休
年次有給休暇付与の際の出勤率計算に含めません。
以下の文字列は全て公休として扱われます。
- 公休
- 公
- 休日
- 休
##### 年次有給休暇
以下の文字列は全て年次有給休暇として扱われます。
- 年次有給休暇
- 年休
- 有給休暇
- 有休
- 有給
- 有
##### 特別休暇
法定休暇・休業や特別休暇といった「出勤した」とみなす休日です。
以下の文字列は全て特別休暇として扱われます。
- 特別休暇
- 法定休暇
- 法定休業
- 特
#### サンプル
| 社員 ID | 日付 | 勤怠区分 |
| ------- | ---------- | -------- |
| A01 | 2025-07-01 | 出勤 |
| A01 | 2025-07-02 | 出勤 |
| A01 | 2025-07-03 | 欠 |
| A01 | 2025-07-04 | 年休 |
| A01 | 2025-07-05 | 公休 |
| A01 | 2025-07-06 | 公休 |
| A01 | 2025-07-07 | 出 |
| ... | ... | ... |
### 社員マスタ
#### 社員 ID
社員を一意に識別する文字列です。
勤怠記録とマスタデータを紐づけるために必要となります。
詳細は[勤怠区分の説明](#社員-id)を参照してください。
#### 名前
社員の表示名です。未指定の場合は社員 ID がそのまま表示されます。
#### 年次有給休暇初回付与日
書式は[日付](#日付)と同様です。