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

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

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

You are not logged in.

Announcement

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


#1 2023-02-13 19:55:51

srhnn
Guest

スクリプトについて

ファイル1とファイル2があります

ファイル1にファイル2のレコードを新規作成できるボタンをつくりたいのですが、

スクリプトはどういった計算をくみこんだらよいでしょうか?
ファイル2にはテーブルは一つのみです。
ファイル1にはテーブルがいくつもあり、テーブル1のフィールド1のみ、その新規作成ボタンを押した時にフィールド1がファイル2のテーブルの新規作成したレコードのフィールドaに自動で入るようにしたいです。


わかりにくいかもしれないですが、教えてくださると助かります。

#2 2023-02-13 21:00:40

Shin
Member

Re: スクリプトについて

各テーブルに、UUIDの主キーがあるとします。テーブル2にテキストフィールドを作り、テーブル1の主キーとリレーションを張っておき、リレーションを通してテーブル2側のレコードの作成を許可しておきます。ます。
テーブル2にもう一つテキストフィールドを作っておきます。
テーブル1のボタンは、フィールド設定[テーブル2::テキストa ; フィールド1]
の1行でいいです。

Last edited by Shin (2023-02-18 18:29:33)

Offline

#3 2023-02-14 09:19:02

チポ
Member

Re: スクリプトについて

それだと対1しかできませんね。

ファイル1が多で、ファイル2が1の場合、
ファイル2でユニークになる何らかの方法が必要でしょう。

対多と考えれば、
ファイル1のレイアウトに、ファイル2のポータルを配置、
その最後の行に入力で新規レコード作成できます。

Offline

#4 2023-02-14 11:03:15

Shin
Member

Re: スクリプトについて

ファイル1の各レコードのUUIDは理論的にユニークですので、ファイル2のレコードもそのユニーク値をもったレコードになりますので、1対1のレコードが作成できます。

Offline

#5 2023-02-14 11:20:54

himadanee
Guest

Re: スクリプトについて

他の方法としては、ファイル1に外部データソースでファイル2のテーブルを追加すれば、ファイル1内のテーブルと同様に操作できるのでは。
あるいは、ファイル2で新規レコード作成のスクリプトを作って、フィールド値をスクリプト引数で渡してそれを呼び出す、とか...

#6 2023-02-15 19:55:00

srhnn
Guest

Re: スクリプトについて

各テーブルに、UUIDの主キーがあるとします。テーブル2にテキストフィールドを作り、テーブル1の主キーとリレーションを張っておき、リレーションを通してテーブル2側のレコードの作成を許可しておきます。ます。
テーブル2にもう一つテキストフィールドを作っておきます。
テーブル1のボタンは、フィールド設定[テーブル2::テキスト2 ; フィールド1]
の1行でいいです。


こちらの方法で作成することができました。ありがとうございます!
これだと1回そのレコードのボタンを押してしまうと、もう新たに新規作成はできなかったんですが、
もう一回押すとまた全く同じのレコードをまたテーブル2に新規作成することは可能でしょうか?

#7 2023-02-15 22:17:11

Shin
Member

Re: スクリプトについて

フィールド設定[テーブル2::テキスト1; “”]
フィールド設定[テーブル2::テキストa ; フィールド1]
としてみてください

Last edited by Shin (2023-02-18 18:30:02)

Offline

#8 2023-02-16 07:03:39

srhnn
Guest

Re: スクリプトについて

ありがとうございます!!

#9 2023-02-18 12:54:11

srhnn
Guest

Re: スクリプトについて

試してみたんですが、2回目押すと一回目に作ったテキスト1が消えたり、作成できなかったりしてしまいます(><)

#10 2023-02-18 13:13:19

Shin
Member

Re: スクリプトについて

ファイル1とファイル2の関係が描かれていないので、具体的動きが想定できません。
#7の方法は、ファイル間に全く相互関係がなく、単にファイル2にレコードを作る、という場合の動きです。ファイル2のテーブル2::テキスト1は消しているのですが、目的のテーブル2::フィールド2は消えることはありえませんし、確実にファイル2にレコードは作成できます。
もし、ファイル間に関連があるのでしたら、チポさんの書かれたポータルがいいでしょう。または、タイムスタンプなどを取得するフィールドでのリレーションを足したものでレコードを作り、参照するにはUUIDのみで行えばいいです。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 562.61 KiB (Peak: 582.41 KiB) ]