みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
Excelから2つのデータ群をインポートするときに、1対多の関係でインポートしたいです
まず、1群を追加したあと、その中の、あるレコードを親として表示しているポータルのなかに
2群インポートする、というようなことはできますか?
Excelの時点で、ファイルメーカーのシリアル値などを入力すればできるのかもしれませんが、
さすがに面倒というか、非現実的な気がしますし、間違いにより、リレーションがおかしくなりそうです
さすがに2段階にわけないとできないような気がするのですが、よいアイデアはありますか?
Offline
テーブルを2個作ります。1群を入れるテーブルにはシリアル番号を自動で赤テイするフィールドを作り、2群のテーブルには数値フィールドをつくり、それらをリレーションしておきます。
1群をインポートしたあと、レコードを特定し、そのシリアル番号を変数に保存、2群をインポートしたら、数値フィールドを変数(1群のシリアル番号)で全置換します。
Offline
1群(日付データなど基礎情報がある)を伝票として2群が詳細になるようにして
一日を、1伝票としてインポートしたいときなどは、なかなか大変そうですね
Offline
明細側でもっているデータによっては、もっと簡単に設定できます。
Offline
一つ目のExcelファイルには
日付 商品名 納期
1/1 AAA 2/1
1/2 AAA 2/2
1/3 AAA 2/3
※商品名などはコードですが、質問文をわかりやすくするために
文字列にしています。今のところインポートで追加する商品名はひとつだけです
といった形式で入っていて、二つ目には
日付 個数
1/1 100
1/1 200
1/1 100
1/2 400
と入っています。これを、インポートして、
日付 商品名 を親の伝票テーブル、二つ目のExcelファイルの内、
同じ日付のものを子テーブルに追加したいです
【伝票】 ←1対多になる→ 【詳細】
日付 商品名 納期 個数
1/1 AAA 2/1 100
200
100
Last edited by pyape (2018-02-03 01:31:50)
Offline
同じ日付でいいのでしたら、単に両方をそれぞれのテーブルにインポートして、日付でリレーションしておくだけです。
それをポータルで表示させればいいですね。
Offline
インポートするだけならそれでも問題ないのかもしれませんが
ファイルメーカー上のレイアウトで
伝票番号でリレーションして1対多で入力することもあります
日付でリレーションすると日付を主キーとすることになるんですよね?
Offline
条件の後出しは困ります、根本から話が変わりますよ。
日付と伝票番号が 1:1 ならば、日付がリレーションのキーでも何の問題もありません。
Offline
わかりにくくてすみません
根本としては
Excelから2つのデータ群をインポートするときに、1対多の関係でインポートしたいです
まず、1群を追加したあと、その中の、あるレコードを親として表示しているポータルのなかに
2群インポートする、というようなことはできますか?
です
1群が伝票テーブル(親)、2群が詳細テーブル(子)
一般的にみなさんがされているような形(親と子を伝票番号でリレーションしてポータルで入力)で入力したのと
同じ結果になるようにインポート(日付を元に親子関係をつくる)したい、
という意味で書いていましたが、伝わりにくくてご迷惑をおかけしました
Offline
独立して作成されている2個の伝票データを統合したい、ということでしょうか。
Excel からインポートされるデータは日付のみで紐付いていて、伝票番号はFMでもつけない、という事ですか。
FM で入力されているデータにも日付は付いているはずですので、その条件ならば、紐付ける事は非常に難しいです。
また、リレーションのキーが複数になると、同じポータルでの表示はちょっと無理でしょう。別レイアウトにするか、ポータルを2個並べてどちらかに表示させる、という事になります。または、Virtual list の考え方を持って来れば、どちらも表示できますが、明細の追加が面倒ですね。
Last edited by Shin (2018-02-03 18:02:52)
Offline
文字ではうまく説明する能力がないみたいなので、画像を作成しました
お手数ですが、リンク先の画像をみてください
Offline
画像を見るとインポートされたレコードに、新しく伝票IDというフィールドが追加されていますが、また運用条件が変わるのですか。その番号は必須ですか?自動採番が必要ですか?手入力の時の伝票番号との関連性は?
ちょっと別の処理を行い、インポートと手入力を両立する事ができます。
Excel からのインポートは、テーブル_e へインポートしてください。インポート時には、自動入力をオンにしてください。
https://www.dropbox.com/s/103fryn787b3m … 7.zip?dl=0
Last edited by Shin (2018-02-04 18:18:30)
Offline
ありがとうございました
Offline
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 568.71 KiB (Peak: 585.62 KiB) ]