1

我正在尝试开发一个可供 2 个用户(A&B)使用的水晶报告,该报告显示价值和数量。但是,对于用户 B,只允许查看数量。如何使值被视为“***”或“###”?

4

1 回答 1

0

这实际上并不是那么简单,因为 Crystal Reports 没有内置“授权”功能。

实现它的一种方法是通过公式字段,如果一个人被“认证”,则显示一个值,否则显示另一个值。您可能不想对用户代码进行硬编码,但您可以在用户表中使用诸如 UDF 之类的东西来控制权限。您也可以使用自定义授权,但这可能需要更多的工作。

假设您的用户表中有一个名为“Crystal Authorization (U_CRYSTAL_AUTH)”的 UDF,它是一个 True/False 字段,并且您使用 UserCode@ 参数令牌将正确的 OUSR 记录引入到您的报告中(这为您提供当前用户的用户代码),然后您可以在 Crystal 中为要过滤的每个字段创建一个公式,如下所示(假设这是显示文档总计的字段):

if {OUSR.U_CRYSTAL_AUTH} = "T" then
   {OINV.DocTotal}
else
   "***"
于 2016-12-07T18:46:50.750 回答