2008年11月18日

ファイルメーカーでの集計~中間テーブルのはなし~(3)

3回目です。

前回までは、中間テーブルを作ると、月別顧客売上ランキングや月別営業成績ランキングとか、顧客ごとの月別売上傾向分析、それから在庫管理などが、とっても速くて便利になるという話をしました。

2回目はこちら
http://www.filemaker-dev.com/article/109810175.html

1回目はこちらです。
http://www.filemaker-dev.com/article/109809239.html

今回は、中間テーブルに
「いつ、どうやって、集計用のレコードを作るのか」
って話です。


結論からいうと、いつでもいいんです。

いや、怒らないでくださいね。まじめな話です。
 


いつでもいいということは、つまり、


「実際にシステムが運用される前でもいい」


ということです。
 
  
 
要するに、あらかじめ作っておきましょうということです。


例えば、前回に続いて、顧客別売上ランキングで考えてみましょう。

現在の顧客数が、5000件、年間100件ずつ増加、5年使用する
とすると、最大顧客数が、5500件です。

念のために、10000件と考えておきましょう。

次に、1年は12ヶ月、5年は60ヶ月

となると5年間で必要な集計レコードは、60万レコードです。

それを始めから作っておけばいいということになります。



(上記の考えは、顧客などのマスタに対して、シリアル番号を振って、IDとしている事が前提になります。
顧客番号など変更の可能性のあるものをIDやKEYにすると、難しいですし、別の意味からもオススメしません。シリアルの重要性はまた、次の機会に・・・。)




そんなにレコード数が多かったら、重いんじゃない?

ってことも考えなくはないのですが、月のランキング、何件見たいかと言ったら、せいぜい、100件でしょう。

つまり画面で表示するのは100件だけです。

びっくりするほど重くはなりません。
ポータルを使うなどして、レイアウトを工夫すれば、
なんてことはありません。



もちろん、あらかじめ作ることの出来ないものもあるのですが、その場合は都度、追加します。

よくシステムの流れを見ると、タイミングは必ずあります。

たとえば、顧客マスタから顧客を選択した時など・・・。

スクリプトにIFとIsemptyかIsvalidを使うと出来ます。



〆処理のように一括で作成してもいいのですが、私は好みではありません。

やっぱり全体の数字を見る立場からすれば、即時性が重要ですし、いちいち処理するなんて面倒くさい。ナンセンスだよ。
って思ってしまうものです。


普通に使っているだけで、自然と集計がされていくのが、システムのありかたのように思います。



ブログでは書ききれないのですが、実用にあたっては他にも細かなテクニックがあります。



御社のシステムに上記のような集計分析をつけたいというお客様はぜひ、お問合せください。



あ、それと、一緒にお仕事していただけるパートナー開発者さん、募集しています。
ご興味のある方はぜひ、ご連絡ください。



この記事に関するお問い合わせは、




お気軽にお問合せください。



 
 
次回は、実際に実装したシステムの画面をいくつか紹介します。  
 
posted by riki at 21:18| 開発者日記 | 更新情報をチェックする