【问题标题】:LookupSet based on two fields combined instead of one基于两个字段组合而不是一个字段的 LookupSet
【发布时间】:2012-11-07 13:30:26
【问题描述】:

我有两个数据集:Dataset1(主要)和 Dataset2。我的报表数据集是 Dataset1。

我想从 Dataset2 访问毛保费金额并将其放入报告中。如果“市场名称”的参数是单值参数,则报告工作正常。

当我将参数属性设置为“允许多个值”时,我的报告显示错误的“生产”字段总计。问题是因为lookupset函数是基于Currency_Type的。

我应该做的是搜索每个市场名称和每种货币类型,然后在第二个数据集中搜索适当的总溢价并返回值。

数据集1:

Market Name      Currency Type     Receivable

数据集2:

Company Name2    Currency Type1    Gross Premium Amount

结果应该是这样的:

Market Name      Currency Type     Receivable             Gross Premium Amount

如果搜索一个值,我使用此代码:

=code.SumLookup(LookupSet(Fields!Currency_Type.Value, Fields!Currency_Type1.Value,Fields!Gross_Premium_Amount.Value, "DataSet2"))

如果我想结合基于市场名称和货币类型的查找集,我应该怎么做?

【问题讨论】:

    标签: ssrs-2008 reporting-services reportbuilder


    【解决方案1】:

    您可以在查询中加入数据集吗?如果可能的话,那会容易得多。否则,您需要有一些方法来分解您的多值参数,例如将它作为一个元素包含在您的第一个数据集中。 (如果合适的话,甚至可能是交叉连接。)

    但是要直接回答你的问题

    如果我想结合基于市场名称和货币类型的查找集,我应该怎么做?

    [请注意,这与如何查找多值参数没有太大关系。]

    我已经通过在我的查询中从两条信息创建一个键来解决这个问题,例如使用字符串连接,但你也可以在你的 LookupSet 函数中做同样的事情:

    =LookupSet(Fields!Currency_Type.Value +"-" + Fields!MarketName.Value, Fields!Currency_Type1.Value + "-" + Fields!Market_Name.Value, Fields!Gross_Premium_Amount.Value, "DataSet2"))

    这仅在 MarketName 是您的第一个数据集中的值时才有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-24
      • 2020-08-31
      • 2020-09-06
      • 1970-01-01
      • 1970-01-01
      • 2015-04-09
      • 1970-01-01
      相关资源
      最近更新 更多