将Office 图表组件(OWC)绑定到数据透视表的方法

        <p align="Center">
            <button id="btnOneChart" style="width:200" οnclick="btnOneChart_OnClick();">显示量值群组到一个图</button>&#xa0;&#xa0;
            <button id="btnMultiChart" style="width:200" οnclick="btnMultiChart_OnClick();">每个量值分开图显示</button>&#xa0;&#xa0;
      
            <br/><br/>
<%--            <object classid="clsid:0002E556-0000-0000-C000-000000000046" id="CSpace" width="95%" height="55%">
            </object>
            <br/><br/>
            <object classid="clsid:0002E552-0000-0000-C000-000000000046" id="PTable" width="95%" height="35%">
                <param name="AutoFit" value="false"/>
            </object>--%>
            <object classid="clsid:0002e55d-0000-0000-c000-000000000046" id="CSpace" width="95%" height="55%">
            </object>
            <br/><br/>
            <object classid="clsid:0002e55a-0000-0000-c000-000000000046" id="PTable" width="95%" height="35%">
                <param name="AutoFit" value="false"/>
            </object>
        </p>
        <input type="hidden" id="OlapConnStr" value="<%=System.Configuration.ConfigurationSettings.AppSettings["olapConnStr"].ToString() %>" />
        <script language="javascript" type="text/javascript">
            var c;
            var sServerName;
            c = CSpace.Constants;
            sServerName = "localhost";
            btnBreakOut.disabled = true;
//          BuildPivot(); 
           
//            alert(document.getElementById("OlapConnStr").value);//test
            BuildPivot(document.getElementById("OlapConnStr").value);            
           
            function BuildPivot(olapConnStr)
            {

                var c;
                var sServerName;
                c = CSpace.Constants;
                sServerName = "localhost";
               
                PTable.ConnectionString =olapConnStr;
                PTable.DataMember = "EnergyCube";
                CSpace.DataSource = PTable;          
                CSpace.Charts(0).Type = c.chChartTypeBarClustered;

                CSpace.HasMultipleCharts = false; 
                CSpace.PlotAllAggregates = c.chPlotAggregatesSeries;
                CSpace.HasChartSpaceLegend = true; 
                btnBreakOut.disabled = false;          
            }
           
            function BuildPivot()
            {          
    
               PTable.ConnectionString = "Provider=MSOLAP.3;Persist Security Info=true;Initial Catalog=SSASDB;Data Source=localhost;Catalog=SSASDB;Client Cache Size=25;Auto Synch Period=10000";
    
               PTable.DataMember = "EnergyCube";
               CSpace.DataSource = PTable;
    
              
                CSpace.Charts(0).Type = c.chChartTypeBarClustered;
              
                CSpace.HasMultipleCharts = false;
                CSpace.PlotAllAggregates = c.chPlotAggregatesSeries;
                CSpace.HasChartSpaceLegend = true;
                btnBreakOut.disabled = false;
            }

            function btnOneChart_OnClick()
            {             
                CSpace.HasMultipleCharts = false;
                CSpace.PlotAllAggregates = c.chPlotAggregatesSeries;
                CSpace.HasChartSpaceLegend = true  ;
                btnBreakOut.disabled = false;
            }

            function btnMultiChart_OnClick()
            {
                CSpace.HasMultipleCharts = true;
                CSpace.PlotAllAggregates = c.chPlotAggregatesCharts;
                CSpace.HasChartSpaceLegend = false;
                CSpace.ChartWrapCount = 3;
                CSpace.HasChartSpaceLegend = true ;   
                NormalizeAxes();
                btnBreakOut.disabled = false;
            }

 

            function NormalizeAxes()
            {
               if(CSpace.Charts.Count>0 )
               {
                  var ValueMax;

                  for(oCht in CSpace.Charts)
                  {
                     max = oCht.Axes(c.chAxisPositionValue).Scaling.Maximum;
                     if (ValueMax < max)
                     {
                        ValueMax = max;
                     }             
                  }
                  for(oCht in CSpace.Charts)
                  {
                     oCht.Axes(c.chAxisPositionValue).Scaling.Maximum = ValueMax;
                  }
               }
            }       
        </script>    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值