Crystal报表根据同一表中的另一个值检索一个值

时间:2018-09-24 10:01:43

标签: crystal-reports sap

Crystal的新手,使用SAP Crystal Reports 2013,我需要作为详细信息部分的一部分,基于同一表中不同字段中的记录值返回一条记录。

我有一张桌子,样品:

SAMPLE_NUMBER   TEXT_ID       ORIGINAL_SAMPLE   TEST
1               ParentID27    1                 F
2               ChildID27_1   1                 F
3               ChildID27_2   1                 T
4               ChildID27_3   1                 F

SAMPLE_NUMBER 2、3和4都与SAMPLE_NUMBER 1相关,此链接保留在ORIGINAL_SAMPLE字段中。

在我的水晶报表中,我需要返回TEST = T的所有记录,并提供以下信息。

SAMPLE_NUMBER   PARENT_TEXT_ID     TEXT_ID      
 3              ParentID27         ChildID27_2  

在SQL中,我只需要按如下所示将表连接到自身。

SELECT  S.SAMPLE_NUMBER, Z.TEXT_ID AS PARENT_TEXT_ID, S.TEXT_ID
FROM SAMPLE Z JOIN SAMPLE S ON Z.SAMPLE_NUMBER = S.ORIGINAL_SAMPLE
WHERE S.TEST = 'T'

如何在报告公式字段中获得相同的结果?

2 个答案:

答案 0 :(得分:0)

第二次将同一张表添加到报表中(该表将作为您可以更改的别名添加)并加入。

使用与SQL中相同的逻辑加入。 使用与SQL中相同的逻辑过滤(记录选择公式): 无需公式。只需将所需的列拖动到详细信息部分即可。

答案 1 :(得分:0)

只需使用命令并直接编写SQL。数据库专家是一个非常有限的工具,如果您必须在SQL中进行更改,将来会限制您。此外,Data expert可以生成单个SQL语句,而在命令中,您可以创建脚本并以多个语句处理数据(如果数据库支持)。