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

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

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

You are not logged in.

Announcement

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


#1 2020-10-09 16:04:36

Tsuda
Guest

検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

超初心者です。
フィールドを次のように設定するには、どのような方法を取ればよいでしょうか?

-----
毎日サイコロを複数回振って、その数字の目をフィールドAに記録していきます。

その後、期間で検索をした結果で

フィールドAの全ての値が1だった場合
フィールドAの全ての値が2だった場合
フィールドAの全ての値が3だった場合
フィールドAの全ての値が4だった場合
フィールドAの全ての値が5だった場合
フィールドAの全ての値が6だった場合
これらどれかに該当する場合はフィールドBに○を返す

当てはまらなかった場合はフィールドBに×を返す
-----

このような感じです。
よろしくお願いします。

#2 2020-10-09 18:27:32

Shin
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

https://fm-aid.com/bbs2/viewtopic.php?pid=64790#p64790
は、試して見られましたか。
チポさんの案も、とてもスマートです。

Last edited by Shin (2020-10-09 18:29:47)

Offline

#3 2020-10-10 07:57:22

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

回答ありがとうございます。

初心者過ぎて、すべて具体的にどうすれば良いか、分かりませんでした。
申し訳ありません。
よろしければ噛み砕いて解説いただけますでしょうか?

#4 2020-10-10 11:26:45

Shin
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

集計フィールドを作ります。
対象のフィールドはフィールドAで、集計は、一覧にします。
フィールドC は計算フィールドにして、Case ( ValueCount ( UniqueValues ( 集計フィールド ) ) = 1 ; "○" ) という式を設定します。

Last edited by Shin (2020-10-11 07:36:31)

Offline

#5 2020-10-10 14:44:33

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

ありがとうございます。
教えていただいた方法で、集計フィールドを作るところまではいけたんですが、フィールドCの式では何も表示されませんでした。

試しに、Case()を外して、ValueCount ( UniqueVAlues ( 集計フィールド ) ) で式を設定してみると、すべて「3」と表示されました。

どこを直せばよいか、わかりますでしょうか…

#6 2020-10-10 17:25:59

kame
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

Case ( ValueCount ( UniqueValues ( 集計フィールド ) ) = 1 ; "○" ; "×" )

Offline

#7 2020-10-10 20:39:38

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

回答ありがとうございます。

教えていただいたこちらの式
Case ( ValueCount ( UniqueValues ( 集計フィールド ) ) = 1 ; "○" ; "×" )
でやりましたところ、答えがすべて×になりました。

この式中の「集計フィールド」の答えが「1種類×複数」の場合は、「1」とカウントして欲しいのですが、
どうすれば良いでしょうか?

最初の質問のサイコロの例で言うと、
仮に3日間の間に、10件のレコードを追加して、フィールドAの全ての値が「3」だったとして、
検索でその3日間を絞った時、値が「3」の1種類なのでカウントが「1」となり、返す答えが「○」
フィールドAの値に「1」「2」「3」と3種類あった場合、カウントが「3」となり、返す答えが「×」

みたいな感じです。

ややこしくてすみません。
よろしくお願いします。

#8 2020-10-10 21:38:57

kame
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

フィールドBを計算フィールドにしているなら、
全レコードを表示したときなど当然そうなる。
、、、そうではない?

Last edited by kame (2020-10-10 21:42:32)

Offline

#9 2020-10-10 23:04:43

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

回答ありがとうございます。

すみません、わかりません。
何をどう質問していいのかもわかりません。。。

これ以上、教えようがない、とおっしゃられるのであれば、こちらの問題ですので、あきらめて出直したいと思います。

#10 2020-10-11 07:35:40

Shin
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

3が返っている時、該当レコードは、その3日間になっていますか。
集計フィールドの集計対象は、間違ってないですか。
フィールドAの値は、前後にスペースや改行が付いていませんか

https://www.dropbox.com/s/f530y9r8znppg … 2.zip?dl=0

Last edited by Shin (2020-10-13 08:54:29)

Offline

#11 2020-10-12 09:53:46

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

回答ありがとうございます。
説明が不十分ですみません。

