Sql 相当于Crystal Reports中的WHERE子句
这个水晶报告程序被扔在我的膝上,我对它是全新的。我理解这个概念,但我在这里遇到了麻烦 还有一个类似的问题: 但它和答案都指向(似乎是)“总计”列,而我只想在其中一列(在本例中,如果“CostType”等于0)时显示行 我从两个数据表中读取数据来创建此报告。它们通过公共列名(ItemKey)连接。不幸的是,在第二个表中,同一项有多条记录。我只想要CostType为0的项目 这在SQL中非常简单,即使对于像我这样的初学者来说也是如此,但我不知道如何用Crystal Reports有效地说:“仅在CostType为0时显示项目” 项目成本表(示例): 项目表(示例):Sql 相当于Crystal Reports中的WHERE子句,sql,crystal-reports,where,Sql,Crystal Reports,Where,这个水晶报告程序被扔在我的膝上,我对它是全新的。我理解这个概念,但我在这里遇到了麻烦 还有一个类似的问题: 但它和答案都指向(似乎是)“总计”列,而我只想在其中一列(在本例中,如果“CostType”等于0)时显示行 我从两个数据表中读取数据来创建此报告。它们通过公共列名(ItemKey)连接。不幸的是,在第二个表中,同一项有多条记录。我只想要CostType为0的项目 这在SQL中非常简单,即使对于像我这样的初学者来说也是如此,但我不知道如何用Crystal Reports有效地说:“仅在C
结果是:
Item Description Mode
Box Whatever EE
Square Random AB
Circle Unimportant GE
我想展示的是:
Item Description Mode
Box Whatever EE
Square Random AB
我希望这一切都有意义。基本上,如果这是一个SQL查询,我会在最后说“WHERE CostType=0”,我不会得到所有其他具有不同成本类型的项目 我应该提到,这完全由Crystal Reports处理。我没有使用SQL字符串并传入它或其他东西。显示窗口的功能如下:
Dim PartsDemandReport As CrystalDecisions.CrystalReports.Engine.ReportDocument = New crptIndentedBomXLBom
PartsDemandReport.SetDataSource(GLOBAL_VARIABLES.GlobalBomIndented)
Dim CrystalReportViewerForm As New frmCrystalReportViewer
CrystalReportViewerForm.CrystalReportViewer1.ReportSource = PartsDemandReport
CrystalReportViewerForm.Show()
PartsDemandReport = Nothing
如果有办法简单地强制Crystal Reports添加“WHERE CostType=0”,那就太好了。提前感谢。有两种方法可以做到这一点:
CostType不等于0
,那么您可以直接输入select expert
,它充当crystal报告的where子句
Report-->Selection Formula-->Record
在下面的添加行中打开此公式窗口
CostType = 0
这将确保仅从数据库检索成本类型=0
2.如果您需要成本类型0
报告中的任何位置。然后为项目
、说明
和模式
列添加以下条件
示例
@Item:
if cost type = 0
then <<Database Item field >>
@项目:
如果成本类型=0
然后
将其放置在“项目”列的“详细信息”部分
其他栏目也是如此。非常好。非常感谢你。今天是休息日,但只要我能回到办公室,我就会试试这个。Np@Keith。。。如果你遇到任何问题,请告诉我。经过一个漫长的周末,我终于回到了办公室。我尝试了您的解决方案,但有一个调整:将“CostType=0”作为“记录选择”放在“组选择”下是行不通的。你不知道你为我节省了多少时间。非常感谢你!如果我有15个必须投票的人,我会投票@基思。。。没问题。。。我很高兴问题解决了。。。很高兴一直帮助你。。。不要将您的条件放在
组
下,而是将您的条件放在另一个可用的选项上,即记录
知道为什么组会做想要做的事情而不是记录吗?
CostType = 0
@Item:
if cost type = 0
then <<Database Item field >>