現在のユーザー名を返します。
ユーザー名に階層が付いている場合、ユーザー名は正規の基準書式 (CN、OU、O、C の識別子付きの書式) で返されます。名前が省略書式 (CN、OU、O、C の識別子を省略した書式) で返されるようにするには、@V3UserName を使用します。
@UserName ( index )
index
数値。オプション。ユーザー名のインデックスを指定します。ユーザー名の場合は 0 を指定し、ユーザー名の別名の場合は 1 を指定します。このパラメータを省略すると、ユーザー名が返されます。
name
文字列。プライマリユーザー名またはユーザー名の別名。
式がサーバー上で実行される場合は、エージェントの署名者が現在のユーザーとみなされます。そのため、@UserName を使用する場合は、ユーザー名を返すローカルのデータベース上だけで使用する必要があります。サーバーベースの個人ビューで @UserName を使用してもユーザー名が返されますが、Updall を使用してサーバー上のビューを再構築した場合、予期しない結果が発生することがあります。@UserName を共有ビューで使用すると予期しない結果が生じることがあるので、使用しないでください。また、参照しているフィールドを変更すると、新しい情報を反映するために索引を再作成する必要があるので、予期しない結果が生じることがあります。
@UserName を使用すると、現在のユーザーに関連する文書だけを表示できます。例えば、[Service Request] データベースの [Assignments] という個人ビューで @UserName を使用して、各技術者の割り当てを、他の技術者のものとは別に表示します。
SELECT @UserName=AssignedTo
ただし、この場合でもすべての文書を呼び出すような個人ビューを作成できるので、@UserName をセキュリティ手段として使用することはできません。
現在のユーザーに関連する文書のみを表示する別の方法については、「埋め込みビューでカテゴリを 1 つだけ表示するには」を参照してください。
R5 を使用していてユーザー名だけでなくユーザー名の別名も登録されている場合は、@UserName の拡張機能を使用するときはユーザー名の別名を作成者情報として文書に格納しておくことをお勧めします。
@UserName(0)
@Name([CN];@UserName)
@UserName(1)
@Right(@UserName;" ")
@UpperCase(@Right(@UserName;" "))
ユーザー ID が階層 ID の場合は、次のコードによって FLETCHER が返されます。
@UpperCase(@Right(@Name([CN]; @UserName); " "))
@UserName