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

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

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

You are not logged in.

Announcement

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


#1 2016-12-05 11:35:22

netryoma
Member

フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

OS:[ ]FileMaker Ver:[ ]

Offline

#2 2016-12-05 11:53:51

シャチ
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

ん?タイトルだけでの質問?
集計フィールドで 合計 をもとめてみたらわからないのでしょうか?

Offline

#3 2016-12-05 11:55:11

Shin
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

> レコード内すべてのフィールド値が0(ゼロ)どうか判別スクリプト
という事でしょうか。
フィールドを1個ずつ判定していかないと仕方ないです。
場合によっては、全てのフィールドを & で繋いだ計算式を作り、それを IsEmpty() で判定しても良いかも。

Offline

#4 2016-12-05 12:08:09

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

説明の入力不備で申し訳ありません。
Shin様のお書きの通り、”> レコード内すべてのフィールド値が0(ゼロ)どうか判別スクリプトという事でしょうか。” です。
下記のスクリプトでやってみたのですが、上手く出来ません。
If [IsEmpty( Data::フィールド名)≦ 0 ]
   カスタムダイアログを表示 [ "メッセージ";”該当するデータが有りません"]
End IF
宜しくお願いします

Offline

#5 2016-12-05 12:55:16

Hiro
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

・「変数を設定」
      $総計 = Sum(Not IsEmpty(Data::フィールド名1) ; Not IsEmpty(Data::フィールド名2); ・・・・・・・; Not IsEmpty(Data::フィールド名n))
・If [$総計 = 0 ]
・   カスタムダイアログを表示 [ "メッセージ";”該当するデータが有りません"]
・End If

Offline

#6 2016-12-05 13:13:20

チポ
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

0なのか、空なのか・・

IsEmpty
は0では0を返し、
空で1を返します。

フィールド ≠ 0
   (「式内の全フィールドの値が空のとき計算しない」のチェックを外します )
は0でも空でも0を返します。

Offline

#7 2016-12-05 14:19:26

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

Hiro様
丁寧はメール有難うございます。最初の変数設定 Sum……の2行コマンドを入力した際に下記のエラーが発生します。
初心者で変数の入力も初めて行ったのです、何が原因かさっぱり解りません、宜しくお願いします。

「Average、Count、Extend、GetReperition、Max、Min、NPV、StDev、Sum、GetSummary、
またはGetNthRecord関数中でフィールド以外の値を指定できない部分に、式が使わています。」
エラーです。

Offline

#8 2016-12-05 14:36:24

Hiro
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

式中のフィールドは、ご自身の実フィールドを選択欄から選んで置き換えてください。
実際に試した式を提示してもらえますか?

また、>チポさん#6質問への回答もお聞かせください。
式自体が違ってきますから、

Last edited by Hiro (2016-12-05 14:42:43)

Offline

#9 2016-12-05 14:51:01

チポ
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

> 「Average、Count、Extend、GetReperition、Max、Min、NPV、StDev、Sum、GetSummary、
またはGetNthRecord関数中でフィールド以外の値を指定できない部分に、式が使わています。」

これらの関数の引数にはフィールド名しか使えないのですよ。

ですから、もし
Not IsEmpty(Data::フィールド名1)
で判定出来るのでしたら、これら各フィールドの判定の和をとればいいでしょう。


判定したいのが
フィールドが0なのか、
フィールドが空なのか、
そのいずれかなのか、
それを明示しないと正確な式になりませんよ。

Offline

#10 2016-12-05 15:02:05

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

Hiro様
ご面倒をおかけいたします。
下記にコマンドを記入します。
$総計
Sum ( not  IsEmpty ( 用語集::Sfind_n ))
Sfind_nのデータは、検索文字のカウント数字が入っております、例えば、ある本文内に検索文字が2つあれば、2と入っています。無ければ、0です。
宜しくお願いします。

Offline

#11 2016-12-05 15:19:08

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

チポ様
不慣れなため、説明が不足で申し訳ありません。
Sfind_nのデータは、検索文字のカウント数字が入っており、カウントが数字がひとつも無ければの和の判定です。
申し訳ありません。

Offline

#12 2016-12-05 15:24:32

Hiro
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

> チポさん#9
当初、私の記憶でもその点、気になったので、事前に軽く検証してから回答していました。
が、エラーと聞いて、再度動作テストしてみましたが、やはりこちらの環境では問題無いようです。

> netryomaさん#10
フィールドは「用語集::Sfind_n」ただ一つなのですか???
合計するのは、現在のレコード内の全フィールドではなく、
全レコードを対象に「用語集::Sfind_n」だけを、という意味ですか?

Last edited by Hiro (2016-12-05 15:29:18)

Offline

#13 2016-12-05 15:25:37

Shin
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

目的のフィールドが全てカウント数字だけならば、それらのフィールドの単純合計で判断できるのでは。

Offline

#14 2016-12-05 15:49:46

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

Hiro様 Shin様
ド素人で、大変ご迷惑をお掛け致しております。
全レコードを対象に「用語集::Sfind_n」だけです。
変数のダイアログの初めてで、本当に申し訳ありません。

Offline

#15 2016-12-05 17:37:03

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

Hiro様 Shin様 チポ様
大変ご迷惑をお掛け致しました。
解決致しました、有難うございます。

Offline

#16 2016-12-05 17:49:01

Hiro
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

解決したようですが、念のため、

全レコードが対象なら、全レコードを常にヒットするデカルト積[X]の自己リレーションを組み、
その[X]リレーションの関連フィールド「自己リレーションテーブル::Sfind_n」をSum()合計すれば良いです。

・デカルト積[X]の自己リレーションの設定は、
      「用語集::Sfind_n」 X 「用語集 2::Sfind_n」

・合計する式は、
      Sum(用語集 2::Sfind_n」)

・スクリプトは、変数設定は不用となって、
      ・If [ Sum(用語集 2::Sfind_n」) = 0 ]
      ・   カスタムダイアログを表示 [ "メッセージ";”該当するデータが有りません"]
      ・End If

Offline

#17 2016-12-06 10:16:06

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

Hiro様
お世話になっております。
また、丁寧なご説明有難うございます。まだまだ勉強不足で大変勉強になりました。
本当に有難う御座いました。

Offline

#18 2016-12-06 10:40:49

チポ
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

> 「Average、Count、Extend、GetReperition、Max、Min、NPV、StDev、Sum、GetSummary、
またはGetNthRecord関数中でフィールド以外の値を指定できない部分に、式が使わています

FM10で確認したらこの通りでした。

今事情が有って他のバージョンを動かせないのですが、
いつから変わったのでしょう?

Offline

#19 2016-12-06 11:55:01

netryoma
Member

Re: フィールド内すべてのレコード値が0(ゼロ)どうか判別スクリプト

チポ様
お世話になっております。
再度詳しい説明を送って頂き有難うございます。
今後の参考にさせて頂きます。
有難う御座いました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 7 queries executed - Memory usage: 554.48 KiB (Peak: 575.02 KiB) ]