FileMakerの時刻表示を、ポップオーバーを使って使いやすくする
時刻の入力を便利に
FileMakerの日付入力は「ドロップダウンカレンダー」によって便利にすることができます。
時間についてはこのようなものがなく
・フィールドの時刻を直接編集する
しかありません。
今回はこちらを改善してみました。
実際の動作
- ボタンバー
- ポップオーバー
の2つを利用して実装しています。
ボタンでなく「ボタンバー」なのは
- ボタン内で計算式を利用したい
ためです。
ボタン部分の実装
設定した時刻を表示します。
- 秒の部分は表示しない(いらない)
- フィールドが空欄の場合は、エラーにならないように表示を調整
することに注意しています。

ポップオーバー(開く時)
開く際に
- 今回操作したいフィールド名をグローバル変数に指定
しています。これはスクリプトを使い回ししやすくするための処理です。

時・分指定ボタン
時と分のそれぞれのボタンがありますが、処理の流れは共通しています。
- 既存の時刻を取得し
- その時刻の該当部分を変更
しています。

空欄への対応
万が一フィールドが空欄の場合に、そのまま処理しようとすると
- 存在しない時間を変更
することになり、おかしな動作になります。
そのような状況を回避する為、空欄の場合は
- 「0:00:00」
を代入する処理も行っています。

ポップオーバー(閉じる時)
閉じる際に
- フィールドを指定したグローバル変数を空に
しています。
こうすることで複数の時刻の編集にも柔軟に対応できます。

ボタンバー+ポップオーバーの良いところ
- ボタンを複製すれば、気軽にどこでも使える
これができるのがこの仕組みの良いところだと思います。
ポップオーバーを開く時に
- 操作したいフィールド
を引数内に指定しています。
これを変更すれば、簡単に他の時刻にも流用することができます。
お困りごとをお聞かせください。
FileMakerについてのご相談、ご依頼など。お気軽にお問い合わせください。
頂いた内容については、3営業日以内の返信を心がけております。
既に稼働中のFileMakerの修正も、頻繁にご依頼頂いております。
小さなことから、お気になさらずお気軽にご相談ください。