FileMaker Advent Calendar 2015の5日目
5日目にして早くもネタ切れ感半端ない(笑
いろいろ思いつくんだけど、文字に落とし込めない(泣
入力のユレを極力排除するような工夫をしておかないと後々苦労します
自分だけが使うデータベースはともかく、いろいろな人が使うデータベースは入力のユレを極力排除するような工夫をしておかないと後々苦労します
検索にひっかからなかったり、集計値がおかしくなったり..
「全置換って機能があるんでしょ」みたいなことを安易に考えているとうっかりやらかしてしまいます
入力値の制限
まず思いつくのがこれ
フィールド定義の「入力値の制限」
当てはまる条件があってこれで要件を満たせば、一番簡単にできます
「制限値以外の...」で設定しておけば
みたいなこともできるんですが、よく知らない人が使ってると「なんじゃこれ?」ってなることも
[フィールド復帰]は該当するフィールドが選択されるとして[はい]とか[いいえ]ってのは結局なんぞ?
[はい]か[いいえ]で結局次に進めるじゃん(「データの入力時にユーザーによる上書きを許可する」にチェックが入っている場合)みたいなことにも
だったら「データの入力時にユーザーによる上書きを許可する」のチェックを外しておけば完璧
という訳にもいかないようです
入れられては困るものを置換、変換する
入れられては困るものは置換、変換してあげればいい
ハイフン(-)は入れない、必ず半角で入力させたい等
この場合フィールド定義の「入力値の自動化」の「計算値」に変換させる計算値を仕込んでおけばやってくれます
ホーム > リファレンス > 関数リファレンス > テキスト関数
- ハイフン(-)は入力させない(ハイフンを空文字に置換する)
Substitute ( Self ; "-" ; "" )
たまにハイフン(-)の代わりに音引き記号(ー)を使ったりする変わり者もいたりするので
Substitute ( Self ; [ "-" ; "" ] ; [ "ー" ; "" ] )
みたいにまとめて書いておくこともできます
- 半角文字しか入力させない(入力された数字、アルファベット、記号を半角に変換する)
RomanHankaku ( Self )
入力させない
置換?、変換?、生ぬるいわ
そもそも入力させなければ揺れるはずもない なぜそれが判らん
な御仁にはこれ
Filter ( Self ; "123456789-" )
※数字123456789とハイフン(-)のみ入力できる
いろいろやっているとFileMakerでもそろそろ簡単な正規表現が使えるといいなぁと思ったりします
正規表現 - Wikipedia