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

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

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

You are not logged in.

Announcement

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


#1 2016-08-29 05:19:57

mar118
Member

期間で検索して合計を表示

お世話になります。

(名簿)
  名簿ID|氏名|住 所|Sum ( 買物明細::単価 )|
000001|鈴木|東京都|       6000    |
000002|山田|埼玉県|       9000    |
000003|佐藤|千葉県|       1000    |

(買物明細)
  商品ID|名簿ID |商品名 |日付|単価  |合計  |  名簿::名簿ID  |
000001|000001|住 所|8/10|2000|6000|    鈴木    |
000002|000001|住 所|7/10|1000|6000|    鈴木    |
000003|000001|住 所|3/10|3000|6000|    鈴木    |
000004|000002|住 所|1/10|6000|9000|    山田    |
000005|000002|住 所|3/10|3000|9000|    山田    |
000006|000003|住 所|5/10|1000|1000|    佐藤    |

上のような名簿とその買物明細があります。
名簿IDでリレーションし、現在、上のようなリストを表示しています。
この状態から、期間で検索し、下のようなリストを表示したいと思います。

3/1...7/31
  名簿ID| 合計| 名簿ID |
000001|4000| 鈴木 |
000002|3000| 山田 |
000003|1000| 佐藤 |

このような場合、
1)Sum ( 買物明細::単価 )に期間を与える方法
2)買物明細でIDが重複するレコードを非表示に方法
どちらの方法をとるべきなのでしょうか?
また、書き方も分かりません。※変数やソートは分かります。

考え方と方法について、お知恵をお貸しください。
宜しくお願い致します。

Offline

#2 2016-08-29 09:23:10

旅人
Member

Re: 期間で検索して合計を表示

まず最初にやってみるのは集計レイアウトですかね。
買物明細テーブルで合計の合計という集計フィールドを作る。
同じテーブルに新規レイアウトを作って、パートは名簿IDをソート対象とする
小計パートだけにして、ここに名簿IDと集計フィールドを置く。
買物明細テーブルで期間で検索して、名簿IDでソート
今作ったレイアウトに切り替えて、リスト表示にする。

Offline

#3 2016-08-29 10:48:53

チポ
Member

Re: 期間で検索して合計を表示

> 1)Sum ( 買物明細::単価 )に期間を与える方法
これへの回答です。

名簿テーブルで日付フィールド・グローバルを二つ作り、
期間開始日
期間終了日
として、集計期間の初日と最終日を入力します。

リレーション
         名簿         買物明細
         名簿ID   =   名簿ID
   and
    期間開始日 <=  日付
   and
    期間終了日 >= 日付

これで、名簿IDごとの指定期間の集計ができます。


FMの集計は、
旅人さんの集計レイアウトを使う方法と
リレーションを使う方法
主にこの二つです。

試してみて使い勝手がいい方を選択すればいいでしょう。

Offline

#4 2016-08-30 00:19:01

mar118
Member

Re: 期間で検索して合計を表示

旅人様、チポ様

返信遅くなり失礼しました。
小計パートの存在に気づけず、時間が掛かってしまいましたが、
両方の方法で、目的のレイアウトを得ること出来ました。
かなり目からウロコです。
こちらの方のご助言には、毎度感謝しております。
ありがとうございます。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.031 seconds, 9 queries executed - Memory usage: 509.52 KiB (Peak: 516.51 KiB) ]