みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
Filemaker pro advanced 10 /Windows10pro です。
繰り返しについて教えてください。
タイプが「計算」であれば、問題ないのですが、
タイプを「テキスト」にして、計算値を設定、既存値を置き換えにしたら、
うまくいきません。
フィールド「時間」 計算:Time ( 9 ; 0 ; 0 ) +( Get ( 計算式繰り返し位置番号 ) - 1) * 30 * 60 繰返し10
フィールド「開始時間」 時刻 入力値10:00
フィールド「終了時間」 時刻 入力値13:00
フィールド「営業時間禁止」のタイプを計算にした場合、開始時間や終了時間を変更してもちゃんと計算されます。
計算式:If(時間 < Extend ( 営業開始時間 ) or 時間 ≥ Extend ( 営業終了時間 );"不可") 繰返し10
時間 営業時間禁止
9:00 不可
9:30 不可
10:00
10:30
...
12:30
13:00 不可
13:30 不可
フィールド「営業時間禁止」のタイプをテキストにして、
計算値:If(時間 < Extend ( 営業開始時間 ) or 時間 ≥ Extend ( 営業終了時間 );"不可") 繰返し10
既存値を置き換えに変更したところ、上記のようになりません。
開始時間や終了時間を変更したら、「営業時間禁止」の繰り返し1(9:00のところ)しか変更されません。
計算式が間違っているのでしょうか。
ご教授ください。
Offline
それが仕様のようですよ。
入力値の自動化は繰返しフィールドには働かない様です。
計算フィールドにできないのでしたら、
スクリプトで入力する様にして、
開始時間・終了時間フィールドのスクリプトトリガ実行でさせればいいのでは。
Offline
計算引数フィールドを全て繰り返しフィールドで統一すれば、
入力値の自動化を繰返しフィールドにも適用できますよ!!
・開始/終了時間フィールドを繰り返し[10]計算フィールドに持ち替える。
フィールド[10]「開始時間_配列」 時刻 計算 Extend(開始時間)
フィールド[10]「終了時間_配列」 時刻 計算 Extend(終了時間)
・入力値の自動化の式は、
フィールド[10]「営業時間禁止」テキスト 計算 If(時間 < 開始時間_配列 ) or 時間 ≥ 終了時間_配列 );"不可")
Offline
初期値の自動入力はできるんですが、
既存値置き換えができません。
Offline
動的な情報を、テキストで表示させようという所が誤りかとも思いますが。
テキストに保存するのは、例えば、レコードごとに、その作成時点での情報を保持させるような時に、テキストで自動入力させておくでしょう。逆にいうと、後日その情報を編集することが無い場面ですね。
Offline
皆様、ありがとうございます。
仕様なのですね。
テキストではなく、計算でなんとかしようと思います。
ありがとうございました。
Offline
解決になってしまいましたが、
初期値の自動入力はできるんですが、
既存値置き換えができません。
「既存値置き換え」も、もちろん問題なくできますよ。
riraraさんもご自身で動作検証してみてくださいネ。
Offline
スレ主さんの環境ではテストできませんが、
FM10・MacOS
ではできませんでしたよ。
Offline
Pages: 1
[ Generated in 0.009 seconds, 9 queries executed - Memory usage: 563.67 KiB (Peak: 588.59 KiB) ]