• ベストアンサー

ファイルメーカーで…

WINのファイルメーカーpro6を使用して特殊なリレーショナル機能を使用したいのですが、どうやっても一つのIDでしか対照になってくれません。どうやったら2つのIDでリレーション出来るのでしょうか? 説明がヘタで申し訳ありません。 例を乗せてみます。 ファイルA 1.店番号ID 2.契約番号 3.契約の名称 4.契約者の名前  レコード1   レコード2   レコード3 1. 0001     0001     0002 2. 1001     1002     1001 3. 松契約   竹契約    梅契約 4. Aさん    Bさん     Cさん   で、ファイルBにて、 店番号 と 契約番号 を入力すると、(店番号と契約番号は常に1件のみです) 契約の名称と契約者の名前が自動で出力ができ、(リレーショナル機能で?) 追加項目が出来るようにする。 こんな感じです。 ※ちなみにデータが多いので別ファイルが条件です。 以上 回答よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

No.1のhimajin1さんが言うように、 Aファイルにまずは計算フィールドで、 フィールド名:合算ID 計算式:店番号ID&'_'契約番号 計算結果:テキスト でフィールドを作ります。 次にBファイルにも、店番号IDと、契約番号フィールドを作ります。 次に計算フィールドで、 フィールド名:合算ID 計算式:店番号ID&'_'契約番号 計算結果:テキスト 次に、リレーションをAファイルとBファイルの合算IDフィールドで同士で結びます。 次に、Bファイルに、 フィールド名:契約者の名称 タイプ:テキストフィールド オプションで、ルックアップにチェックし、合算IDを選んで、Aファイルの契約の名称を指定する。 契約者の名前フィールドを、上記と同様に作成する。 Bファイルのレイアウトに、 店番号ID 契約番号 契約の名称 契約者の名前 4つのフィールドを設置。(合算IDはレイアウト上になくても支障ないです) まず、店番号ID入力、次に契約番号入力が終わると、名称と名前にAファイルから一致したデータを呼び込みます。 こんな感じでどうでしょう?

master9999
質問者

お礼

わかりやすい回答ありがとうございます。 理屈はとてもわかりました。早速やってみたところ、なんかエラーが出て出来なかったのです…。 最初は店番号IDをリレーションで別ファイルから、 行っていたのでうまくいきませんでした。 色々考えたら、索引設定の設定が出来なかったのです。 そこで店番号IDをリレーションにしていない店名にしたら出来ました。 計算式:店名 & "_" & 契約番号 『店名_0001』と言う様に数字だけじゃなく日本語+数字でもリレーションって出来るんですね。 とても参考になり感謝いたします。ありがとうございます。

その他の回答 (1)

  • himajin1
  • ベストアンサー率43% (184/422)
回答No.1

ファイルA,ファイルB 共に 1.店番号ID 2.契約番号 フィールドが有るわけですね。 両方に、計算フィールド「合算ID」を作成しましょう。 計算式は、   契約番号+店番号*100000 とかで、良いでしょう。 この、合算IDでリレーションしましょう。

master9999
質問者

お礼

ご回答ありがとうございます。 合算IDを作ることによって出来ました!!!! 応用をきかせば 他にも色々な事が出来そうなので、 今ファイルメーカーが楽しいです。 ありがとうございました。