みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になります。
MacBook Air
FileMaker Pro14
を使用しています。
現在バスの時刻表を作成しています。
以前「土日以外に、夏休みのような長期休暇とその日以外を区別する方法」というタイトルで質問しました。
Case (
Date ( 7 ; 23 ; 2016 ) ≤ 日付 and 日付 ≤ Date ( 8 ; 2 ; 2016 ) ; 休日ダイヤ ;
平日ダイヤ
)
とすれば良いとのアドバイスと頂きました。
その後、以下のような動作をさせたいと考えています。
■条件
休日の期間が「2016/6/10~2016/6/19」「2016/9/10~2016/9/20」「2016/11/18~2016/11/30」の3つ(複数)あり、日付フィールドには「2016/9/11」と入っている
■やりやいこと
この時、日付フィールドには「2016/9/11」と入っているため、「2016/9/10~2016/9/20」が適用され休日と判断される
と言うことをしたいのですが、Date ( 月 ; 日 ; 年 )の年月日をどのように設定すれば良いのかがわからないため、質問させていただきました。
よろしくお願いします。
Case(
(Date(6;10;2016)≤日付 and 日付≤Date(6;19;2016))
or
(Date(9;10;2016)≤日付 and 日付≤Date(9;20;2016))
or
(Date(11;18;2016)≤日付 and 日付≤Date(11;30;2016))
;休日ダイヤ
;平日ダイヤ
)
Offline
Case (
Date ( 6 ; 10 ; 2016 ) ≤ 日付 and 日付 ≤ Date ( 6 ; 19 ; 2016 ) ; 休日ダイヤ ;
Date ( 9 ; 10 ; 2016 ) ≤ 日付 and 日付 ≤ Date ( 9 ; 20 ; 2016 ) ; 休日ダイヤ ;
Date ( 11 ; 18 ; 2016 ) ≤ 日付 and 日付 ≤ Date ( 11 ; 30 ; 2016 ) ; 休日ダイヤ ;
平日ダイヤ
)
とすれば良いでしょうが、毎年作り替える必要がありますね。
Offline
毎年同じ日付なら、
月日を数値にして比較すればいいのでは。
> 「2016/6/10~2016/6/19」
これは
610 < = Month ( 日付 ) *100 + Day ( 日付 ) and Month ( 日付 ) *100 + Day ( 日付 ) <= 619
で判定できます。
Offline
毎年同じスケジュールならば、
Case (
Date ( 6 ; 10 ; Year ( 日付 ) ) ≤ 日付 and 日付 ≤ Date ( 6 ; 19 ; Year ( 日付 ) ) ; 休日ダイヤ ;
Date ( 9 ; 10 ; Year ( 日付 ) ) ≤ 日付 and 日付 ≤ Date ( 9 ; 20 ; Year ( 日付 ) ) ; 休日ダイヤ ;
Date ( 11 ; 18 ; Year ( 日付 ) ) ≤ 日付 and 日付 ≤ Date ( 11 ; 30 ; Year ( 日付 ) ) ; 休日ダイヤ ;
平日ダイヤ
)
でも良いのでしょうけど。
日毎にフラグを持たせておいて、土日は自動設定、上の長期休暇は手で設定しておく運用の方がシンプルに思います。
Offline
Pages: 1
[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 509.07 KiB (Peak: 515.96 KiB) ]