Crystal reports 删除一组Crystal reports中的重复结果
My SQL存储过程返回以下结果:Crystal reports 删除一组Crystal reports中的重复结果,crystal-reports,Crystal Reports,My SQL存储过程返回以下结果: ID District Decision ----------------------- 17 First Approved 17 First Partially approved 17 First Pending 17 Second Approved 17 Second Partially approved 17 Second Pending 我的Crystal报告中也产生了同样的结果。地区和决策列
ID District Decision
-----------------------
17 First Approved
17 First Partially approved
17 First Pending
17 Second Approved
17 Second Partially approved
17 Second Pending
我的Crystal报告中也产生了同样的结果。地区和决策列没有任何关系。它们都只与ID(requestId)相关。由于加入了3个表,我得到了每个地区的重复结果。到目前为止,我能够按ID对记录进行分组并抑制重复的行。这样做之后,我的报告中有以下内容:
ID District Decision
-----------------------
17 First Approved
Partially approved
Pending
Second Approved
Partially approved
Pending
到目前为止还不错,但我最终想要得到的是如下所示:
ID District Decision
----------------------
17 First Approved
Second Partially approved
Pending
我希望删除所有空格(在抑制重复后留下),并在ID组中只留下不同的记录
我想在Crystal Reports中完成所有工作,这就是为什么我排除了SQL server中的变通方法如果编辑SQL不是一个选项,那么您就走上了正确的道路。简而言之,您需要:
@YourFormula
),如果上一条记录具有相同的ID和地区,则该公式的计算结果为True。(提示:使用PREVIOUS()
函数。)@YourFormula
这一切都取决于您的记录是否正确分组。如果它们有时出现错误,您可能需要编辑当前的SQL。F.Y.I.您可以在Crystal Reports中编写自己的SQL命令。只需进入数据库专家,选择您的连接,然后选择Add命令。感谢@4444的回复。有点不对。我遵循了你解释的步骤,但我得到了相同的结果。我使用的公式是:{usp_storedProcedure;1.ID}=previous({usp_storedProcedure;1.ID})和{usp_storedProcedure;1.District}=previous({usp_storedProcedure;1.District})如果不看/不懂你的报告,很难诊断这个问题。您反对在Crystal中编写自定义SQL命令吗?这会让你更好地控制报告内容。抱歉@4444回复太晚。我暂时解决了在存储过程中使用游标的问题,但如果您能给我一些关于如何在Crystal中使用自定义SQL命令的清晰示例,我将非常高兴!当然-基本上,您添加SQL命令的方式就像它是数据库中的另一个表一样。在通常选择新表的地方,单击Add命令并在那里编写SQL查询。