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

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

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

You are not logged in.

Announcement

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


#1 2017-07-13 05:23:10

TAKESA
Member

計算フィールドかスクリプトか

動作を軽くするには
できるだけ計算フィールドを使わずに
スクリプトで計算した結果を数字フィールドにいれたほうがいいですか?

例えば個数×単価=金額の計算などをすべてスクリプトとトリガでやるような感じです

Offline

#2 2017-07-13 05:33:48

Moz
Member

Re: 計算フィールドかスクリプトか

計算フィールドで動作が重くなる原因になるのは主に非保存を多用している場合です。
数字フィールドにスクリプトで値を入れても索引付きの計算フィールド(結果:数字)でも
計算をした際に計算を行う時間(僅かですが)が掛かることに変わりはありません。

スクリプトを作ったり、設定したりする時間が増え、メンテナンス性が下がってコスト高な可能性もあります。

知識・理論が先行して手を付けるのを躊躇う前に、まずは手を動かしてみられることをオススメしますよ。

Offline

#3 2017-07-14 01:57:37

TAKESA
Member

Re: 計算フィールドかスクリプトか

計算実行のときの速度ではなく、
計算フィールドだと非保存になるので
数字フィールドにして、計算はスクリプトトリガで行えば
検索時やレイアウト切替時に再計算しないので速くなりますか?
ということです

個数フィールドを変更したときに、個数×単価を行い、その結果を数字フィールドに格納するような
スクリプトトリガという感じです
例なので単純な式にしてますが、他テーブルを参照したりする複雑な式などでも効果はありませんか?

Offline

#4 2017-07-14 02:41:13

Hiro
Member

Re: 計算フィールドかスクリプトか

#3 > 計算フィールドだと非保存になるので
決めつけはいけません。そんなことはありませんよ。
ご自身で動作確認しての投稿なのかな?
他力より先にご自身の手を動かしてくださいネ。

Offline

#5 2017-07-14 03:00:52

TAKESA
Member

Re: 計算フィールドかスクリプトか

単価などはマスタから持ってくるし複雑な計算フィールドの場合は参照しまくるので
結局保存できないのでそのように書きました

伝わりにくかったならすみませんでした

Offline

#6 2017-07-14 03:19:29

Hiro
Member

Re: 計算フィールドかスクリプトか

関連参照値でも、Lookup関数で計算取得すれば計算結果の保存指定も自由に選択できます。
さらに、Lookup関数は複雑な複合式の部分式としても組み込めます。

P.S.: また、ExecuteSQL関数でも同様の効果が得られます。

Last edited by Hiro (2017-07-14 03:31:12)

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 9 queries executed - Memory usage: 515.2 KiB (Peak: 521.84 KiB) ]