`

OLAP 控件使用

阅读更多
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" 
			   creationComplete="creationCompleteHandler();"
			   minWidth="955" minHeight="600">  
	
	<!-- ====== Properties of parent ======================= -->  
	<s:layout>
		<s:BasicLayout/>
	</s:layout>   
	
	<!-- ====== MetaData =================================== -->  
	
	<!-- ====== Styles ===================================== -->  
	
	<!-- ====== Script ===================================== -->  
	<fx:Script>
		<![CDATA[
			import mx.collections.ArrayCollection;
			import mx.controls.Alert;
			import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn;
			import mx.events.CubeEvent;
			import mx.olap.IOLAPAxisPosition;
			import mx.olap.IOLAPCube;
			import mx.olap.IOLAPElement;
			import mx.olap.IOLAPMember;
			import mx.olap.IOLAPQuery;
			import mx.olap.IOLAPQueryAxis;
			import mx.olap.OLAPQuery;
			import mx.olap.OLAPResult;
			import mx.olap.OLAPSet;
			import mx.rpc.AsyncResponder;
			import mx.rpc.AsyncToken;
			import mx.rpc.events.FaultEvent;
			include "dataIntro.as"
			private function creationCompleteHandler():void {
				// You must initialize the cube before you
				// can execute a query on it.
				myMXMLCube.refresh();
			}
			// Create the OLAP query.
			private function getQuery(cube:IOLAPCube):IOLAPQuery {
				// Create an instance of OLAPQuery to represent the query.
				var query:OLAPQuery = new OLAPQuery;
				// Get the row axis from the query instance.
				var rowQueryAxis:IOLAPQueryAxis =
					query.getAxis(OLAPQuery.ROW_AXIS);
				// Create an OLAPSet instance to configure the axis.
				var productSet:OLAPSet = new OLAPSet;
				// Add the Product to the row to aggregate data
				// by the Product dimension.
				productSet.addElements(
					cube.findDimension("ProductDim").findAttribute("Product").children);
				// Add the OLAPSet instance to the axis.
				rowQueryAxis.addSet(productSet);
				// Get the column axis from the query instance, and configure it
				// to aggregate the columns by the Quarter dimension.
				var colQueryAxis:IOLAPQueryAxis =
					query.getAxis(OLAPQuery.COLUMN_AXIS);
				var quarterSet:OLAPSet= new OLAPSet;
				quarterSet.addElements(
					cube.findDimension("QuarterDim").findAttribute("Quarter").children);
				colQueryAxis.addSet(quarterSet);
				return query;
			}
 
			
			// Event handler to execute the OLAP query
			// after the cube completes initialization.
			private function runQuery(event:CubeEvent):void {
				// Get cube.
				var cube:IOLAPCube = IOLAPCube(event.currentTarget);
				// Create a query instance.
				var query:IOLAPQuery = getQuery(cube);
				// Execute the query.
				var token:AsyncToken = cube.execute(query);
				// Set up handlers for the query results.
				token.addResponder(new AsyncResponder(showResult, showFault));
			}
			// Handle a query fault.
			private function showFault(error:FaultEvent, token:Object):void {
				Alert.show(error.fault.faultString);
			}
			// Handle a successful query by passing the query results to
			// the OLAPDataGrid control..
			private function showResult(result:Object, token:Object):void {
				if (!result) {
					Alert.show("No results from query.");
					return;
				}
				myOLAPDG.dataProvider= result as OLAPResult;
			}
			
			// Callback function that hightlights in green
			// all cells with a value greater than or equal to 1000.
			 public function myStyleFunction(row:IOLAPAxisPosition, column:IOLAPAxisPosition,
										value:Number):Object
			{
				if (value >= 120)
					return {color:0x00FF00};
				// Return null if value is less than 120.
				return null;
			} 
 
		]]>
		
	</fx:Script>
	<!-- ====== Declarations =============================== -->  
	<fx:Declarations>
		<mx:OLAPCube name="FlatSchemaCube"
					 dataProvider="{flatData}"
					 id="myMXMLCube"
					 complete="runQuery(event);">
			<mx:OLAPDimension name="CustomerDim">
				<mx:OLAPAttribute name="Customer" dataField="customer"/>
				<mx:OLAPHierarchy name="CustomerHier" hasAll="true">
					<mx:OLAPLevel attributeName="Customer"/>
				</mx:OLAPHierarchy>
			</mx:OLAPDimension>
			<mx:OLAPDimension name="ProductDim">
				<mx:OLAPAttribute name="Product" dataField="product"/>
				<mx:OLAPHierarchy name="ProductHier" hasAll="true">
					<mx:OLAPLevel attributeName="Product"/>
				</mx:OLAPHierarchy>
			</mx:OLAPDimension>
			<mx:OLAPDimension name="QuarterDim">
				<mx:OLAPAttribute name="Quarter" dataField="quarter"/>
				<mx:OLAPHierarchy name="QuarterHier" hasAll="true">
					<mx:OLAPLevel attributeName="Quarter"/>
				</mx:OLAPHierarchy>
			</mx:OLAPDimension>
			<mx:OLAPMeasure name="Revenue"
							dataField="revenue"
							aggregator="SUM"/>
		</mx:OLAPCube>
	</fx:Declarations>   
	
	<!-- ====== UI Components ============================== -->     
	<mx:OLAPDataGrid id="myOLAPDG" width="100%" height="100%" 
					    styleFunction="myStyleFunction"/>
</s:Application>




dataIntro.as
[Bindable]
private var flatData:ArrayCollection = new ArrayCollection([
	{customer:"A1", product: "ColdFusion", quarter:"Q1", revenue:1.00},
	{customer:"A2", product: "ColdFusion", quarter:"Q1", revenue:1.00},
	{customer:"A3", product: "ColdFusion", quarter:"Q1", revenue:1.00},
	{customer:"A2", product: "Flex", quarter:"Q1", revenue:102.00},
	{customer:"A3", product: "Photoshop", quarter:"Q1", revenue:103.00},
	{customer:"A1", product: "ColdFusion", quarter:"Q2", revenue:110.00},
	{customer:"A2", product: "Flex", quarter:"Q2", revenue:120.00},
	{customer:"A3", product: "Photoshop", quarter:"Q2", revenue:130.00},
	{customer:"A1", product: "ColdFusion", quarter:"Q3", revenue:100.00},
	{customer:"A2", product: "Flex", quarter:"Q3", revenue:200.00},
	{customer:"A3", product: "Photoshop", quarter:"Q3", revenue:300.00},
	{customer:"A1", product: "ColdFusion", quarter:"Q4", revenue:100.10},
	{customer:"A2", product: "Flex", quarter:"Q4", revenue:100.20},
	{customer:"A3", product: "Photoshop", quarter:"Q4", revenue:100.30},
  ]);
1
1
分享到:
评论
1 楼 jack547155187 2010-11-14  
都不知道是说什么的。加点说明吧

相关推荐

    免费的olap 控件 CellSetGrid

    “CellSetGrid”是一个免费的OLAP控件,专门设计用于ASP.NET 2.0框架。这个控件的核心功能是展示由Analysis Services生成的Cube数据,使得开发者能够轻松地在Web应用中集成复杂的多维数据分析功能。Cube是OLAP中的一...

    olap控件数据仓库

    olap 控件,可以在web程序中使用,数据仓库钻取、切片

    强大的数据分析OLAP第三方控件

    OLAP(Online Analytical Processing)是在线分析处理的缩写,是一种用于...无论是零售业的销售分析,金融领域的风险评估,还是医疗保健的数据挖掘,这款强大的OLAP控件都能成为强大工具,助力企业挖掘数据的深度价值。

    类似于MS OLAP的图形框控件 v1.0

    《类似于MS OLAP的图形框控件 v1.0》是一款基于DELPHI开发的控件,它旨在模仿Microsoft Analysis Services的功能,为用户提供一种在图形界面中处理多维数据的能力。控件包括两个主要组件:TTablePanel和TDiagramBox...

    免費的OLAP Grid控件

    CellSetGrid is a simple asp.net control for browsing Analysis Services 2005 cubes. If you're a developer, the control can be dropped into Visual Studio asp.net project. Anyone using IE or Firefox can ...

    Dundas OLAP Services For ASP.NET使用方法(含本地化)

    在ASP.NET页面中,你可以插入Dundas OLAP控件,如CubeSelector、PivotGrid和Chart,这些控件会自动与OLAP Services交互。通过编程接口(API),开发者可以进一步自定义行为,例如添加自定义按钮、过滤条件或实现复杂...

    使用Office OWC来实现OLAP

    【使用Office OWC来实现OLAP】是一种技术手段,它利用了Microsoft的Office Web Components (OWC)集合,这些COM控件允许在Web上发布类似于Excel的电子表格、数据透视表和图表。OWC提供了与Excel相似的用户体验,并且...

    强大的多维数据库处理控件,有OLAP支援,可用于高质量的商用软件

    “资源”可能指的是控件附带的文档、示例代码或其他辅助材料,帮助开发者更好地理解和使用这个工具。 从压缩包文件名称“DYNACUBE”来看,这可能是一个名为“Dynacube”的具体产品,它可能是一个多维数据库处理和...

    ComponentOne OLAP WinForms中文帮助文档

    ComponentOne OLAP for WinForms是一个专门为Windows窗体应用程序设计的OLAP控件套件,它支持数据透视表、图表、报表等展现形式,并能将这些内容保存、导出或打印。 ComponentOne OLAP for WinForms中文帮助文档...

    使用 Flex3 开发 OLAP 应用

    ### 使用Flex3开发OLAP应用 #### 概述 在线分析处理(OLAP)是一种用于支持复杂的分析操作的软件技术,特别适用于决策人员和高级管理层的决策支持。它能够快速且灵活地处理大量数据,提供多维度的信息共享及特定...

    ComponentOne OLAP for WinForms 入门教程

    除了使用预定义的控件外,还可以利用 C1OlapPanel、C1OlapGrid、C1OlapChart 等控件来构建完全自定义的用户界面。 #### 代码中配置字段 可以通过编程方式来配置 OLAP 控件中的字段,从而实现更高级的定制化需求。 ...

    HierCube Olap 数据仓库分析组件

    在标签中,“控件”指代HierCube Olap作为一个可嵌入到其他应用程序中的组件,它能够方便地与各种用户界面交互,提供直观的数据探索和分析功能。“数据库相关”标签揭示了该组件的核心功能,即处理和管理来自数据库...

    Dundas Chart for ASP.NET - OLAP Services (VS2005) part1

    Dundas Chart for ASP.NET - OLAP Services ,用于数据仓库的前台展现的非常好的控件

    Delphi7控件包详解

    为OLAP分析提供支持,主要控件包括: - **TDecisionCube**: 决策立方体控件。 - **TDecisionSource**: 决策源控件。 - **TDecisionGraph**: 决策图表。 - **TDecisionGrid**: 决策网格。 - **TDecisionPivot**: ...

    非常强大的数据分析控件

    描述中提到的“带有源代码”,意味着用户不仅可以使用这个控件,还能查看和修改其内部工作原理,这对于开发者来说是极其宝贵的,因为这允许他们根据项目需求定制功能,或者深入理解控件的工作机制。 “支持横向、...

    使用ADO MD.NET开发SQL Server 2005 OLAP应用

    总的来说,使用ADO MD.NET开发SQL Server 2005 OLAP应用涉及了多维数据的查询、安全控制、开发环境选择、性能优化以及与第三方工具的集成等多个方面。掌握这些知识点对于构建高效、安全的OLAP应用至关重要。

    Dundas Chart for ASP.NET - OLAP Services (VS2005) part2

    Dundas Chart for ASP.NET - OLAP Services ,用于数据仓库的前台展现的非常好的控件

    ActiveReports报表控件7.0使用指南

    ActiveReports报表控件软件V7.0的使用指南是一份内容丰富的文档,它不仅为开发人员提供了详细的产品介绍和使用方法,还包含了大量的代码示例和实用技巧,是使用ActiveReports进行报表开发的得力助手。

    。net第三方控件,强大

    9. **图表和仪表盘控件**:如DevExpress的PivotGrid和OLAP Pivot Grid,用于数据分析和决策支持。 10. **数据绑定控件**:简化数据源与界面元素之间的绑定过程,如Telerik的DataBoundControls。 这些第三方控件...

Global site tag (gtag.js) - Google Analytics