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

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

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

You are not logged in.

Announcement

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


#1 2013-09-08 18:13:03

yuki
Member

関連レコードがないときに、変数を別ファイルで使うこと?

Win FMP11です。
AファイルのID番号とBファイルのID番号はリレーションで関連づけてあります。

スクリプトで、AファイルからID番号の一致するでBファイルの関連レコードへ移動することはできます。

あるID(1002)でAファイルには存在し、Bファイルには存在しないIDで関連レコードへ移動しようとしたら自動的にBファイルにID(1002)の新規レコードを作りたいのですが、
ファイルAで変数設定 $$ID番号 でID番号を覚えさせて
ファイルBへ移動後、ファイルBの「ID番号」フィールド設定:$$ID番号
としたいのですが、うまくいきません。
ファイルを越えて変数は使えないのでしょうか。

ひとつのファイルの中にAテーブル-Bテーブルを作り、このようなことは可能なことは解りました。
マルチファイルをマルチテーブルに変更すればいのでしょうが、.fp5で作った古いマルチファイルのDBをfp7に変換中で、このような疑問が生じています。

変数を使わないで行うことは可能でしょうか?

Offline

#2 2013-09-08 19:49:11

Shin
Member

Re: 関連レコードがないときに、変数を別ファイルで使うこと?

ファイルが別の様ですので、別のスクリプトを呼び出しているのでしょうね。
グローバル変数は、ファイル固有です。ローカル変数は、スクリプト固有です。
ですから、どちらにしても変数の内容の受け渡しには、別の仕組みが必要です。
その際に有用なのだが、スクリプト引数です。詳細はヘルプでご覧下さい。

ただ、処理は変数を使わずに可能です。

If[ not IsValid ( リレーション::ID )]
 フィールド設定[リレーション::ID ; ID]
end If
関連フィールドへ移動[]

とsれればいいでしょう。

Last edited by Shin (2013-09-08 19:53:45)

Offline

#3 2013-09-08 21:30:59

yuki
Member

Re: 関連レコードがないときに、変数を別ファイルで使うこと?

Shinさま ありがとうございます。

うまく動きません。

>If[ not IsValid ( リレーション::ID )]
----ここにBファイルで新規レコード作成 的なステップは必要ありませんか?
>フィールド設定[リレーション::ID ; ID]
>end If
>関連フィールドへ移動[]
  これは関連レコードの移動では? []は条件を指定しないということですか?

Offline

#4 2013-09-08 23:33:44

Shin
Member

Re: 関連レコードがないときに、変数を別ファイルで使うこと?

リレーションを通した関連レコードの作成を許可していますか。

最後の行は、関連レコードへ移動、の間違いです。条件は現在の設定のままで良いです。
もし、関連レコード側の修正履歴が触られても良いのでしたら、ifの行と、else if も不要です。

Offline

#5 2013-09-10 22:30:40

yuki
Member

Re: 関連レコードがないときに、変数を別ファイルで使うこと?

Shinさま ありがとうございます。

どうも解決できなかったのですが、ポータルを介してということに思い当たり、
Aファイルで、一行のポータルにボタンを置くということで解決しました。

Offline

#6 2013-09-10 23:27:38

Shin
Member

Re: 関連レコードがないときに、変数を別ファイルで使うこと?

フィールド設定[リレーション::ID ; ID]
を行った時に、Bファイルにレコードは作成されていますか。

関連レコードへ移動、のステップだけでしたら、きちんと動いていますか。

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: 509.01 KiB (Peak: 513.55 KiB) ]