みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FMP13です。
現在ある老人ホームの管理DBを作ってます。
居室一覧表として、居室番号、氏名、家族氏名、連絡先をリスト形式で作ろうと思っています。
顧客マスタテーブルに居室番号、名前があり、顧客1人に付き一つのIDを割り振っています。またこのテーブルには入居日、退居日、入居状況(入居もしくは退居)のフィールドがあり、現在入居中かどうかを入力しています。
家族連絡先マスタテーブルでIDで家族の連絡先を各IDに付き最大3レコード作成しています。それぞれをIDでリレーションしております。
居室でリストを作りたいので、別テーブルとして居室管理テーブルを作り、居室番号フィールドを作成して、現在ある居室数のレコードを作成しました。(具体的には36部屋なので36レコード作成)
顧客マスタテーブルの居室番号と居室管理テーブルの居室番号とをリレーションしました。
新しいレイアウトに居室管理テーブルを指定してリスト形式で表示して、居室番号に対応した氏名を表示させるのに計算フィールド(以下:名前表示フィールド)を作って、計算式に「If(顧客マスタ::入居状況="入居";顧客マスタ::氏名)」と入力し顧客マスタから名前を表示させました。
ところが、問題が2つ
①まず、顧客管理テーブルで居室番号が重複するレコードがある場合(マンションの入れ替えをイメージしてください)、若いIDから判定される為、若いIDが退居であれば、現在入居中の顧客の名前が名前表示フィールドにはなにも表示されません。
これを、現在入居している顧客氏名を表示させるにはどのようにすればいいでしょうか?
②その顧客の家族の連絡先をポータルで表示したいのですが、試しに計算フィールドで「If(顧客マスタ::入居状況="入居";家族連絡先マスタ::氏名)」としてみましたが、0とフィールドには表示されました。
これも同じく現在入居している顧客の家族を表示させたいです。
皆様のお力お貸しいただければと存じます。
Offline
居室管理テーブルにグローバルフィールドを作って「入居」と入れておいて
これと入居状況、居室番号と居室番号の両方で照合したらいいのでは?
Offline
顧客マスタテーブルの居室番号と居室管理テーブルの居室番号とのリレーションで、入居日で降べきにソートしましょう。
Offline
>>#2
ありがとうございます。
両方で照合とはどのような形で実現できますか?
>>#3
ありがとうございます。
リレーションのソートで氏名表示フィールドは現在入居している氏名が表示されました。
ところが、ポータルを作成して家族連絡先を取得すると、若いIDの家族情報が表示されます。
氏名表示されてるレコードの家族表示にはどのようにできますか?
Offline
色々考えて、居室管理テーブルにIDフィールドを計算フィールドで作成し、顧客マスタテーブルのIDフィールドを居室番号のリレーションから取得して居室管理テーブルのIDと家族連絡先テーブルをリレーションすることで、無事ポータルに現在入居している顧客の家族情報を表示できました。
ちなみに
>>顧客マスタテーブルの居室番号と居室管理テーブルの居室番号とのリレーションで、入居日で降べきにソートしましょう。
を参考に、居室番号を入居日で降順にソート、居室管理テーブルのIDと家族連絡先テーブルのIDのリレーションは家族連絡先IDを降順でソートしました。
ありがとうございました。
Offline
Pages: 1
[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 510.67 KiB (Peak: 517.78 KiB) ]