みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
以前、Ver.6を多少触っていましたが、この度Ver.14で下記の事をやりたいと思ってます。
個人のテーブルには配達商品、配達曜日、配達本数が登録されており、それを月テーブルの1から31の繰り返しフィールドに飛び込ませたいのです。
月ごとに計算をさせて1〜月末までの日にちと曜日をカレンダーとして表示させているのですが、その下に商品欄を作り(1〜31)、個人のテーブルの指定曜日の枠に指定本数を飛び込ませたいのですが、とっかかりが掴めず、困っています。なにとぞご教授いただけたらと思うのですが、計算式として長くなってしまってここでのご教授が難しいのであれば、考え方としての流れ(しくみ)だけでも教えて頂けると幸いです。
なにとぞ宜しくお願いいたします。
Offline
日付を照合キーとしたリレーションで取り込むのが基本ですが、
1レコード内にカレンダー31日分を同時取り込みするためには
日別31本のリレーションを組む必要が生じます。
それを1本だけのリレーションで済ませるアイデアが、ルックアップ
機能を利用する方法です。
複数の照合キーを1つの繰り返しフィールドに格納して、その日付照合
リレーションでルックアップすると日付ごとの対応値が個々に取得できます。
更にルックアップ機能の関数版のLookup関数を利用すると更新の自動制御
やルックアップ値をさらに2次加工するなど機能拡張が可能に成ります。
「カレンダ」とか「クロス集計」、「Lookup集計」などをキーに過去ログを
検索してもらえば、適用サンプルも沢山見つかると思います。
Last edited by Hiro (2016-02-24 13:54:27)
Offline
早速のお返事ありがとうございます。まだ未熟で、読ませて頂いたお返事内容の理解に及ばないのですが、まずは教えて頂いた検索用のキーワードで早速調べさせて頂きます。どう検索すれば参考資料が探せるのかも悩んでいたので、とっかかりができて大変嬉しく思います。ありがとうございます!勉強します!!
Offline
単に表示するだけならば、カレンダー側を工夫すれば超簡単かと思います。
個人テーブル側で、7繰り返しフィールドを作り、Case ( Get ( 計算式繰り返し位置番号 ) = 曜日[1] ; 本数[1] ) というフィールドを用意しておきます。
カレンダー側を、日曜日から表示するように持ち替えておけば、上のテーブルとリレーションさせ、上のフィールドを何個か表示するだけですみますね。
https://www.dropbox.com/s/zf55axzftpyiz … 7.zip?dl=0
その後利用をどうするか、で全くファイル設計が変わると思います。とくに、そのデータを展開してその日の配達一覧を作る、とか、月ごとの配達本数を集計し請求書を作る、などがあれば、そちらも書かれたらいいと思います。
Last edited by Shin (2016-02-25 12:32:24)
Offline
お返事ありがとうございます!!
そうなんです、そこから請求書も作りますし、一度飛び込ませた後に修正もあるので、修正した結果も含め、常にリアルタイムの合計本数も表示させ、金額も計算させるのですが、それだとまた仕組みが変わってくるでしょうか?
Offline
それだと、繰り返しフィールドで行なわないで、配達1回1レコードとなるテーブルを作った方が良いですよ。
入力は、カレンダーとかクロス集計とかで検索すれば、たくさん出ています。
簡単なサンプル
https://www.dropbox.com/s/zf55axzftpyiz … 7.zip?dl=0
Last edited by Shin (2016-02-25 18:49:59)
Offline
ありがとうございます!1レコードのテーブルなんですね?1レコードの中に1商品につき31個のフィールドを作るのとは違うんですよね?実はバージョン6を最近まで利用していて14のテーブルに慣れていないのもあるのですが、たとえば今の1商品につき31個のフィールドだと逆に不都合がでてくる可能性はありますでしょうか?
Offline
それはデータベースというのはレコードを基礎単位に設計されているからです。
検索・ソート・集計など全てのデータベース処理はレコード単位で行われます。
Offline
shinさん、サンプルありがとうございました!すごく参考になりそうです。自宅でPC開くのが遅れまして確認とお礼遅れてすいませんです。。。
Offline
Pages: 1
[ Generated in 0.018 seconds, 10 queries executed - Memory usage: 524.7 KiB (Peak: 529.6 KiB) ]