代码之家  ›  专栏  ›  技术社区  ›  Strawberryshrub

从Lookup()钻取参数值

  •  0
  • Strawberryshrub  · 技术社区  · 7 年前

    您好,我正在尝试将查找到的值作为钻取参数传递给子报表。我有两个数据集 数据集1 数据集2 . 我的小报看起来像这样

    =Fields!Number.Value 'Column1 expression (Dataset1)
    =Lookup(Fields!Number.Value, Fields!NumberKey.Value, Fields!Order.Value, "Dataset2") 'Column2 expression (Dataset2)
    
    Column1    Column2
    1          123
    2          678
    

    现在我想使用Column2中的值作为钻取参数。在期权之下 操作->转到报告 我已经尝试过不同的方法,但没有一种有效。对于参数传递值,我尝试了:

    =Lookup(Fields!Number.Value, Fields!NumberKey.Value, Fields!Order.Value, "Dataset2")
    =Lookup(Fields!Number.Value, Fields!NumberKey.Value, Fields!Order.Value, "Dataset2").Value
    =Lookup(Fields!Number.Value, Fields!NumberKey.Value, Fields!Order.Value, "Dataset2").UniqueName
    =ReportItems!OrderTextbox.Value
    =ReportItems!OrderTextbox.UniqueName
    

    1 回复  |  直到 7 年前
        1
  •  0
  •   Strawberryshrub    7 年前

    我找到了解决办法。由于查找的原因,参数(内部)的名称不同。我传递的参数的名称是

    [OrderDimension].[OrderNumber].&[001234] 
    

    子报表参数的名称为

    [Orders].[OrderNr].&[001234]
    

    这是行不通的,即使两者的价值相同。当我这样写传递的参数值时,我解决了这个问题

    ="[Orders].[OrderNr].&[" & Lookup(Fields!Number.Value, Fields!NumberKey.Value, Fields!Order.Value, "Dataset2") & "]"
    
    推荐文章