みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
windows10 ファイルメーカー18です
以前、下記からShin様のサンプル及び回答から勉強させてもらい、サロンの来店人数やお会計金額の集計を行っております。
https://fm-aid.com/bbs2/viewtopic.php?id=10595
現在構成です。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
<カレンダーテーブル>
日付基準(グローバル)
カレンダー日付(計算)Let ( D0 = Date ( Mod ( $$YM ; 12 ) + 1 ; 0 ; Div ( $$YM ; 12 ) ) ; D0 - DayOfWeek( D0 ) + Get( 計算式繰り返し位置番号 )
カレンダー来店(計算)Lookup (来店実績テーブル2::来店数 ) & "名"
<来店実績テーブル>
来店ID
顧客No.
来店日
現金支払額
クレジット支払額
合計金額(計算)現金支払額+クレジット支払額
来店数(計算)Count ( 来店実績テーブル3::来店ID[1] )
曜日(計算) DayNameJ ( 来店日 )
S来店数(計算)Sum ( 来店数)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
質問:曜日ごとの来店人数と金額を集計したいと思います。
(例えば、7月の日曜日に来た人数は現時点で7人)
説明が上手くできず申し訳ありません。
集計は初めてで、ご指摘やご教授いただければと思います。
現在のカレンダーテーブルのレイアウトイメージは下記です。(添付する方法が分からず、リンク残します)
https://docs.google.com/presentation/d/ … sp=sharing
Last edited by セミ (2020-07-07 13:44:35)
Offline
サンプルファイルを更新しています。
https://www.dropbox.com/s/xil9qc0u4t025 … 2.zip?dl=0
売上集計のレイアウトに組み込んであります。
Offline
サンプル、誠にありがどうございます。
特定の顧客ではなく、曜日別の来店人数の合計を出したいと思っています。
私の知識不足だと思いますが、頂いたサンプルで月別人数の合計は出せられませんでした…
(金額の集計値は出ました!)
曜日別は下記のサンプルからの計算式を参照して、変更してみます。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Case ( DayOfWeek ( 来店日[1] ) = Get ( 計算式繰り返し位置番号 ) ; 総計[1] )
ValueCount ( UniqueValues ( 集計顧客_ ) )
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ありがどうございます。
https://docs.google.com/presentation/d/ … 9da1ae_0_0
(以前、イメージの共有設定ができてなかった事に今気づきました。申し訳ございません。)
Offline
自分の場合、カレンダー系のシステムはExecuteSQL で集計出すことが多いです。ExecuteSQLなら別のテーブルで計算できますし、
表示の仕方だけ注意すれば、案外楽にデータ出せます
Offline
Chikutaku様、ご回答ありがどうございます!
ファイルメーカーも初心者で、ExecuteSQLについて、全く知識がなく使用すること自体を恐れてました。
ここでExecuteSQLで検索して、他のスレッドから計算してみます。
ExecuteSQLはリレーションとは関係なく、作動するのでしょうか。
Offline
リレーションとは関係なく計算できます。
ヘルプ
https://fmhelp.filemaker.com/help/18/fm … tesql.html
ExecuteSQL (
"SELECT \"フィールド名\"
FROM\"テーブル名\" " &
"WHERE \"条件\"= ? ";
"" ;
"" ;
"第三引数"
)
自分の作ったファイルは動いているので大体こんな感じかと。
CountとかSumもあるので、調べてみてください。
Let関数と組み合わせれば、上記内容も、もう少し楽に計算できると思います。
単純なCountだけなら
ExecuteSQL (
"SELECT Count ( \"来店ID[1]\" )
FROM \"来店実績テーブル3\"
" ;
"" ;
"" ;
""
)
こんな感じですかね。フィールド名とテーブル名は上記の内容からコピペしただけなので、確認してください。
自分も最初できなくて使うことを諦めてました。けどやってみてできてみたら凄く便利でした。
Offline
月別の人数も集計できていますよ。
ただし、サンプルファイルのデータは来店日が入っていないのでそのままでは表示されませんが。
繰り返しフィールドの区分を、例えば月に変更すると、月ごとの年間比較、も簡単に実行できてしまいます。
Offline
Chikutaku様
本当にありがとうございます。
初めて使ってみて、少し時間がかかりましたが、今後いろんな集計に使わせてもらいます!
ExecuteSQL(
"SELECT Count (\"来店ID\")
FROM \"来店実績テーブル\"
WHERE \"曜日\"=? AND \"来店年月\"=?
";
"";
"";
曜日;
来店年月)
Shin様
ご回答ありがどうございます。日頃の回答やサンプルに助けられてます。
本日のサンプルも色々と勉強させてもらいました。
集計機能も真似して作りたいと思います。
Last edited by セミ (2020-07-08 22:56:22)
Offline
Pages: 1
[ Generated in 0.011 seconds, 9 queries executed - Memory usage: 522.47 KiB (Peak: 527.38 KiB) ]