Crystal Reports中强制加入选项的好处是什么?

时间:2011-05-25 10:27:00

标签: crystal-reports

SAP Crystal报告中的优势使“链接”对话框中的“加强默认”选项“未强制执行”有什么好处?

是性能问题吗?因为我注意到如果你没有从连接表中选择字段,它将仅生成SELECT查询,只包含所选表的字段而没有任何连接。

这里有一些关于强制加入选项的信息:​​

  • 未强制:选择此选项时,链接 你创建的只在它被使用时使用 Select明确要求 声明。这是默认值 选项。您的用户可以创建报告 基于所选表格而没有 限制(即没有 基于其他表的执法)。

  • 强制执行:选择此选项时 选项,如果“到”表为 使用链接,强制执行链接。 例如,如果您创建链接 使用Enforce从表A到表B. 从中选择一个字段 表B,Select语句将 仍然包括表A的连接 因为它是强制执行的。反过来, 仅从表A中选择 相同的连接条件不会导致

  • 。要加强对表B的加入
  • 强制执行:选择此项时 选项,如果“from”表为 使用链接,强制执行链接。 例如,如果您创建链接 使用Enforce从表A到表B. 从表中选择一个字段 A,表B的连接将是 强制执行,以及Select语句 生成的将包括两者 表

  • 强制执行:选择此选项时 选项,如果是“from”表或 使用此链接的“to”表, 该链接已得到执行。

1 个答案:

答案 0 :(得分:8)

“强制”部分用于强制包含包含未在报告/选择条件中使用的字段的表。

好吧,这就是你所说的。

我的理解:

如果你有两个表(tbl_A,tbl_B)w /一个可链接字段,并且你没有使用第二个表中的任何字段,它可以从select中删除,并且“常规”效果加入可能会消失。

Select 
   'You're account is in default!' as Message,
   tbl_A.full_name, tbl_A.street_address, tbl_A.city, tbl_A.blah_blah
From
   all_customers tbl_A, 
   delinquent_accounts tbl_B
Where
   tbl_A.account_no = tbl_B.account_no

如果没有强制加入,可能会结束

Select 
   'You're account is in default!' as Message,
   tbl_A.full_name, tbl_A.street_address, tbl_A.city, tbl_A.blah_blah
From
   all_customers tbl_A, 

换句话说,您可能最终设置催款信件给您的整个客户群而不仅仅是欠款帐户。 (这就是我们在实施之前测试报告的原因,我猜)。