みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもありがとうございます。
患者リストに特定条件の日付の検査結果を表示させたいとおもいます。
Win8、FileMaker Pro Advanced 14 の環境です。
テーブル「患者リスト」
フィールド ID(数字)、治療日(日付)、検査A採取日(計算:日付)、検査A結果(計算:数字)
テーブル「検査A」
フィールド ID(数字)、採取日(日付)、結果(数字)
治療日の7日以上前で一番治療日に近い日に採取した結果を「検査A結果」に表示させたいとします。
「患者リスト」と「患者リスト_検査A」を ID=ID、(治療日-7)>採取日 でリレーションし、
検査A採取日は Max(検査A:採取日)で確定、
「患者リスト」と「検査Aコピー」を ID=ID、検査A採取日=採取日 でリレーションして
検査A結果を 患者リスト_検査Aコピー:結果 で確定しています。
リレーションを2つ組まなくても良い方法がありますでしょうか?
よろしくお願いします。
Offline
ID=ID、(治療日-7)>採取日
のリレーションで検査テーブル側を採取日の降順ソートしておくと
検査A::採取日
検査A::結果
の二つの関連フィールドを患者リストに置くだけで出ます。
Offline
旅人さん
ありがとうございました。
なるほど、そうですね!
最大値か最小値なら、リレーションの条件次第でソートだけで大丈夫ですね。
ただ、ファイルごと人に渡すのでソートを崩されると、結果が変わってしまうのが怖いです。
値が確定する方法で何か手はないでしょうか?
一度エクスポートして、計算フィールドではない状態でインポートしてやればいいのですが
勉強の為に、もしほかに方法がありましたら教えてください。
検査の種類が多いので、私が最初に書いた方法だと
ファイルが大変重くなってしまうと思うので・・・。
Offline
リレーションの設定でその照合順を指定できます。
それがソート指定で、レコードのソートとは無関係ですよ。
Offline
チポ さん
リレーションでソート順を指定するんですね。
その機能を使ったことがありませんでした。
不勉強でお恥ずかしいです。
旅人さん、チポさんありがとうございました。
Offline
Pages: 1
[ Generated in 0.004 seconds, 9 queries executed - Memory usage: 509.23 KiB (Peak: 516.2 KiB) ]