みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
はじめまして。
どのようにして計算をしたらよいのか分からずにいます。
ご教授いただけると、大変助かります。
Filemaker Pro 8 を使用しています。
人 薬 日付
A 薬a 2017/3/1
A 薬a 2017/3/2
A 薬a 2017/3/3
A 薬a 2017/3/4 4日間
A 薬a 2017/3/28
A 薬a 2017/3/29
A 薬a 2017/3/30
A 薬a 2017/3/31
A 薬a 2017/4/1 5日間
B 薬c 2017/3/4
上記のような場合に、同じ人、同じ薬の連続投与日数を求めたいと考えています。
理想としては、右に書かれているような、連続投与期間を求めたいです。
よろしくお願いいたします。
Offline
日付フィールドの前日のフィールドを作り、
自己リレーションを
人 = 人
and
薬 = 薬
and
前日 = 日付
として、
連続日数フィールドの計算式
自己リレーション::連続日数 + 1
で求められます。
これを、例で書かれた様に連続が途切れた日だけで表示するには
日付フィールドの翌日のフィールドを作り、
上記と同様にリレーションし(自己リレーション2 とします)、
表示用フィールドの計算式
Case ( not IsValid ( 自己リレーション2::日付 ) ; 連続日数 ; "" )
とすればいいですね。
連続日数フィールドは参照の連鎖になっていますので、
レスポンスに問題が出るようでしたら、
ルックアップでフィールド値として取り込めばいいでしょう。
Offline
現在の対象レコードを対象に集計できる案、
変数計算値の全置換で実装したサンプルです。
●サンプル「連続日数.fp7」→ http://yahoo.jp/box/yoJqNT
Offline
ご返答ありがとうございます。
大変初歩的な質問で恐縮なのですが、
連続日数フィールドの計算式
自己リレーション::連続日数 + 1
連続日数フィールドの計算式を作る際に、「自己リレーション::連続日数」が選択するところに
表示されていないので、どのように作成してよいのか分からずにいます。
なにか勉強するべき方法があるのでしょうか。
Offline
> 自己リレーション::連続日数
この
自己リレーション
はリレーションシップグラフでのテーブル名のことです。
Offline
ご返信ありがとうございます。
「連続日数」というフィールドの計算式の中に、そのフィールド自身の「連続日数」というのフィールドを組み込むことができるのか
そこが分からずにいます。
お手数をおかけして、申し訳ないです。
Offline
自己リレーションは出来ましたか?
出来ていれば、
計算式の指定窓で、フィールド一覧の上の
「現在のテーブル(テーブル名)」
をプレスすると、その自己リレーション先のテーブル名が表示されますから、
それを選択して、
連続日数フィールドを選択します。
ですから、
そのフィールド自身ではなく、他のレコードのフィールドを指定するのです。
Offline
何度もありがとうございます。
自己リレーションはできました。
連続日数の計算式も「自己リレーションテーブル名::連続日数+1」
を組み込むところまでできました。
しかし、表示される結果がすべて「?」となってしまっています。
計算結果を「数字」や「日付」と変更してみましたが、うまくいきませんでした。
すみません、これの解決方法はあるのでしょうか。
Offline
ああ、ごめんなさい。。。
前日のレコードの有無の評価が必要でした。
計算式を
Case ( IsValid ( 自己リレーション::日付 ) ; 自己リレーション::連続日数 + 1 ; 1 )
このように変更してください。
お詫びして訂正をお願いいたします -_-
Offline
ありがとうございます!
解決することができました。
また、大変勉強になりました。
Offline
Pages: 1
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 560.8 KiB (Peak: 579.35 KiB) ]