みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
はじめまして。環境はFMP12、Windows11です。
場合によって2つのレイアウトのどちらかを引用することはできますでしょうか。初心者のため説明も難しいですが、以下詳細です。
「個人情報」「Aデータ」「Bデータ」「報告書」という4つのテーブルを作成しています。
「Aデータ」「Bデータ」はそれぞれ「個人情報」のテーブルと "個人番号” というフィールドでリレーションシップを結んでいます。
"個人番号"は「Aデータ」「Bデータ」で重複しません。
最終的に、「報告書」に "個人番号" を入力すると、 番号に応じて「Aデータ」「Bデータ」どちらかからデータを引用できるようにレイアウトをデザインしたいのですが、うまいやり方がわからず困っています。
「報告書A」「報告書B」と2つ作成し、それぞれ「Aデータ」「Bデータ」とリレーションシップを結べば簡単なのでしょうが、「報告書」のレイアウトは1つにしたいのです。
そのような関数または機能などあるのでしょうか。ご教授お願いします。
「報告書」のテーブルオカレンスが1つの場合、「Aデータ」「Bデータ」とリレーションシップを結べないことは分かったので、テーブルオカレンスは「報告書1」「報告書2」としています。
まず、
> 「報告書」のテーブルオカレンスが1つの場合、
> 「Aデータ」「Bデータ」とリレーションシップを結べないことは分かったので、
> テーブルオカレンスは「報告書1」「報告書2」としています。
これは間違いです。
報告書のTOを一つにして、
AかB、どちらかのTOをもう一つ作ります。
リレーションで参照する側をデフォルト、される側を複製、
そうしないとそうしないといろいろ面倒になりますよ。
で、方法の一例は、
報告書で計算フィールドを作り、計算式
Case ( IsValid ( A::フィールドa) ; A::フィールドa ; B::フィールドa )
とすればいいでしょう。
そもそも、
AとB二つのテーブルに分けるのが面倒の元なんだと思いますよ。
Offline
チポ様
ご回答ありがとうございます。
テーブルオカレンス部分を訂正し、思った通りに動作してくれるようになりました!
本当に助かりました。感謝申し上げます。
そもそもの話もおっしゃる通りなのですが、「Aデータ」と「Bデータ」は最終的に導かれる結論は類似するものの過程が全く異なり、
同じレイアウトにまとめると扱いづらいとのことで分かれておりまして...
勉強を続けていかないとですね、がんばります!
> 同じレイアウトにまとめると扱いづらい
レイアウトに配置するフィールドは自由に選択できます。
一つのテーブルで、Aのレイアウト、Bのレイアウト
とすれば現状と全く同じに見えるでしょう。
Offline
Pages: 1
[ Generated in 0.004 seconds, 9 queries executed - Memory usage: 507.97 KiB (Peak: 514.61 KiB) ]