みなさま、こんにちは!
いよいよ来週ですね、【2020 HCL Masters 日本祝賀パーティー】。
みなさまにお会いできることをたのしみにしております!
さて今回の話題です。
弊社内で勤怠管理のアプリケーションを運用しているのですが、事後報告をできないようにするという案件が生じました。
たとえば「朝寝坊したから、今日は在宅で働こう」なんてことを避けるようなイメージです。
※実際の弊社の目的ではありませんので、悪しからず・・・w
最初は作成日フィールド(@created)で判断すればいいのではと考えたのですが、文書が保存できてしまうことは避けたいということになりました。
となると、「入力の確認」で設定するのが一番簡単という判断になりました。
「入力の確認」でよく利用するのが、必須フィールドに設定する
@If([Field_name]="";@Failure("「Field_name」は必須です。");@Success) |
という見慣れた式があります。
@If([Field_name]="";
・・・あとは簡単ですよね。
記事公開後、とある逃げ道があることが判明!!
以下がさらに適切かと思いますので、書き直させて頂きます。
理由・・・?
先の式ですと、クライアント側の日にちをGETしてしまいますので、ごにょごにょごにょ・・・。
@If(StartDate<=@Now([SERVERTIME]);@Failure("[StartDate]は明日以降の日付を指定してください。");@Success) |
ご指摘、ありがとうございました!
念のために動きを見ておきましょう。
「<=」としていますので、本日の(2020/1/24)以前の日付だとエラーになるはずです。
無事、想定通りの結果が得られました。
もちろん明日の日付ですと、エラーは出ません。
・・・この画面だけではわからないのですが(汗
フィールドがエラーになっている以上、文書も保存することができません。
また一時的に明日以降の日付で保存し、本日以前に日付を変更したとしても、エラーになります。
以上、お恥ずかしながら至って簡単な内容ではありますが、それなりに効果のある設定でしたので、記事にしてみました。
なお弊社インフラですが、すったもんだがありまして、昨日よりV11のサーバー構築がスタートしています。
構築そのものはパートナーSE様に依頼していますので、作業内容等は今後書ける範囲で紹介させて頂きます。
予定としては、来週末にサーバー群が設置、結線。
再来週末にインフラの入れ替えを予定しています。
実際のDominoサーバーの更新は2/末から3/中になりそうです。
今回、VDIのOS入れ替えのため、各個人のWindows環境は新規作成します。
従ってノーツクライアントも新しいOSに新規インストールしたパターンを配布することになるのですが、この配布手順をどうするかが今後の課題になりそうです。
今までと違い、IDVaultが有効化されますので、なんとか作業工数を減らすことができないか検討致しますので、このあたりもテスト内容含めてご報告したいと予定しています。
それではみなさま、まずは来週!!!