データ毎に自動設定される登録ユーザ、登録時刻、更新ユーザ、更新時刻という項目を定義することができます。

ここでは「登録ユーザ」「登録時刻」「更新ユーザ」「更新時刻」という4つの項目を追加する方法を説明します。
それぞれの意図は次のとおりです。

項目 説明
登録ユーザ 文字列 このデータの新規登録を行ったログオンアカウントを記録します。登録時に一度だけ値が設定され、以降、変更されることはありません。
登録時刻 日付と時刻 このデータの新規登録を行った日付時刻を記録します。登録時に一度だけ値が設定され、以降、変更されることはありません。
更新ユーザ 文字列 このデータの更新を行ったログオンアカウントを記録します。更新の都度、値が上書きされます。最後に更新されたログオンアカウントが記録されている状態です。
更新時刻 日付と時刻 このデータの更新を行った日付時刻を記録します。更新の都度、値が上書きされます。最後に更新された日付と時刻が記録されている状態です。

図1は、新規登録画面を開いた画面です。各項目の初期値が設定されており、かつ変更不可(読み取り専用)となっています。この段階では、データベースに値は保存されていません。

図1 新規登録画面を開く

図2は、登録が終わった直後の画面です。登録時刻と更新時刻は変更されています。この段階でデータベースに値が保存されます。つまり図1の状態は表示のみで、図2の状態(登録を行った)が確定となります。

図2 登録の直後

図3は、別の利用者が更新を行った画面です。登録時刻と登録ユーザは変更されていません。更新時刻と更新ユーザが上書きされています。

図3 更新の直後

「登録ユーザ」「登録時刻」「更新ユーザ」「更新時刻」の4つはテンプレートとして用意されています。 ギアアイコンからテンプレートを選択することで追加することができます。(図4,図5)

図4 テンプレートを選択する
図5 「登録ユーザ」「登録時刻」「更新ユーザ」「更新時刻」を追加する

項目の詳細

追加された項目の名前は変更可能です。標準では以下のような設定になっています。

「登録時刻」と「更新時刻」の項目の型は「日付と時間」となっています。

図5 型の詳細 - 日付と時間

モデル項目詳細 - 共通

追加した4つの項目すべてで、「読み込み専用」が設定されています

図6 読み込み専用が設定されている

登録時刻の初期値

「登録時刻」項目の初期値として、「登録画面表示時」と「登録時」に "now" が設定されています。これは現在の日付時刻を返す特別な表記です。

now は初期値の設定でのみ指定できます。

now
図7 nowの設定

登録ユーザの初期値

「登録ユーザ」項目の「初期値」として、「登録画面表示時」と「登録時」に "ログオンID" が設定されています。これは現在のログオンアカウントを返します。

図8 ログオンIDの設定

更新時刻の初期値

「更新時刻」項目の「初期値」として、「登録画面表示時」「登録時」「更新時」に "now" が設定されています。これは現在の日付時刻を返す特別な表記です。

now は初期値の設定でのみ指定できます。

now
図9 nowの設定

更新ユーザの初期値

「更新ユーザ」項目の「初期値」として、「登録画面表示時」「登録時」「更新時」に "ログオンID" が設定されています。これは現在のログオンアカウントを返します。

図10 ログオンIDの設定
now 指定と同様なものに、NOW関数があります。しかし固定値として動作させる場合はNOW関数は使わないようにしてください。nowと指定した場合、再計算処理・アップロード更新・メール送信ジョブ機能で更新日付を上書きするかどうかを個別に設定できるようになります。NOW関数を使った場合、一律に更新されます。
「ログオンID」指定と同様なものに、USERNAME関数があります。しかし固定値として動作させる場合はUSERNAME関数は使わないようにしてください。「ログオンID」と指定した場合、再計算処理・アップロード更新・メール送信ジョブ機能で更新者を上書きするかどうかを個別に設定できるようになります。USERNAME関数を使った場合、一律に更新されます。

リポジトリキーは「初期値」と同じです。

Wagby Developer Day 2017