我现在用了一个PivotTable,想加上一个自定义度量值,用于实现环比
该怎么弄呢?
那个计算列里面似乎没有时间呢
可以写MDX吗?写到哪?
谢谢

解决方案 »

  1.   

    http://www.microsoft.com/china/MSDN/library/archives/library/techart/odc_Accessowc.asphttp://webmail.vh.com.tw/Microsoft/Microsoft%20Office%202000%20Web%20Components%B5{%A6%A1%B3]%ADp%B6}%B5o%AB%FC%ABn/4.htm不懂这个, 不知道有没有帮助, 加油.
      

  2.   

    http://www.codeproject.com/csharp/ChartOWC.asp
      

  3.   

    OWC不能直接使用MDX语句,因为他是在内部自己组装的
    不过也没有问题
    MDX的with语句的作用不用我多说了,我们就直接把WITH之后的东西添加到相应的地方,一个一个的,如果多个的话就添加多次
      

  4.   

    以一个计算度量值为例,代码大概应该是这样的WITH MEMBER Measures.[Amount Change Rate] AS 
      IIF(ISEMPTY(([Measures].[Internet Sales Amount],[Date].[Fiscal].CurrentMember.PrevMember)), "", 
       [Measures].[Internet Sales Amount]/
      ([Measures].[Internet Sales Amount],[Date].[Fiscal].CurrentMember.PrevMember) -1
      ), FORMAT_STRING = '0%'
    SELECT 
    {[Measures].[Internet Sales Amount], Measures.[Amount Change Rate]} ON 0,
    [Date].[Fiscal].[Month].Members
     ON 1
    FROM [Adventure Works]
    这个MDX是百度出来的,我就不改了加入到OWC中的方法就是string exp = "IIF(ISEMPTY(([Measures].[Internet Sales Amount],[Date].[Fiscal].CurrentMember.PrevMember)), \"\", 
       [Measures].[Internet Sales Amount]/
      ([Measures].[Internet Sales Amount],[Date].[Fiscal].CurrentMember.PrevMember) -1
      )";
    _view.DataAxis.InsertTotal(_view.AddCalculatedTotal("环比", "环比", exp, 0), objPTView.DataAxis.Totals.Count);
    _view.DataAxis.Totals["环比"].NumberFormat = "0%";其中_view是一个PivotTableClass实例的ActiveView,具体怎么弄的lz应该明白了吧?