初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2014-09-12 15:55:19

Toyoda
Guest

複数テーブルのレコードを

皆様、はじめまして。お知恵をお借りしたく投稿させていただきます。

複数のテーブルA, B, Cのレコードに一意のIDがつけられております。(IDが重複しないように厳密に管理されているとします。)

A 1,7,11,14
B 2,3,4,6,8,
C 5,9,10,12,13

行いたいことは次の2つです。

1.これらを条件により統合する。
ある条件を与え集合{A}ができたとします。(eg. 年齢が60歳以上など)
{A} = 1,5,8,13

2,{A}を集合して新規のレコードを作成する。
{A}の背番号 1(鈴木),5(佐藤),8(駒込),13(木代)左のように名前フィールドがあると仮定すると、新規レコードには(鈴木佐藤駒込木代)を代入したいとかんがえております。

このようなことはどうすれば可能でしょうか?
問題が抽象的すぎて申し訳ありません。

皆様にご意見いただけたら、より具体的なプレゼンテーションができ、より問題点もはっきりすると思いますので、何卒力をお借りいただければと思います。

#2 2014-09-12 16:02:51

旅人
Member

Re: 複数テーブルのレコードを

>{A}を集合して新規のレコードを作成する。
どこに作るの。

Offline

#3 2014-09-12 16:06:39

Layouter
Guest

Re: 複数テーブルのレコードを

額面通りに取れば、ExecuteSQLで計算すればUNIONが使えるのでテーブルが分かれてても計算式でできるけど
インポートして1つにするのが普通では。

#4 2014-09-13 13:51:03

Toyoda
Guest

Re: 複数テーブルのレコードを

旅人さん はじめまして
お返事ありがとうございます。
新しいテーブルに新規レコードを作りたいです。

Layouterさん はじめまして
お返事ありがとうございます
A, B, Cは同一データベース内のテーブル同士なのですが、インポートでできますか?インポートを試してみます。

#5 2014-09-13 15:40:07

旅人
Member

Re: 複数テーブルのレコードを

新規テーブルとABCを各々年齢60以上でリレーションすると取り出せるけど
>{A} = 1,5,8,13
のように番号順に並べるにはABCのデータを1テーブルにまとめた顧客マスタ
のようなものが必要かも。

Offline

#6 2014-09-15 04:04:54

Toyoda
Guest

Re: 複数テーブルのレコードを

説明を少し訂正させていただきます。

テーブルA,B,Cが存在します。

{A} 1,7,11,14
{B} 2,3,4,6,8,
{C} 5,9,10,12,13

行いたいことは次の2つです。

1.これらを条件により統合する。
ある条件を与え集合{X}ができたとします。(eg. 年齢が60歳以上など)
{X} = 1,5,8,13

2,{X}をもとにテーブル{D}に新規レコードを作成する。
{X}の背番号 1(鈴木),5(佐藤),8(駒込),13(木代)左のように名前フィールドがあると仮定すると、テーブル{D}の新規レコードには(R1鈴木R2佐藤R3駒込R4木代;Rはレコード)を代入したいとかんがえております。

旅人さん ご丁寧なご説明をいただき有り難うございます。
まとめるテーブル{D}は、やはりフォームからスクリプトを駆使して、転記させるしかないでしょうか?

#7 2014-09-15 09:03:03

旅人
Member

Re: 複数テーブルのレコードを

話が違ってきたような?
新しいテーブルに4個のレコードということなら
検索や関連レコード移動でABCのテーブルでレコードを絞って
新規テーブルから3回インポートするとか。
ABCをひとつにまとめた方がずっと楽だけど。

Offline

#8 2014-09-16 12:15:35

Toyoda
Guest

Re: 複数テーブルのレコードを

旅人さん 返信いただき有り難うございます。
条件が変わってしまい申し訳ありません。

ABCをひとまとめにしたほうが確かに楽なのですが事情があってできません。
やはり、そのようにスクリプトを駆使して転記させたほうがいいですね。
ありがとうございます。

#9 2014-09-16 12:35:23

Shin
Member

Re: 複数テーブルのレコードを

マスターとなるテーブルを作れないのでしたら、1レコード毎にインポートかコピペしてくるしか無いでしょう。
どんな事情なのかな?

Offline

#10 2014-09-17 13:15:05

Layouter
Guest

Re: 複数テーブルのレコードを

>ある条件を与え集合{X}ができたとします。(eg. 年齢が60歳以上など)
これはどこにできるんでしょうね。

ABCそれぞれに年齢フィールドがあるんだろうから、ファイルをODBC共有に設定して、インポートで
SELECT * FROM A WHERE 年齢>=60
UNION
SELECT * FROM B WHERE 年齢>=60
UNION
SELECT * FROM C WHERE 年齢>=60
とやってインポート先をDにすれば1ステップでできますが。(本当に名前だけでレコードを作るなら、*でなく名前)
年齢フィールドがないとすると、WHERE条件を ID IN (1,5,8,13)にしたりもできます。
どっちみちインポートするフィールドが本当はたくさんあるはずだから、スクリプトにしないと毎回指定するのは面倒です。

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.156 seconds, 9 queries executed - Memory usage: 516.39 KiB (Peak: 520.93 KiB) ]