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

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

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

You are not logged in.

Announcement

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


#1 2014-07-06 09:49:17

した
Guest

関連フィールでポータルを作る方法

以下の前提で質問させて下さい。

■実績データー

年  月  項目  金額       属性
15      4      パン  1000  洋食
15      4      お米     2000  和食
16      2      お米     2500  和食
16      3      パン  1200  洋食
16      3      お米  2200  和食

■属性テーブル

項目 属性
パン 洋食
お米 和食

■集計ポータル

年と属性でリレーション

  15年で和食分をリスト化
   年  月  項目  金額       属性
    15      4      お米     2000  和食

上記の「集計ポータル」の様に集計が出来ます。
この場合、実績データの属性に値として「洋食」や「和食」が入力されている必要があります。

困っているのは、
この属性を「属性テーブル」との関連レコードで持たせている場合です。
フィールド定義では、「非保存」と表示され、索引もできず
当然集計ポータルに表示させる事が出来ません。これは理解出来ています。
が。。。

出来る様にしたいのです。

これが出来れば、属性テーブルで、洋食の値を和食にかえると、一気に実績データの属性の値を変える事ができ便利です。
今は、再ルックアップで対応していますが、
データが多くなると時間がかかり困っています。
何か、良い方法はないでしょうか?

よろしくお願いします。

#2 2014-07-06 13:24:17

旅人
Member

Re: 関連フィールでポータルを作る方法

>属性テーブルで、洋食の値を和食にかえると
そもそもこれを変えることの意味がわからない。

Offline

#3 2014-07-07 10:56:25

した
Guest

Re: 関連フィールでポータルを作る方法

意味といいますと?

例がよくなかったかもしれません。。

機能的に、この様な事をしたいのですが、難しいでしょうか?

#4 2014-07-07 11:18:01

sorter
Guest

Re: 関連フィールでポータルを作る方法

意味はわからないけど、ポータルフィルタにすれば簡単です。
非保存で集計したいということなんで、実用的な性能かどうかは、データ量によるでしょう。

読み直したら
「再ルックアップで対応していますが、データが多くなると時間がかかり」
て書いてますね。それだとどうやっても無理な気がしますが。
変更した属性だけを再ルックアップしてますか?
年で絞り込んだ分だけを再ルックアップ相当の計算することになるんで、そこで十分少なくなればポータルフィルタでOKかもしれない...

#5 2014-07-07 11:22:30

Layouter
Guest

Re: 関連フィールでポータルを作る方法

集計ポータルに項目の値一覧 List(属性::項目)を作って、年とそれをリレーションにすればいいのでは。

#6 2014-07-07 15:08:15

した
Guest

Re: 関連フィールでポータルを作る方法

値一覧 List(属性::項目)では、非保存ですので、ポータルが組めるでしょうか?
理解が間違っている様な気もしますので、もう少し詳しく教えて頂けないでしょうか?

例が悪かったので例を変えます。

事業はお弁当の宅配事業です。
県内を10人の宅配担当者が毎日商品を顧客に届けています。
事業は順調で、顧客が増えて行き、配達担当者と配達区域や担当顧客が頻繁に変わります。
その為、代金回収の管理が問題になっています。

未収金になっている顧客は管理出来ますが、配達担当者毎に未収金になっている顧客を抽出したいのです。

顧客名、担当者、未収金額が書かれたDBを元に、
各担当者毎に未収金分をリスト化しています。

しかい、担当顧客が変わる為に、未収金DBの担当者を頻繁に変える必要があるのです。
これは再ルックアップしていますがその作業を省きたいのです。
担当者が変われば、自動的に未収金DBの担当者も変えたいのです。
データーが無限に増える為、再ルックアップしていると将来大変な時間がかかる事も恐れています。

よろしくお願いします。

#7 2014-07-07 15:43:07

Layouter
Guest

Re: 関連フィールでポータルを作る方法

>データーが無限に増える為、再ルックアップしていると将来
未収金のだけ再ルックアップすればいいのでは。

非保存は参照側なので問題ありません。

>顧客名、担当者、未収金額が書かれたDBを元に
ちょっと違うでしょう。
顧客テーブル
顧客 担当者
売上(請求?)テーブル
日付 顧客 金額 未収 集計用に年月
集計テーブル
年月 担当者

