如何使用用户 ID 和用户登录时间向 Cognos 报告添加水印?
How do I add a watermark to Cognos report with user id and user login time?
如何使用用户 ID 和用户登录时间向 Cognos 报告添加水印?
我不知道如何添加 watermark,但您可以使用 Macros 选项卡上提供的许多宏函数和参数中的一些将这些信息添加到页面(我会使用页脚)数据项表达式对话框。
我正在使用 Active Directory 命名空间,因此我将添加用户 ID:
#sq($account.personalInfo.userName)#
要添加会话开始时间,您可能需要审核数据库正常工作。我会创建一个查询,结果 SQL 看起来像:
select l.COGIPF_LOCALTIMESTAMP
from COGIPF_USERLOGON l
where l.COGIPF_LOGON_OPERATION = 'Logon'
and l.COGIPF_SESSIONID = 'F14BADE9BABDB106F4A8ACEC7962D7F4B4002E012F1FFA312A7D86E533D5E21A'
宏返回的sessionID 开头会包含附加信息。您也许可以使用如下所示的过滤器:
[Audit].[User Logins].[Session ID] = substring(#sq($sessionID)#, 5, 64)
但可能并不总是恰好有 4 个前导字符,会话 ID 可能并不总是恰好有 64 个字符。你需要测试。
如何使用用户 ID 和用户登录时间向 Cognos 报告添加水印?
我不知道如何添加 watermark,但您可以使用 Macros 选项卡上提供的许多宏函数和参数中的一些将这些信息添加到页面(我会使用页脚)数据项表达式对话框。
我正在使用 Active Directory 命名空间,因此我将添加用户 ID:
#sq($account.personalInfo.userName)#
要添加会话开始时间,您可能需要审核数据库正常工作。我会创建一个查询,结果 SQL 看起来像:
select l.COGIPF_LOCALTIMESTAMP
from COGIPF_USERLOGON l
where l.COGIPF_LOGON_OPERATION = 'Logon'
and l.COGIPF_SESSIONID = 'F14BADE9BABDB106F4A8ACEC7962D7F4B4002E012F1FFA312A7D86E533D5E21A'
宏返回的sessionID 开头会包含附加信息。您也许可以使用如下所示的过滤器:
[Audit].[User Logins].[Session ID] = substring(#sq($sessionID)#, 5, 64)
但可能并不总是恰好有 4 个前导字符,会话 ID 可能并不总是恰好有 64 个字符。你需要测试。