« 「オーバースペック」でコストが下がる話 | トップページ | 少人数開発と「能力プール」 »

2006.09.24

明細集計処理と富豪的システム設計

 近々公開予定の「CONNCEPTWARE/販売管理」をちょっとだけ紹介したい。想定している企業としては、商品を海外から輸入して国内の顧客に販売するという専門卸売業である。そのような業態の企業は日本では多いし開発案件としても多いので、業務知識を学ぶための教材としては効率的といえる。

 とはいえ、外貨建てで仕入れた商品を在庫管理することになると、その在庫金額評価手順はなかなか複雑である。ある月の外貨建ての仕入を円換算するための為替レートは翌月初になるまで決まらないからだ。ここらへんは典型的な業務要件なので、業務システムを扱うソフト技術者ならじっくりと理解しておきたいところだ。

 まず業務知識の基本として書き添えておくと、在庫管理システムは在庫数量だけでなく在庫金額も管理しなくてはいけない。ある商品が入荷したとき、棚卸資産としていくら分増えていくら分減ったのかを押さえておかないと、期末の会計報告ができない。それだけでなく、出荷時にその商品がもともといくらで仕入されたものなのかがわからないと粗利(売上額-仕入額)がわからない。単品管理できないほどにこまごまとしていて、しかも仕入のたびに仕入価格が変わるような商品であれば、在庫金額をしっかり押さえることは簡単ではない。しかも、仕入が外貨建てでされるとなれば話はもっとややこしくなる。なにしろ月中では、円換算して在庫金額を捉えるために必要な為替レートが確定しないのだから。

 これに対処する方法として典型的なのは、月中では前月レートや標準レートなどで仮に仕入計上しておいて、その月向けのレートが確定した時点でまとめて洗い替えするやり方である。これだけなら簡単そうに聞こえるが、けっこう複雑な処理でざっと次のような手順を含む(ここでは総平均法の在庫評価基準を想定している)。

1.外貨建ての仕入明細を抽出して規定の確定レートで円換算する
2.入庫分の受払明細を商品毎に抽出して、仕入入庫分については1の金額を適用する
3.商品の月初在庫金額に月間の入庫総額を加算して月間の平均入庫単価を算出する
4.月間の出庫明細に平均入庫単価を払出単価として適用する

 実際はこれらに月次サマリーの加減計算や赤黒処理が関係するのでもっと複雑なのだが、月次サマリーの集計処理についてはちょっと思うところがある。

 従来の発想であれば、取引明細の差分額にもとづいて月次サマリーを加減処理するような仕様にしてしまいそうなものだが、筆者としては「スクラッチ集計式」にしたいと考えている。つまり、会計上どうしてもそれより過去の取引明細をいじれないタイミング(販売管理システムのデータを会計システムに渡した月)以降のすべての取引明細にもとづいて、必要な月次サマリーデータを毎回ゼロから集計するのである。つまり、チマチマした差分処理なんてやらずに、コンピュータにがんばって全件全額集計してもらうわけだ。

 なぜそれが都合がいいかというと、販売管理システムの仕様がシンプルで保守しやすい形にまとまるからだ。コンピュータにとってヘビーであっても、仕様上単純なものとしてまとまるのであればそれで良しと判断できることもあるという話だ。コンピュータの性能については、いまや零細企業であっても「大富豪」な時代だ。システムの保守性を高めるために「富豪的プログラミング(前回エントリーのコメント参照)」ならぬ「富豪的システム設計」の視点も欲しい。

|

« 「オーバースペック」でコストが下がる話 | トップページ | 少人数開発と「能力プール」 »

コメント

 会計の世界で、俗に大福帳方式と呼ばれるやりかたですね>サマリー
 年次決算まではどれだけ赤黒が発生してもびくともしない方式です。私も大好きです。

 本当の富豪なら、在庫も大福帳方式でやりたいところですが流石に無茶でしょうねぇ。10年後はそれが主流になってるかも知れません。

投稿: HAT | 2006.09.26 02:42

HATさん

> 本当の富豪なら、在庫も大福帳方式でやりたいところ
> ですが流石に無茶でしょうねぇ。10年後はそれが主流
> になってるかも知れません。

オンメモリーDBが登場したからには、そういうやり方が
通用する時代は近いと思いますね。そこらへんはいろいろ
と思うところがあるのでエントリーとしてまとめてみたい
と思います。

それにしても、上記のやり方を「大福帳方式」と呼ぶ
のだとは知りませんでした。なんとなく、雑多な取引を
ひとつのテーブルにごちゃ混ぜに登録するようなやり方の
ことだと思ってました(^^;

投稿: わたなべ | 2006.09.28 21:45

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: 明細集計処理と富豪的システム設計:

« 「オーバースペック」でコストが下がる話 | トップページ | 少人数開発と「能力プール」 »