集計::担当者=顧客::担当者 のリレーションで集計テーブルに 顧客達「List(顧客::顧客)」を作る
集計::年月=売上::年月 AND 集計::顧客達=売上::顧客 のリレーションでポータル表示
未収もリレーション条件に入れるか、ポータルフィルタにする。

#8 2014-07-07 16:26:41

した
Guest

Re: 関連フィールでポータルを作る方法

ありがとうございます。試してみます。

#9 2014-07-07 18:08:42

チポ
Member

Re: 関連フィールでポータルを作る方法

ファイル構造・運用法が分りませんが。。


顧客テーブルで、
顧客の担当者が変わるたびに、
その担当者を書き換えるのはいかがなものでしょう。

変更の日付を持たせて、新規レコードとするのが普通でしょう。

顧客テーブルが、顧客ごとのマスタになるのなら、
これは別のテーブルになりますね。


また、
1売上ごとに集金するのと、
月ぎめのような、集計後の集金とでもその扱いが変わるのでは。

Offline

#10 2014-07-07 20:49:55

した
Guest

Re: 関連フィールでポータルを作る方法

もう少し具体的に書きます。

以下の様なDBがあったとします。

■顧客DB
顧客名 担当者
  山田  田中
  斉藤  田中
  田辺  田中
  近藤  山下
  木下  山下
  橋本  山下


■未収金DB
顧客名 未収金額  日付 担当者
  山田  1000円  2月  田中
  斉藤  1200円  3月  田中
  田辺   800円 3月  田中
  近藤  1300円  3月  山下
  木下  700円  3月  山下
  橋本  800円  2月  山下

これを、担当者別で集計させると以下の様になります。

■未収金管理表
・担当者 田中
   顧客名 未収金額 日付
    山田  1000円  2月
    斉藤  1200円  3月
    田辺  800円  3月
・担当者 山下
    近藤  1300円  3月
    木下  700円   3月
    橋本  800円   2月
            ・・・・・・・・・・

この時
顧客DBを以下の様に変えたとき

■顧客DB
顧客名 担当者
  山田  山下
  斉藤  山下
  田辺  田中
  近藤  山下
  木下  山下
  橋本  山下

自動的に以下の様な集計画面を作りたいのです。

・担当者 田中
   顧客名 未収金額 日付
    田辺  800円  3月

・担当者 山下
    山田  1000円  2月
    斉藤  1200円  3月
    近藤  1300円  3月
    木下  700円  3月
    橋本  800円  2月

理由は、お金を回収する責任は、
販売した担当ではなく、現時点の顧客担当が集金義務をおわせているからです。

よろしくお願いします。

#11 2014-07-08 09:22:38

チポ
Member

Re: 関連フィールでポータルを作る方法

未収金管理表テーブルを1担当者ごとに1レコードとして、
顧客DBの担当者とリレーションします。

このリレーションを使い、未収金管理表で、
List関数で
担当する顧客のリストが得られます。

このリストと、未収金DBの顧客とでリレーションし、
未収金管理表のレイアウトにこのリレーションのポータルを置けば、
担当者ごとの未収金顧客のリストが表示できます。


前にも書きましたが、
顧客DBの、担当者の書き換えは考えた方がいいと思いますよ。

Offline

#12 2014-07-08 10:09:22

Shin
Member

Re: 関連フィールでポータルを作る方法

未収金テーブルの顧客名と、担当者テーブルの顧客名をリレーションして、未収金テーブルの中で、担当者テーブル::担当者 をキーとして集計するだけで良いのでは。
未収金テーブルの担当者を書き換える必要は有りませんよ。

Offline

#13 2014-07-08 19:07:04

した
Guest

Re: 関連フィールでポータルを作る方法

チボさん
なるほど、ありがとうございます。試してみます。

顧客DBには、顧客IDをキーにして契約書や営業日報が紐づいていて、営業担当が変わったからといって顧客IDを作る事が出来ないんです。
私の作り方に問題があるのかもしれないですね。。。

Shinさん
>未収金テーブルの中で、担当者テーブル::担当者 をキーとして集計するだけで良いのでは。
これは、未収金テーブルの中に、関連フィールドとして、担当者テーブルを設置してリレーションを組むという事でしょうか?
非保存になって出来ないと思ってました。
試してみます。
ありがとうございます。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 551.55 KiB (Peak: 572.09 KiB) ]