初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2020-07-07 13:30:59

セミ
Member

一定期間の曜日毎の集計

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

#2 2020-07-07 21:04:20

Shin
Member

Re: 一定期間の曜日毎の集計

サンプルファイルを更新しています。
https://www.dropbox.com/s/xil9qc0u4t025 … 2.zip?dl=0
売上集計のレイアウトに組み込んであります。

Offline

#3 2020-07-08 09:23:03

セミ
Member

Re: 一定期間の曜日毎の集計

サンプル、誠にありがどうございます。

特定の顧客ではなく、曜日別の来店人数の合計を出したいと思っています。

私の知識不足だと思いますが、頂いたサンプルで月別人数の合計は出せられませんでした…
(金額の集計値は出ました!)

曜日別は下記のサンプルからの計算式を参照して、変更してみます。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Case ( DayOfWeek ( 来店日[1] ) = Get ( 計算式繰り返し位置番号 ) ; 総計[1] )
ValueCount ( UniqueValues ( 集計顧客_ ) )
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

ありがどうございます。

https://docs.google.com/presentation/d/ … 9da1ae_0_0
(以前、イメージの共有設定ができてなかった事に今気づきました。申し訳ございません。)

Offline

#4 2020-07-08 10:24:17

Chikutaku
Member

Re: 一定期間の曜日毎の集計

自分の場合、カレンダー系のシステムはExecuteSQL で集計出すことが多いです。ExecuteSQLなら別のテーブルで計算できますし、
表示の仕方だけ注意すれば、案外楽にデータ出せます

Offline

#5 2020-07-08 11:14:47

セミ
Member

Re: 一定期間の曜日毎の集計

Chikutaku様、ご回答ありがどうございます!

ファイルメーカーも初心者で、ExecuteSQLについて、全く知識がなく使用すること自体を恐れてました。

ここでExecuteSQLで検索して、他のスレッドから計算してみます。
ExecuteSQLはリレーションとは関係なく、作動するのでしょうか。

Offline

#6 2020-07-08 12:09:57

Chikutaku
Member

Re: 一定期間の曜日毎の集計

リレーションとは関係なく計算できます。
ヘルプ
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

#7 2020-07-08 14:42:07

Shin
Member

Re: 一定期間の曜日毎の集計

月別の人数も集計できていますよ。
ただし、サンプルファイルのデータは来店日が入っていないのでそのままでは表示されませんが。

繰り返しフィールドの区分を、例えば月に変更すると、月ごとの年間比較、も簡単に実行できてしまいます。

Offline

#8 2020-07-08 22:55:45

セミ
Member

Re: 一定期間の曜日毎の集計

Chikutaku様
本当にありがとうございます。
初めて使ってみて、少し時間がかかりましたが、今後いろんな集計に使わせてもらいます!

ExecuteSQL(
"SELECT Count (\"来店ID\")
FROM \"来店実績テーブル\"
WHERE \"曜日\"=? AND \"来店年月\"=?
";
"";
"";
曜日;
来店年月)


Shin様
ご回答ありがどうございます。日頃の回答やサンプルに助けられてます。
本日のサンプルも色々と勉強させてもらいました。
集計機能も真似して作りたいと思います。

Last edited by セミ (2020-07-08 22:56:22)

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.016 seconds, 7 queries executed - Memory usage: 522.09 KiB (Peak: 527 KiB) ]