【FileMaker】初旬・中旬・下旬を表示する

たまたま技術者同士の夫婦の会話の中で、FileMakerに日付として「初旬・中旬・下旬」として書いてあったことを聞いて、「多分日付としては設定してあるんじゃなくて、テキストだったんじゃない？」と会話してました。
通常の会話の中で、
「じゃ、次の会議は来月初旬で」
とかでしょうか。。。

なんか面白かったので、FileMakerで初旬・中旬・下旬の日付を表示させるサンプルを作ってみました。
（完全な趣味）

# バージョン依存
作成したのは、FileMaker Pro Advanced 18ですが、条件で非表示にする部分で「次の場合にオブジェクトを隠す」をレイアウトのフィールドに設定しているため、FileMaker ver.13以降を対象としています。

# 動き
では、動きを見ていきましょう。
基準年月を2020年1月とした時の、初旬・中旬・下旬の表示です。
まずは、初旬。
<img width="649" alt="初旬" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/b4820e06-b7b4-6bd9-73b3-600054ad0a31.png">

中旬。
<img width="654" alt="中旬" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/851453cb-6f3a-2330-72fd-ca38bef0b522.png">

下旬。
<img width="636" alt="下旬" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/edef8489-77c7-ff8c-a20c-ba054d9bb032.png">

閏年でない年の下旬。
<img width="649" alt="スクリーンショット 2019-12-21 13.02.19.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/be573168-416a-05ef-a60c-6484d8089c0b.png">

閏年の年の下旬。
<img width="666" alt="閏年の年の下旬" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/fd4cf0bb-5713-2bf8-4a55-cd5a1143b07f.png">

# 作り
では、作り方です。
とは言っても、今回はそんなにすごいことをしているわけではなく、計算式を設定するところがキモになります。

## テーブル定義
今回は、基準月の月末をフィールドの計算式で計算し、それを元に下旬の日付表示を決めています。
<img width="1095" alt="月末計算" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/b93e17e2-c690-4e7a-c833-92a8432bf281.png">
この時の注意点は、
・数字で計算を返す
・再計算の設定をする
の2点です。
再計算の設定をしておかないと、時期などを変更した時に再計算が行われず、間違った下旬の日付を計算してしまいます。

# 値一覧
値一覧で、「実際に決まった日付」フィールドの表示を作っています。
<img width="861" alt="値一覧" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/a58c2e77-135d-2929-f2cf-66e3692b720c.png">

# レイアウト
レイアウトモードにすると、こんな感じです。
<img width="793" alt="レイアウト" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/5f59fc9b-36ea-c079-4b81-8944498c7fdf.png">
日付を「次の場合にオブジェクトを隠す」設定で重ねています。
バラしてみましょう。
<img width="526" alt="バラしてみましょう" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/fd225112-2ec6-85ad-36b5-ad0d29a63e01.png">

初旬と中旬の時は、単純に時期フィールドで判断しています。
初旬。
<img width="794" alt="初旬" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/01ab0200-a59b-4c22-14dc-5cc08f4056d7.png">

中旬。
<img width="784" alt="中旬" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/22187d51-8b9b-714d-ebc9-41b87f209b01.png">

下旬は、テーブル定義の基準月月末計算の結果を追加して、表示・非表示を決めています。
月末が30日の場合。
<img width="775" alt="月末が30日の場合" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/cbc2f048-2c0d-bcee-cc92-c43ca0c74529.png">

月末が31日の場合。
<img width="778" alt="月末が31日の場合" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/8b05cdd1-80de-21d3-64e0-7de6dc770088.png">

閏年でない2月の場合。
<img width="779" alt="閏年でない2月" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/a0bcc8ac-2d0f-2831-f65a-227b40ea2fe5.png">

そして、閏年の2月の場合です。
<img width="787" alt="閏年の2月" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60538/61790a8f-b894-5393-0f32-9104d47881a4.png">

# 活用できそうなところ
だーいたいの日付を設定したいとか、おおよそこの辺でって時に使えるのかな？
「納期を来月下旬」と設定した時に、「だいたい25日までに仕上げて、、、」としてスケジュールを組むとか？

今回は、こんなところでお開きです。

#宣伝

Discord の「FileMaker Casual」サーバーで気軽に FileMaker 開発者と交流しませんか？
@Hi_Noguchi さんが立ち上げた FileMaker 中心の情報共有チャットです。

どなたでも参加できて、気軽に質問できる空間です。是非ご参加ください。
招待リンク=> https://discord.gg/g2gp6Ez