みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもお世話になっています。
Win7 FMPro13使用してます。
テーブルA(レイアウトA) リレーション テーブルB(レイアウトB)
フィールドa(患者ID) = フィールドd(患者ID)
フィールドb(対応開始日) フィールドe(対応日)
フィールドc(対応終了日)
上記のようにテーブル、フィールドを作成。
レイアウトAからレイアウトBに変更する際にスクリプトを使用してレイアウトBの
フィールドa かつ フィールドb から フィールドc まで
のレコードを検索したいと考えています。
どのようにスクリプトを組んだらいいのでしょうか?
わかりにくい書き方をしてしまって申し訳ないですが回答宜しくお願いします。
その複合条件で別リレーションを作って関連レコード移動するボタンを作る?
Traveller様
回答ありがとうございます。
他にやり方等ございますか?
何で他のやり方が必要なの?
tim様
ほかのやり方が必要なわけではなくて、他にやり方があるかどうかを聞いたんですが…
Traveller様の方法しかないならその方法で行いますし、それ以外にもあるならそれも検討してみたいというだけなのですが、いけなかったでしょうか?
フィールドb(対応開始日) > フィールドe(対応日) を除外
フィールドc(対応終了日) < フィールドe(対応日) を除外
という検索する
リレーション条件だと、終了日が空白の時などの処理が面倒
Offline
Shin様
回答ありがとうございます。
実際にスクリプトを組むとしたらどのように行えばいいのでしょうか?
別にいけなくはないけど、一番簡単と思われる方法を提示されてるんで、それをやってみれば普通はそれで満足するはずだけど、と思っただけです。
何かその方法ではうまくいかない追加条件があったのかな、とか。
tim様
お返事ありがとうございます。
正直なところ、まだ初心者で勉強不足なもので、リレーションで行うよりスクリプトで行ったほうが個人的にとっつきやすいのです。
あと、見解を広める意味でも様々なやり方を知りたいというものもあります。
お世話になっている身分で厚かましいとは思っていますが、これからもご教授よろしくお願いします。
Shinさんのは難しいかも知れないので
bとcがグローバル日付ということでしたら
変数を設定 名前$ID 値 A::患者ID
レイアウト切り替え Bに
検索モードに切り替え 一時停止しない
フィールド設定 B::d を $IDに
フィールド設定 B::e を A::b & " ... " & A::c
スクリプト一時停止
検索実行
Traveller様
回答ありがとうございます。
bとcはグローバル日付にはしておりません。
その場合はどこを変更したらいいのでしょうか?
変数を設定 名前$ID 値 A::患者ID
変数を設定 名前$期間 値 A::b & "..." & A::c
レイアウト切り替え Bに
検索モードに切り替え 一時停止しない
フィールド設定 B::d を $IDに
フィールド設定 B::e を $期間に
スクリプト一時停止
検索実行
Traveller様
無事に作成できました。
ありがとうございました。
あっちにも質問してる・・・cが空白の時は
変数を設定 名前 $期間 値 A::b & "..." & Case ( IsEmpty (A::c ); Get ( 日付 ); A::c)
以前の質問を掘り出して申し訳ありません。
#12のTraveller様の回答(スクリプトA)で目的とした検索はできるようになりました。
この検索方法を利用して新たにレコード作成のスクリプト(スクリプトB)を作成しようと思い、
変数を設定 名前$ID 値 A::患者ID
変数を設定 名前$期間 値 A::b & "..." & A::c
レイアウト切り替え Bに
検索モードに切り替え 一時停止しない
フィールド設定 B::d を $IDに
フィールド設定 B::e を $期間に
スクリプト一時停止
検索実行
新規レコード
フィールド設定 B::d を$IDに
としたところこれはうまくいきました。
ところが、スクリプトBでレコードを作成した後にスクリプトAで検索をかけるとスクリプトBで作成したレコードが検索されなくなってしまいました。
どなたか原因と対処法等わかるかたあるでしょうか?
回答宜しくお願いします。
お騒がせしてすいません。
自己解決しました。
Pages: 1
[ Generated in 0.008 seconds, 10 queries executed - Memory usage: 568.46 KiB (Peak: 585 KiB) ]