1

大家好,我将 Crystal Reports 与 Visual Studio 2010 一起使用,并且遇到以下我似乎无法解决的问题。我有一个名为 name 的参数,我这样做是为了让用户从员工姓名的下拉列表中进行选择。这是一个可选参数,因此用户可以不选择任何内容,在这种情况下,我希望报告显示所有员工,但员工名称字段为空的行除外。现在我想我把它的第二部分记下来了,因为我在细节部分放了一个公式,似乎隐藏了所有空员工。问题是,如果我未选择该参数,则报告仅显示字段员工姓名为空的行。我创建了一个这样的公式:

if not (hasvalue(({?Zaduzioc}))) then True 

    else if  
    hasvalue({?Zaduzioc})  then  
    {Inventar_Model_ReportClass.ImeZaduzioca} in {?Zaduzioc} and
    {Inventar_Model_ReportClass.Status} = "Aktivno"

现在,如果我将它与不同的报告和参数一起使用,但该参数没有空值,那么这个完全相同的公式对我有用,所以我猜它等同于如果有空值,则仅显示那些行,如果不显示所有内容。问题是我不知道如何告诉它显示所有内容。

任何帮助将不胜感激。

4

2 回答 2

1

我设法使它工作,问题出在我没有将可选设置为true的参数的编辑中,忽略了它,一旦我这样做了,它就全部工作了。因此,回顾一下遇到此问题的任何人:使您的参数集可选为 true,并将其放入记录选择的公式中:

if not (hasvalue(({?Parameter}))) then True  

else if  
hasvalue({?Parameter})  then  
{table.column} in {?Parameter}

应该是这样的。

于 2013-03-26T10:18:25.437 回答
1

如果您从下拉列表中选择,您可以添加一个项目,Value = ALL,Description = ALL。将默认值设置为此值。然后在选择专家中,将其添加到您的选择查询中:

.... AND (IF {?Parameter} = 'ALL' THEN {databasefield} = {databasefield} ELSE {databasefield} = {?Parameter})

于 2014-06-30T20:08:27.550 回答