みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもお世話になっております。
通販サイトの注文情報を管理するデータベースなのですが、
その注文が会社の何期目に頂いた注文なのかを識別するフィールドを作成したいです。
9月が決算月なので、以下のような計算式を試しましたが、
上手くいきませんでした。
Case (
受注日 = 2015/10...2016/9 ; "1期" ;
受注日 = 2015/10...2016/9 ; "2期" ;
"エラー" )
※受注日は日付フィールドとなります
どなたか分かる方いらっしゃいますでしょうか?
何卒宜しくお願い致します。
Offline
1期の日付範囲
2期の日付範囲
3期はあるの?
もっと正確に書いたほうがいいよ
ふくろう様
コメントありがとうございます。また、質問内容が足らず申し訳ございませんでした。
正確に書きますと、受注日という日付フィールドが、
2015年10月1日から2016年9月31日までの場合は「1期」とテキストを出力、
2016年10月1日から2017年9月31日までの場合は「2期」とテキストを出力、
この調子で3期、4期、5期… と出力され続けるようにしたいです。
簡単であれば期間無制限に出力され続けるようになれば良いなと思いますが、
以下のようなイメージで、設定した期間のみ出力されるようになれば十分です。
Case (
受注日 = 2015/10...2016/9 ; "1期" ;
受注日 = 2016/10...2017/9 ; "2期" ;
受注日 = 2017/10...2018/9 ; "3期" ;
受注日 = 2018/10...2019/9 ; "4期" ;
受注日 = 2019/10...2020/9 ; "5期" ;
受注日 = 2020/10...2021/9 ; "6期" ;
受注日 = 2021/10...2022/9 ; "7期" ;
受注日 = 2022/10...2023/9 ; "8期" ;
受注日 = 2023/10...2024/9 ; "9期" ;
受注日 = 2024/10...2025/9 ; "10期" ;
受注日 = 2025/10...2026/9 ; "11期" ;
受注日 = 2026/10...2027/9 ; "12期" ;
受注日 = 2027/10...2028/9 ; "13期" ;
受注日 = 2028/10...2029/9 ; "14期" ;
受注日 = 2029/10...2030/9 ; "15期" ;
"エラー" )
以上、何卒宜しくお願い致します。
Offline
( Year ( 受注日 + 92 ) - 2015 ) & "期"
で良いでしょうね。
Last edited by Shin (2016-08-03 18:02:08)
Offline
Shin様
これ以上無い素晴らしい回答です( ;∀;)!!!!!!!!!!
全てが上手くいきました!!!
本当にありがとうございます!!!!!
Offline
意味を理解して使ってね
Offline
解決ですが、間違いの指摘を、、
> 受注日 = 2015/10...2016/9 ; "1期" ;
「...」
これは検索演算子で、計算式には使えません。
上記の条件式をあえて書けば
受注日 >= 2015/10 and 受注日 <= 2016/9
となりますが、
これでは日付の比較ができません。
受注日 >= "2015/10/1" and 受注日 <= "2016/9/30"
か
受注日 >= Date ( 10 ; 1 ; 2015 ) and 受注日 <= Date ( 9 ; 30 ; 2016 )
とすればいいですね。
Offline
ついでに、Case() 関数の使い方について、
条件に合えば、それ以降の行は無視される動きになります。ですから、
Case (
受注日 ≤ "2015/9/30" ; "エラー" ;
受注日 ≤ "2016/9/30" ; "1期" ;
受注日 ≤ "2017/9/30" ; "2期" ;
…
)
と書いて行くと簡潔になります。
Offline
>意味を理解して使ってね
ヒント
31+30+31=92
Offline
Shin様
10月1日から12月31日までが92日だから、Year関数で受注日から92日後の年を出し、それを2015で引くという感じですよね(。-∀-)!
大変勉強になりました!!今後も日付周りを触る時は応用して頑張ります!!!
Case() 関数の使い方もありがとうございます!!今後はこのように使おうと思います(*‘∀‘)!
チポ様
>「...」これは検索演算子で、計算式には使えません。
そうなんですね!大変勉強になります!
正しい計算式もありがとうございます!
今後使用する場面が来たら使ってみます!
Offline
>意味を理解して使ってね
ヒント
31+30+31=92
その逆は、31+28or29+31+... となるので不定です。
稀でしょうが、1月2月決算の会社があるとするなら、決算末日の DayOfYear() を引いて求める事になります。
Offline
2月決算なら3月からの日数だから9月のと同じでいいですよね。
1月なら-31でいいのでは。
勘違いしたようで。2月決算だと期首日は3月1日だから、+306 でいいですね。
Offline
Pages: 1
[ Generated in 0.009 seconds, 11 queries executed - Memory usage: 570.98 KiB (Peak: 587.52 KiB) ]