Crystal reports CR 10中7个不同字段的排序参数

Crystal reports CR 10中7个不同字段的排序参数,crystal-reports,Crystal Reports,我正在尝试为CR10中的所有7个字段编写排序字段参数。我按照“帮助”部分中的说明-使用参数字段定义排序顺序-目前只尝试了3个字段。我不能让两者都正常工作,我不确定这是否可能 这是我的。 我的报告最初按1个付款人ID和2个索赔编号进行分组。我删除了这些组,并将字段移到了详细信息部分。以下是字段: `Claim# Payer ID Payer Name Account# Name Billed Amt Date` 我创建了一个名为Sort Field的参数,选择了string,并确保我的min和m

我正在尝试为CR10中的所有7个字段编写排序字段参数。我按照“帮助”部分中的说明-使用参数字段定义排序顺序-目前只尝试了3个字段。我不能让两者都正常工作,我不确定这是否可能

这是我的。 我的报告最初按1个付款人ID和2个索赔编号进行分组。我删除了这些组,并将字段移到了详细信息部分。以下是字段:

`Claim#
Payer ID
Payer Name
Account#
Name
Billed Amt
Date`
我创建了一个名为Sort Field的参数,选择了string,并确保我的min和max设置为一。将以下内容放入提示文本中:

`C = Claim
I = Payer ID
P = Payer Name
A = Account#
N = Name
B = Billed Amt
Date is Default`
我创建了一个公式,称之为排序。如上所述,我尝试了所有7个字段,也只有3个字段-我的主要关注点是所有字段

`If {?SortField} = "C" 
Then totext({table.ClaimNumber},"########")
ElseIf {?SortField} = "I" 
Then totext({table.ID_Payer},"########")
ElseIf {?SortField} = "P" 
Then {table.PayerName}
ElseIf {?SortField} = "A" 
Then totext({table.Account},"#######")
ElseIf {?SortField} = "N" 
Then {table.Last_Name}
ElseIf {?SortField} = "B" 
Then totext({table.ClaimGrossCharge},"#########.##")
Else totext({table.SubmittedDate},"")`
然后,我将
@Sort
放在报告标题中,并在“专家”部分中取消。我还将以下公式包括在记录选择中:

`{table.SubmittedDate} >= {?Submitted Date From} and
{table.SubmittedDate} <= {?Submitted Date To} and
{@Sort} = {?SortField}`
`{table.SubmittedDate}>={?提交日期自}和

{table.SubmittedDate}这是一个有点长的问题,但我会尽力回答到我能理解的程度

我假设
排序(根据您编写的公式)
您的意思是只显示客户选择的那些值,并将其余值置上,我的答案将支持此想法。如果这不是你要找的,让我知道,我会尽量回答

  • 您不应该在记录选择公式中使用
    {@Sort}={?SortField}
    ,因为这将在数据库中直接触发,并且根据您的设计,这不会返回任何数据,因为您的参数值与数据库中的数据不匹配。所以从记录选择中删除此部分

  • 请务必将您的
    排序
    公式放在报告标题中,因为它不会获取标题中的完整数据,并且对suppress没有任何用处

  • 当您将所有字段放置在详细信息部分时,您可以使用创建的
    排序
    公式来代替原始字段,原始字段将根据用户选择执行操作

  • 如果要获取重复数据,则需要检查表的链接,或在数据库选项卡中选中选项
    选择不同数据
    ,该选项将删除重复数据