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

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

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

You are not logged in.

Announcement

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


#1 2023-08-01 20:13:25

OBAOBA_T
Member

一つのテーブルから2つのフィールドを作りたい

お世話になります。
現在、ファイルメーカーで発注書を作っているのですが、取引先の処理で困っています。
取引先を仕入先と顧客に完全に分かれていたらいいのですが、横のつながりの関係で普段は仕入先の会社が顧客になったり、その逆もあったりします。
ですので、メインのテーブルと別に仕入先も顧客も含めた「取引先リスト」のテーブルを用意し、「取引先ID」にてリレーションをしています。

メインのテーブルには顧客と仕入先のフィールドを用意し、
取引先IDが「001」なら「イロハ商事」となるような感じです。

ここでフィールドが一つなら問題がないのですが、仕入先と顧客の二つのフィールドが必要となります。
それぞれのフィールドに同じ「取引先ID」を入れているので、当然ながら仕入先と顧客の二つのフィールドに同じ値が入るので困っています。

説明が分かりづらくて申し訳ございませんが、一つの別テーブルから2つの別々のフィールドを作るにはどうしたらいいでしょうか?
ご教授のほどよろしくお願いします。

Offline

#2 2023-08-01 20:27:24

himadanee
Guest

Re: 一つのテーブルから2つのフィールドを作りたい

「取引先リスト」のテーブルだけで済むように、まとめてしまうのが一番簡単だと思います。
顧客と仕入先でほとんど同じテーブル定義なのでは?
現状のままテーブルを3つ使うなら、共通の「会社名」などは「取引先リスト」の方にだけ入れて、顧客と仕入先テーブルの方のは使わないようにします。

#3 2023-08-01 20:46:16

OBAOBA_T
Member

Re: 一つのテーブルから2つのフィールドを作りたい

himadaneeさん、ありがとうございます。

最初の説明が分かりにくくて申し訳ございません。
現状は「メイン」と「取引先リスト」の2テーブルです。
「メイン」の中に、「仕入先」と「顧客」のフィールドを入れたいのです。
引き続きよろしくお願いします。

Offline

#4 2023-08-01 23:10:09

Shin
Member

Re: 一つのテーブルから2つのフィールドを作りたい

リレーションマップで、取引先マスターのオカレンスを2個作り、仕入先 と 顧客 のそれぞれからリレーションを張ります。

Offline

#5 2023-08-02 18:09:11

OBAOBA_T
Member

Re: 一つのテーブルから2つのフィールドを作りたい

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

「リレーションマップで、取引先マスターのオカレンスを2個作る」ところまでは分かるのですが、「仕入先 と 顧客 のそれぞれからリレーションを張る」のがわかりません。
おそらく初歩的なことなのだと思うのですが、もう少し詳しく教えていただけますでしょうか。
どうぞよろしくお願いします。

Offline

#6 2023-08-02 21:52:15

Shin
Member

Re: 一つのテーブルから2つのフィールドを作りたい

仕入先ID のフィールドから 取引先マスター のIDフィールドへリレーションします。
顧客ID のフィールドから、もう一つの取引先マスターのIDフィールドにリレーションします。

Offline

#7 2023-08-04 17:29:03

OBAOBA_T
Member

Re: 一つのテーブルから2つのフィールドを作りたい

Shin様
ご回答ありがとうございます。
結果から言うとうまくいきませんでした。

以下に経緯を説明します。
【1】メインの「取引先ID」と「取引先リスト」のテーブルの「取引先ID」をリレーション
【2】メインのテーブルに、「取引先ID」に対応して、顧客フィールドに「取引先リスト」のテーブルの得意先名が表示される。
↑ここまでは今までの状態です。
【3】リレーションマップで取引先マスターのオカレンスをもう一つ作成
【4】メインのテーブルに「仕入先ID」のフィールドを作成
【5】メインのテーブルの「仕入先ID」と「取引先リスト」のテーブルの「取引先ID」をリレーション
以上ですが、結果は同じでした。

メインのテーブルの「仕入先ID」に対して、表示するフィールドが「取引先リスト」のテーブルの得意先名なのが原因だと思うのですが、正直全く分からない状態です。
「取引先リスト」のテーブルに対しても別に「仕入先ID」を用意する必要があるのでしょうか?
説明がややこしくてすいませんが、引き続きご教授お願いします。

Offline

#8 2023-08-04 18:12:45

Shin
Member

Re: 一つのテーブルから2つのフィールドを作りたい

取引先名は、それぞれ別のオカレンスを参照していますか。

Offline

#9 2023-08-04 18:21:25

OBAOBA_T
Member

Re: 一つのテーブルから2つのフィールドを作りたい

Shin様
ご指摘の件ですが、「取引先リスト」をもう一つ用意するということでしょうか?
現在はリレーションシップの画面上にて「テーブルを追加」で「取引先リスト」を追加しています。

Offline

#10 2023-08-04 18:31:01

Shin
Member

Re: 一つのテーブルから2つのフィールドを作りたい

オカレンス名を、取引先リスト と、仕入先リスト lとしておきます。
仕入れ先名は、仕入先リスト::取引先名 を参照します。

Offline

#11 2023-08-04 18:38:56

OBAOBA_T
Member

Re: 一つのテーブルから2つのフィールドを作りたい

Shin様
ありがとうございます、無事解決しました!!
わかりにくい説明に付き合ってくださりありがとうございました!!

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 564.16 KiB (Peak: 579.53 KiB) ]