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

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

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

You are not logged in.

Announcement

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


#1 2015-11-25 14:54:13

ka
Member

レコードを移動する際のトリガー

教えてください。
レコードを移動する際に反応してくれるトリガーはありますでしょうか?
レイアウトのトリガーのonrecord commitではフィールド以外のところを
クリックしてしまったりした時に起こったりするレコード確定の度に反応
してしまって使えません。。

Offline

#2 2015-11-25 15:43:14

scripter
Guest

Re: レコードを移動する際のトリガー

onRecordLoad
出る時ではなく入ったときですが。
フィールドみたいなonRecordExitというのは、ありません。

#3 2015-11-25 16:06:50

ka
Member

Re: レコードを移動する際のトリガー

ありがとうございます。
onRecordLoadがイベントが処理される直前に呼ばれればなんとかしようがあるのですが。。

Offline

#4 2015-11-25 16:07:32

チポ
Member

Re: レコードを移動する際のトリガー

Exit
ないんですよねーー


OnRecordLoadを使って
  元のレコードに戻る
  元のレコードの処理
  最初の移動先を表示

結構こねくり回してやったことが有りますが、、
ご希望なら捜してみます・・どうやるか思い出せない・・老化 ;;;

Offline

#5 2015-11-25 16:34:48

ka
Member

Re: レコードを移動する際のトリガー

ありがとうございます。

元のレコードに戻るわけですか。自分がやったらループで強制終了パターンです。
もしお手間じゃなければそのソースを見てみたいです。。

Offline

#6 2015-11-25 17:01:13

チポ
Member

Re: レコードを移動する際のトリガー

見つけ出しました、それほど面倒なステップではなかったです。


フラグフィールドを作ります。

スクリプトの考え方
  If [IsEmpty ( フラグ ) ]
   フラグ = 2
   フラグ = 1のレコードへ移動
   元のレコードの処理
   フラグ = ""
   フラグ = 2のレコードへ移動
   フラグ = 1
  End If


レコード移動は、
グローバルフィールドを作り、それとフラグとのリレーションで、
関連レコードへ移動
が簡単ですね。


飛ばし気味ですが、これでいかがでしょう。

Offline

#7 2015-11-25 19:08:51

ka
Member

Re: レコードを移動する際のトリガー

ありがとうございます。
バカで申し訳ないですが、フラグ = 1のレコードへ移動はフラグに1を入れてからそのレコードに移動という事ですか?
ならば上でフラグに2を入れるのは何の意味があるのでしょうか?

Offline

#8 2015-11-26 09:31:27

チポ
Member

Re: レコードを移動する際のトリガー

フラグ = 1のレコードへ移動
これは、
フラグフィールドの値が 1 のレコードへ移動
という意味です。

最初に、現在のレコードのフラグに 1 を入力しておく
と書けばお分かりになりやすいでしたね。


しかし、
この方法は共有ではまずいですね。


改良版を、、
グローバルフィールドと、レコードIDのフィールドを作り、
この二つでリレーションを定義します。


スクリプト
  If [グローバル ≠ レコードID ]
    変数を設定 [$a ; レコードID ]
    関連レコードへ移動(上記のリレーション)
     //これで元のレコードに戻りますから、そこで処理
    フィールド設定 [ グローバル ; $a ]
    関連レコードへ移動(上記のリレーション)
  End If

スクリプトはこれでいいですね。

運用の最初にグローバルフィールドに現在のレコードIDを入力しなければなりません。
これはスクリプトにして、ファイルを開くときに実行すればいいでしょう。

Offline

#9 2015-11-27 19:48:23

ka
Member

Re: レコードを移動する際のトリガー

ありがとうございました。

よくわかりました。汎用にするにはページ数に移動でなしにグローバルフィールドを使って関連レコードへ移動が必須ですね。やってみます。

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, 7 queries executed - Memory usage: 517.43 KiB (Peak: 521.97 KiB) ]