"作成時の計算結果"は「文書の作成時に1回だけ計算されるフィールド」ということになっています。
大抵その通りなのですが、そうでない場合があります。
イメージ 1


Notes/Dominoの開発者には、そこそこ知られていそうな割に、記載が見当たらない(もしくは少ない)ことのひとつなので書いておこうと思います。

そうでない場合とは、
既に利用中のNotes DBで、既存のフォームに、新しい"作成時の計算結果"を追加した場合。

問題は、既存文書を改修後のフォームで開いた際の動作です。
    既存文書には、その新しいフィールドは入っていません。

    ユーザーが文書を開いたとき、初めてフィールドが生成され、計算されます。
    ただしユーザーが編集保存せずに、そのまま閉じた場合は、実際には何も残らない。
    ユーザーが開く都度、内部でフィールドが生成され、計算されるけど…保存されない限りはそのまま。

    ユーザーが編集保存を行った場合に、初めて値が文書内に残ります。
以降は誰が開いても、値は変わりません。


仮に、新しい"作成時の計算結果"フィールドに、@UserNameを使って名前を表示する式がある場合。
    Yamadaさんが文書を開けば、Yamadaさんの名で生成され、Yamadaさんが編集保存しなければ残らず。
    Suzukiさんが文書を開けば、Suzukiさんの名で生成され、Suzukiさんも編集保存しなければ残らず。

    保存されない限りは、誰が開いても、開いた人がそれぞれ自分のユーザー名を目にすることになります。

    Takahashiさんが開いたときに、編集保存すれば、そこで初めて値が確定し、Takahashiさん名で残ります。

    以降は、誰が開いても表示されるのはTakahashiさんです。

保存しなければ値が確定しない点は、
新規文書を作成した画面のまま保存しなかった場合と、同じといえば同じ、ともいえそうですが
既存文書の場合は、読み込みで開いただけで編集しなくても一時的に作成され、値が表示される点が要注意です。

"作成時の計算結果"といえば、「文書作成者」や「作成日時」といった用途が思いうかびます。
しかし、既存のフォームに後からフィールドを追加した場合には、
単に「現在のユーザー」や「現在の日時」を式として入れるだけでは失敗することになります。

前述の例も、開発者は文書を作成した人を表示するつもりで追加しており
Takahashiさんで保存された文書も最初に作ったのはYamamotoさんだったかもしれません。

したがって、文書作成時の情報を意図した"作成時の計算結果"を、後から追加する場合には、
次のような工夫が必要です。

(1)可能なら、現在の情報をセットする式ではなく、本当に文書が作成された時点の情報をセットする
    ほかに作成者を表す既存フィールドがあればその情報を利用します。
    ご参考ですが、大抵の場合、$UpdatedByフィールドの先頭は作成者ということになります。エントリを制限してる場合など正しくない場合もありうるので、汎用的にお勧めはできないですが。
    作成日時は@Createdフィールドがあります。

(2)文書作成時点の情報がない場合は、既存文書に現在の値をセットしない工夫をする
    @IsNewDoc関数を使用して、新規文書の時以外は値をセットしないなど。

軽いまとめとして、首題について私の認識を書くと、
"作成時の計算結果"は、
"文書作成時の計算結果" というより
"フィールド作成時の計算結果" というとらえ方が正確だと思います。

そうとらえると、上記の振る舞いについても理解し易いのではないかと。