まさか消費税率区分テーブルが無いってことはないよね?
消費税率変更についていろいろ書いてきましたが、会計システムに対する消費税率変更対応について最も基本的なことを書いていないことに気づきました。消費税率区分テーブルの存在です。
無かったらハードコーディングしている可能性が高い
消費税率区分テーブル。この名前は私が勝手につけた名前ですが、まともな会計システムであればこのテーブルを持っているはずです。どんなテーブルかというと、内容はデータを見てもらった方が早いでしょう。存在するとすれば、中身はこんな内容になっているはずです。
消費税率区分コード | 消費税率区分名称 | 税率 |
---|---|---|
1 | 対象外 | 0 |
2 | 3% | 0.03 |
3 | 5% | 0.05 |
消費税は現在5%ですよね。更に、課税されない場合もあります。また、1997年までは税率が3%でした。なので、素直にやっていれば上記のような内容のデータがあるはずです。もちろん、DBの中身ではなくてソースコードの中のグローバル変数的なもので持っている可能性もあります。それはそれでアリでしょう。
また、税率だけではなく、消費税の種別の区分も必要ですので、そのテーブルも存在するはずです。こんな感じ。
消費税種別区分 | 名称 | 消費税勘定科目コード |
---|---|---|
1 | 対象外 | (null) |
2 | 課税仕入 | 100 |
3 | 非課仕入 | (null) |
4 | 課税売上 | 300 |
5 | 非課売上 | (null) |
上記テーブルは会計に慣れていない方はよくわからないかもしれませんね。まあ、上記の5つの種別があるんだと思って下さい。
で、実際の仕訳をDBに記録する際には、仕訳の貸借それぞれについて、上記の2種類のコードが付与されるのが普通です。
これらのデータが、もし様々なところにハードコーディングされていたら・・・、そのシステムは捨てた方がいいですね。少なくとも半年で対応するのは相当な困難が予想されます。無理やりにでも、勘定奉行とかのパッケージソフトを入れる方が良いです。絶対デスマります。