ここから本文です

Filemakerで、フィールドが空欄になっているレコードの数を表示したい。

fric3tion6さん

2010/10/716:29:44

Filemakerで、フィールドが空欄になっているレコードの数を表示したい。

Filemaker Pro 7を使用しています。
50人くらい顧客のデータ(レコード)のうち、あるフィールド(たとえば入金確認日)が空欄になっているレコードの数を表示したい時はどうすればよいのでしょうか。
Count関数などを考えましたがうまくできません。
よろしくお願いいたします。

この質問は、活躍中のチエリアンに回答をリクエストしました。

閲覧数:
1,936
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

編集あり2010/10/720:28:09

単純に空欄を検索するときは入金確認日フィールドで = だけ入れて検索。

ブラウズ中にダイナミックに集計させるには.....自己リレーションとCount関数の組み合わせという方法【も】あります。
そのときは、入金確認日がEmptyなら1、そうでなければ0という数字扱いのカウント用のフィールドを作っておくと楽(フィールドX)。
顧客テーブルに自己リレーションkeyフィールドを計算フィールドのグローバル保存で式を1で数字として作成。
リレーション画面で顧客データの別名=顧客2テーブルを作り、そこから顧客テーブル間でリレーション。
リレーション式は顧客2テーブルの自己key=顧客テーブルフィールドX。
更に顧客テーブルにカウントフィールドを計算で
コンテキスト=顧客2
Count(顧客::フィールドX)
非保存
として作成で、カウントフィールドをレイアウトに置けばカウントされるでしょう。

入金日フィールドに入力し、フィールドXの値が1から0に変わっても同時にカウントが変わらず、
カウントフィールドにマウスを入れたりウィンドウで隠したりした後に変わるときがあります。
そのときは入金フィールド変化でカウントフィールドを再計算させれば良いので、
カウントフィールドの式を
if(入金確認日;Count(顧客::フィールドX);Count(顧客::フィールドX))
のように強制計算させれば良いかと思います。
最近は再計算させる関数がありますがVer7でどうか判りませんのでこの式を例にしました。

このままでは顧客レコード全部を対象に空欄をカウントするので、
期でカウント対象を区切ったりする場合は自己リレーションにそういう条件を加えて調整します。

質問した人からのコメント

2010/10/14 16:01:38

ありがとうございます。
とても難解ですが、取り組んでみたいと思います。
このたびはありがとうございました。

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

ID/ニックネームを選択し、「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する