先に挙げた例
----
仮に3日間の間に、10件のレコードを追加して、フィールドAの全ての値が「3」だったとして、
検索でその3日間を絞った時、値が「3」の1種類なのでカウントが「1」となり、返す答えが「○」
フィールドAの値に「1」「2」「3」と3種類あった場合、カウントが「3」となり、返す答えが「×」
----
なのですが、これはこのようにしたいという例であり、現状このようになっておりませんので、
「3が返っている時」とおっしゃられましたが、現状3は返っておらず、それで困っているといった状況です。

#12 2020-10-12 10:32:18

Moz
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

仮の話で実際はそうなっていないでは答えの出しようがないのでは?

対象レコードの「フィールドA」の値がすべて同じならば「○」を返し、
異なる値がひとつでもあれば「×」というのが求めている解ではないのですか?

3日間とか「A、B、C」というのは対象を選ぶための一例に過ぎないのでしょう。

違うのならば「仮の例」ではなくて正しい回答例を書かなければいけませんよ。
何に困っているのかもわからないのでは?

Offline

#13 2020-10-12 13:12:19

Shin
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

カウントが「1」なら返す答えが「○」、カウントがそれ以外なら返す答えが「×」なのですか。

Offline

#14 2020-10-12 14:06:30

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

何度も回答ありがとうございます。
問題点を簡素化して部分的に答えを得ようと思って質問したつもりが、返って不正確で紛らわしくしてしまいました。

無駄にお時間を取らせて申し訳ありません。

一度リセットしまして、改めて情報を細かく、正確にして、1から質問させていただきます。


まず以下のようなレコードがあります。

-----
[日付]     [課金] [担当]
2020/09/01 100円 長田
2020/09/01 150円 長田
2020/09/01 120円 長田

2020/09/02 200円 長田

2020/09/03 100円 渡辺
2020/09/03  90円 長田

2020/09/04 130円 伊藤
2020/09/04 210円 伊藤
2020/09/04 110円 伊藤

2020/09/05 100円 渡辺
2020/09/05 150円 渡辺
2020/09/05 150円 渡辺
2020/09/05 150円 渡辺

2020/09/06 320円 伊藤

2020/09/07 120円 長田
2020/09/07 100円 長田

2020/09/08 100円 渡辺
2020/09/08 140円 渡辺
2020/09/08 120円 渡辺

2020/09/09 100円 伊藤

2020/09/10 140円 渡辺
2020/09/10 150円 渡辺
2020/09/10 110円 長田
-----

やりたいことは

①1日ごとの[課金]の合計金額一覧を出して、その1日ごとで、[担当]が1名の場合はその担当名を表示、担当者が複数名いる場合は「入れ替わり」と表示させる

上記の例で言うと以下のような結果
2020/09/01 370円 長田
2020/09/02 200円 長田
2020/09/03 190円 入れ替わり
2020/09/04 450円 伊藤
2020/09/05 550円 渡辺
2020/09/06 320円 伊藤
2020/09/07 220円 長田
2020/09/08 360円 渡辺
2020/09/09 100円 伊藤
2020/09/10 400円 入れ替わり


②検索で期間と[担当]で絞った結果、「入れ替わり」の日を除いた担当ごとの一覧と、その平均を出す

上記の例で言うと「2020/09/01-2020/09/07」「長田」で検索したとき、以下のような結果
2020/09/01 370円 長田
2020/09/02 200円 長田
2020/09/07 220円 長田
-----------------------
平均    263.3



このような形になります。
実現可能でしょうか。

#15 2020-10-13 08:54:05

Shin
Member

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

上の説明と全く別物ですね。

そんなに難しくはないです。説明は、サンプルをみてください。

ポータルでも、ポータルフィルターをコントロールすることで、同じようなことができます。

https://www.dropbox.com/s/qtxxe22xhlg5c … 2.zip?dl=0

Last edited by Shin (2020-10-13 12:34:18)

Offline

#16 2020-10-13 17:06:33

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

ありがとうございます!

ほぼ理想どおりにできました!
本当に助かりました!

最後に一つ質問なのですが、式中に出来る「Is」は、何を表しているのでしょうか?

#17 2020-10-13 17:22:03

Tsuda(質問者)
Guest

Re: 検索した期間で特定フィールドの値がすべて同じだった場合と、そうでない場合で返す値を変える

「Is」に関しては理解しました。Letの変数名ということですね。
shin様 わざわざ作っていただきありがとうございました。

そして、相談に乗って下さったメンバーの皆様ありがとうございました。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 9 queries executed - Memory usage: 559.46 KiB (Peak: 580.37 KiB) ]