包 | mx.olap |
类 | public class OLAPCube |
继承 | OLAPCube Proxy |
实现 | IOLAPCube, IEventDispatcher |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
The <mx:OLAPCube>
tag inherits all of the tag attributes
of its superclass, and adds the following tag attributes:
<mx:OLAPCube Properties dataProvider="" dimensions="" elements="" measures="" />
默认 MXML 属性elements
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
dataProvider : ICollectionView
用于填充 OLAP 多维数据集的平面数据。 | OLAPCube | ||
dimensions : IList
多维数据集中的所有维度,作为 IOLAPDimension 实例列表。 | OLAPCube | ||
elements : Array [只写]
处理输入数组,并根据该数组的元素初始化维度和测量属性。 | OLAPCube | ||
measures : IList [只写]
设置 OLAP 多维数据集的测量,作为 OLAPMeasure 实例列表。 | OLAPCube | ||
name : String
OLAP 多维数据集的名称。 | OLAPCube |
属性 | 由以下参数定义 | ||
---|---|---|---|
cubeBuildingTimeInterval : int = 5
refresh() 方法的计时器用于以迭代方式生成多维数据集的时间间隔(以毫秒为单位)。 | OLAPCube | ||
measureDimensionName : String = "Measures"
设置该 OLAP 多维数据集测量的维度名称。 | OLAPCube | ||
queryBuildingTimeInterval : int = 1
execute() 方法的计时器用于迭代处理查询的时间间隔(以毫秒计/以毫秒为单位)。 | OLAPCube | ||
resultClass : Class
OLAPCube 实例用于返回结果的类。 | OLAPCube | ||
workDuration : int = 50
refresh() 方法用于以迭代方式生成多维数据集的时间(以毫秒为单位)。 | OLAPCube |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | OLAPCube | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | OLAPCube | ||
中止已为执行提交的查询。 | OLAPCube | ||
如果正在执行一个多维数据集,则中止当前多维数据集的刷新。 | OLAPCube | ||
将事件调度到事件流中。 | OLAPCube | ||
排队要执行的 OLAP 查询。 | OLAPCube | ||
返回 OLAP 多维数据集中具有给定名称的维度。 | OLAPCube | ||
检查 对象是否为特定事件类型注册了任何侦听器。 | OLAPCube | ||
刷新数据提供者的多维数据集。 | OLAPCube | ||
删除侦听器。 | OLAPCube | ||
返回多维数据集的名称
| OLAPCube | ||
检查是否用此对象或其任何祖代为指定事件类型注册了事件侦听器。 | OLAPCube |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
已创建多维数据集并为查询准备就绪时调度。 | OLAPCube | |||
通过调用 refresh() 方法创建多维数据集时持续调度。 | OLAPCube | |||
通过调用 execute() 方法生成查询结果时持续调度。 | OLAPCube |
cubeBuildingTimeInterval | 属性 |
protected var cubeBuildingTimeInterval:int = 5
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
refresh()
方法的计时器用于以迭代方式生成多维数据集的时间间隔(以毫秒为单位)。如果您会在生成多维数据集前等待较长的时间,就可以将其设置为较高的值。可以将其设置为较低的值,但是这可能对应用程序的响应能力有负面影响。
dataProvider | 属性 |
dataProvider:ICollectionView
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
用于填充 OLAP 多维数据集的平面数据。设置此属性后,必须调用 refresh()
方法来初始化多维数据集。
实现
public function get dataProvider():ICollectionView
public function set dataProvider(value:ICollectionView):void
dimensions | 属性 |
elements | 属性 |
measureDimensionName | 属性 |
protected var measureDimensionName:String = "Measures"
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
设置该 OLAP 多维数据集测量的维度名称。
默认值为 "Measures"。
measures | 属性 |
name | 属性 |
queryBuildingTimeInterval | 属性 |
protected var queryBuildingTimeInterval:int = 1
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
execute()
方法的计时器用于迭代处理查询的时间间隔。如果您会在多维数据集生成查询结果前等待较长的时间,就可以将其设置为较高的值。为了更快地获得查询结果,可以将其设置为较低的值,但是这可能对应用程序的响应能力有负面影响。
resultClass | 属性 |
protected var resultClass:Class
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
OLAPCube 实例用于返回结果的类。可以使用您自己的 IOLAPResult 接口的实现来替换默认类 OLAPResult,以便自定义结果。
默认值为 OLAPResult。
workDuration | 属性 |
protected var workDuration:int = 50
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
refresh()
方法用于以迭代方式生成多维数据集的时间(以毫秒为单位)。值越高,说明每个计时器事件中得到处理的行就越多。如果希望更快地生成多维数据集,可以将其设置为一个较高的值,但这样对应用程序的响应速度可能会有负面影响。
OLAPCube | () | 构造函数 |
addEventListener | () | 方法 |
public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
参数
type:String — 事件的类型。
| |
listener:Function — 处理事件的侦听器函数。
| |
useCapture:Boolean (default = false ) — 确定侦听器是运行于捕获阶段还是运行于目标和冒泡阶段。
| |
priority:int (default = 0 ) — 事件侦听器的优先级。
| |
useWeakReference:Boolean (default = false ) — 确定对侦听器的引用是强引用,还是弱引用。强引用(默认值)可防止您的侦听器被当作垃圾回收。弱引用则没有此作用。
|
相关 API 元素
cancelQuery | () | 方法 |
public function cancelQuery(query:IOLAPQuery):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
中止已为执行提交的查询。
参数
query:IOLAPQuery — 要中止的查询。
|
cancelRefresh | () | 方法 |
public function cancelRefresh():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
如果正在执行一个多维数据集,则中止当前多维数据集的刷新。
dispatchEvent | () | 方法 |
execute | () | 方法 |
public function execute(query:IOLAPQuery):mx.rpc:AsyncToken
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
排队要执行的 OLAP 查询。调用 refresh()
方法来更新多维数据集后,您必须等待 complete
事件,然后才能调用 execute()
方法。
OLAP 多维数据集可能很复杂,因此您不希望在 Flex 计算 OLAP 查询结果时暂停应用程序。execute()
方法会返回 AsyncToken 类的实例,这样您就可以设置异步操作的处理函数,从而在查询处理期间不间断应用程序的执行。
使用 AsyncToken 类时,您可以设置两个函数来处理查询结果。在该例中,showResult() 函数会在查询成功完成后处理查询结果,showFault() 函数会处理查询执行期间检测到的任何错误:
<mx:Script> // Function to execute a query. private function runQuery(cube:IOLAPCube):void { // 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(result:FaultEvent, token:Object):void { Alert.show("Error in query."); } // Handle a query success. private function showResult(result:Object, token:Object):void { if (!result) { Alert.show("No results from query."); return; } myOLAPDG.dataProvider= result as OLAPResult; } </mx:Script> <mx:OLAPDataGrid id="myOLAPDG" width="100%" height="100%" />
参数
query:IOLAPQuery — 要执行的查询,由 IOLAPQuery 实例表示。
|
mx.rpc:AsyncToken — AsyncToken 实例。
|
findDimension | () | 方法 |
public function findDimension(name:String):IOLAPDimension
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
返回 OLAP 多维数据集中具有给定名称的维度。
参数
name:String — 维度的名称。
|
IOLAPDimension — IOLAPDimension 实例,用于表示维度,或者如果未找到维度则为 null。
|
hasEventListener | () | 方法 |
refresh | () | 方法 |
public function refresh():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
刷新数据提供者的多维数据集。设置多维数据集的架构后,您必须调用此方法来生成多维数据集。
此方法会调度 progress
事件来显示进度,当多维数据集完成并准备执行查询时调度 complete
事件。您必须等待 complete
事件,然后才能调用 execute()
方法来运行查询。
removeEventListener | () | 方法 |
public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
删除侦听器。如果没有注册任何匹配的侦听器,则对此方法的调用不起任何作用。
参数
type:String — 事件的类型。
| |
listener:Function — 要删除的侦听器对象。
| |
useCapture:Boolean (default = false ) — 指出是为捕获阶段还是为目标和冒泡阶段注册了侦听器。
|
相关 API 元素
toString | () | 方法 |
willTrigger | () | 方法 |
complete | 事件 |
mx.events.CubeEvent
属性 CubeEvent.type =
mx.events.CubeEvent.CUBE_COMPLETE
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
已创建多维数据集并为查询准备就绪时调度。
CubeEvent.CUBE_COMPLETE
常量可为 complete
事件定义事件对象的 type
属性的值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | true |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
description | 对正在处理的内容的描述。 |
progress | 多维数据集中已更新的元素数。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
total | 多维数据集中需要更新的元素总数。 |
type | CubeEvent.CUBE_COMPLETE |
progress | 事件 |
mx.events.CubeEvent
属性 CubeEvent.type =
mx.events.CubeEvent.CUBE_PROGRESS
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
通过调用 refresh()
方法创建多维数据集时持续调度。
CubeEvent.CUBE_PROGRESS
常量可为 progress
事件定义事件对象的 type
属性的值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | true |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
description | 对正在处理的内容的描述。 |
progress | 多维数据集中已更新的元素数。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
total | 多维数据集中需要更新的元素总数。 |
type | CubeEvent.CUBE_PROGRESS |
queryProgress | 事件 |
mx.events.CubeEvent
属性 CubeEvent.type =
mx.events.CubeEvent.QUERY_PROGRESS
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
通过调用 execute()
方法生成查询结果时持续调度。
CubeEvent.QUERY_PROGRESS
常量可为 queryProgress
事件定义事件对象的 type
属性的值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | true |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
description | 对正在处理的内容的描述。 |
progress | 多维数据集中已更新的元素数。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
total | 多维数据集中需要更新的元素总数。 |
type | CubeEvent.QUERY_PROGRESS |
Tue Jun 12 2018, 11:04 AM Z