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

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

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

You are not logged in.

Announcement

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


#1 2021-09-30 20:11:33

げっさん
Member

ポータル内の合計を直ぐに表示するには?

お世話になります。

とあるポータル内外に以下のようなフィールドが配置しているとします。

ポータル内
加工数フィールド(タイプ:数字)

ポータル外
加工数合計フィールド(タイプ:集計、オプション:合計)

加工数フィールドに数値を入力すると、加工数合計フィールドに合計が表
示されるんですが、最終的にフィールド以外のところをクリックするか、
エンターで確定して初めて数字が出てきますが、数字を入力した時点で計
算されるようにするにはどうすれば良いでしょうか?
私は気付かなかったんですが、実際に使うユーザーからの要望なんです。
タブで移動して入力するので、最終的にエンターを押さないと合計が出な
いのでなんとかして欲しいとの事。

宜しくお願いします。

追記:
数字を入力した後、一度確定するスクリプトを入れ、そのまま次のフィー
ルドに移動出来れば良いのか?など考えながらやっています。

Last edited by げっさん (2021-09-30 20:25:13)

Offline

#2 2021-09-30 21:16:17

Shin
Member

Re: ポータル内の合計を直ぐに表示するには?

データベース側からみると、データが確定してくれないとデータは出せないですね。ですから、入力中のレコードを確定する操作がされるまでは無理です。
もし、タブで移動しているのが別のレコード(ポータル内の次の行)でしたら、別テーブルのデータを取得することになるのでウインドウの再表示をしてあげる必要があります。トリガーを使って、必要ならばレコードを確定し、ウインドウを再表示させるスクリプトを動かすといいでしょう。

Offline

#3 2021-09-30 22:24:50

げっさん
Member

Re: ポータル内の合計を直ぐに表示するには?

Shinさん

いつもありがとうございます。

Shinさんのコメントを参考にさせて頂き、以下のような方法で出来ました!!

以下の内容でスクリプトを作成。

フィールドへ移動[選択/実行]

フィールドへ移動[指定フィールドへ移動]

対象フィールドに[OnObjectValidate]スクリプトトリガを設定し、上記スクリプトを選択。

これで上手く行きました!!

[ウインドウを再表示]を適用するには、どうしても確定しなければ無理だったようですので、[フィールドへ移動]で確定させました。

これで夜なべせずに済みそうです。

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

Offline

#4 2021-10-01 13:47:31

Shin
Member

Re: ポータル内の合計を直ぐに表示するには?

厳密なことをいうと、OnObjectValidate ではなく、OnObjectExit か OnObjectSave を使った方がいいです.

これらは、それぞれ、

  • アクティブなオブジェクトが検証および保存される前にスクリプトが実行されます。

  • 次の動作(なんらかの動作でレコードが確定されるか別のフィールドへ移動)が発生した結果、アクティブオブジェクトが終了される前

  • オブジェクトデータが検証されて保存された後、ただしフィールドを終了する前

でトリガーされますので、微妙に異なります。オブジェクトの検証は、他の都合もあるので、行なっておいた方がいいと思います。

Last edited by Shin (2021-10-01 13:48:30)

Offline

#5 2021-10-07 11:01:05

げっさん
Member

Re: ポータル内の合計を直ぐに表示するには?

Shinさん

コメントありがとうございます。

厳密なことをいうと、OnObjectValidate ではなく、OnObjectExit か OnObjectSave を使った方がいいです.

OnObjectValidate改め、OnObjectExitに変更しました。しっかり検証した
上で上で変更させて頂きました。

ありがとうございます。

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: 559.09 KiB (Peak: 587.89 KiB) ]