はじめに
「テーブル中のフィールド最小値を計算する」や「レコード中のフィールド最小値を計算する」など、同一フィールドの場合は最小値を取得する方法があります。
しかし、複数のフィールドの場合はこれらの「やること」が使えないので、最小値を取得するには工夫が必要です。
今回のカスタマイズで出来ること
3つの日付フィールドの値を変えると、その中の最小の日付を文字列にコピーします。
追加先アプリには以下のフィールドを作成しました
Customineの設定
設定はこのようになります。
シンプルですね。
解説
対象が日付なので「stringmin 関数」で文字列としての最小値を取得します。
見た目には分かりづらいですが、[] 内に3つのフィールドがあります。
= stringmin([日付1, 日付2, 日付3])
日付フィールドに空白が含まれる場合
日付フィールドのどこかに空白がある場合は最小値は空白となりますので、空白以外の最小値を取得したいという場合は少し工夫が必要です。
まず「if 関数」で空白の場合は値を 2199-12-31 に変更してみます。
if(日付_1 = "", "2199-12-31", 日付_1)
こうする事で、空白を除外できます。
これを「stringmin 関数」と組み合わせてみます。
= stringmin([if(日付1 = "", "2199-12-31", 日付1), if(日付2 = "", "2199-12-31", 日付2), if(日付3 = "", "2199-12-31", 日付3)])
これで、空白以外の最小値が取得できます。
当然のことながら、2199-12-31を超える日付が入力されている場合は正常に動作しません。その場合は2199-12-31としている箇所を、2999-12-31にするなどの対応をお願いします。
まとめ
今回のように「関数」をつかうことで「やること」だけでは難しいケースも実現することが出来ます。
色々な「関数」がありますので、リンク先もご確認ください。
また、実際に作成してみられてご不明な点などございましたら、お気軽にチャットでご質問ください。