包 | mx.olap |
类 | public class OLAPCube |
继承 | OLAPCube Proxy Object |
实现 | IOLAPCube, IEventDispatcher |
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
另请参见
属性 | 定义方 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
dataProvider : ICollectionView 用于填充 OLAP 多维数据集的平面数据。 | OLAPCube | ||
dimensions : IList 多维数据集中的所有维度,作为 IOLAPDimension 实例列表。 | OLAPCube | ||
elements : Array [只写] 处理输入数组,并根据该数组的元素初始化维度和测量属性。 | OLAPCube | ||
measures : IList [只写] 设置 OLAP 多维数据集的测量,作为 OLAPMeasure 实例列表。 | OLAPCube | ||
name : String OLAP 多维数据集的名称。 | OLAPCube | ||
prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object |
属性 | 定义方 | ||
---|---|---|---|
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 | ||
指示对象是否已经定义了指定的属性。 | Object | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
指示指定的属性是否存在、是否可枚举。 | Object | ||
刷新数据提供者的多维数据集。 | OLAPCube | ||
删除侦听器。 | OLAPCube | ||
设置循环操作动态属性的可用性。 | Object | ||
返回多维数据集的名称 | OLAPCube | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 对象或其任何始祖为指定事件类型注册了事件侦听器。 | OLAPCube |
事件 | 摘要 | 定义方 | ||
---|---|---|---|---|
已创建多维数据集并为查询准备就绪时调度。 | OLAPCube | |||
通过调用 refresh() 方法创建多维数据集时持续调度。 | OLAPCube | |||
通过调用 execute() 方法生成查询结果时持续调度。 | OLAPCube |
cubeBuildingTimeInterval | 属性 |
protected var cubeBuildingTimeInterval:int = 5
refresh()
方法的计时器用于以迭代方式生成多维数据集的时间间隔(以毫秒为单位)。如果您会在生成多维数据集前等待较长的时间,就可以将其设置为较高的值。可以将其设置为较低的值,但是这可能对应用程序的响应能力有负面影响。
dataProvider | 属性 |
dataProvider:ICollectionView
[读写]
用于填充 OLAP 多维数据集的平面数据。设置此属性后,必须调用 refresh()
方法来初始化多维数据集。
public function get dataProvider():ICollectionView
public function set dataProvider(value:ICollectionView):void
dimensions | 属性 |
dimensions:IList
[读写] 多维数据集中的所有维度,作为 IOLAPDimension 实例列表。
public function get dimensions():IList
public function set dimensions(value:IList):void
elements | 属性 |
elements:Array
[只写]
处理输入数组,并根据该数组的元素初始化 dimensions
和 measures
属性。在数组中维度是由 OLAPDimension 类的实例提供的,测量则是由 OLAPMeasure 类的实例提供的。
使用此属性定义单个数组中多维数据集的维度和测量。
public function set elements(value:Array):void
measureDimensionName | 属性 |
measures | 属性 |
measures:IList
[只写] 设置 OLAP 多维数据集的测量,作为 OLAPMeasure 实例列表。
public function set measures(value:IList):void
name | 属性 |
name:String
[读写] OLAP 多维数据集的名称。
public function get name():String
public function set name(value:String):void
queryBuildingTimeInterval | 属性 |
protected var queryBuildingTimeInterval:int = 1
execute()
方法的计时器用于迭代处理查询的时间间隔。如果您会在多维数据集生成查询结果前等待较长的时间,就可以将其设置为较高的值。为了更快地获得查询结果,可以将其设置为较低的值,但是这可能对应用程序的响应能力有负面影响。
resultClass | 属性 |
protected var resultClass:Class
OLAPCube 实例用于返回结果的类。可以使用您自己的 IOLAPResult 接口的实现来替换默认类 OLAPResult,以便自定义结果。
默认值为 OLAPResult.
workDuration | 属性 |
protected var workDuration:int = 50
refresh()
方法用于以迭代方式生成多维数据集的时间(以毫秒为单位)。值越高,说明每个计时器事件中得到处理的行就越多。如果希望更快地生成多维数据集,可以将其设置为一个较高的值,但这样对应用程序的响应速度可能会有负面影响。
OLAPCube | () | 构造函数 |
addEventListener | () | 方法 |
public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
参数
type:String — 事件的类型。 | |
listener:Function — 处理事件的侦听器函数。 | |
useCapture:Boolean (default = false ) — 确定侦听器是运行于捕获阶段、目标阶段还是冒泡阶段。 | |
priority:int (default = 0 ) — 事件侦听器的优先级。 | |
useWeakReference:Boolean (default = false ) — 确定对侦听器的引用是强引用,还是弱引用。强引用(默认值)可防止您的侦听器被当作垃圾回收。弱引用则没有此作用。 |
另请参见
cancelQuery | () | 方法 |
cancelRefresh | () | 方法 |
public function cancelRefresh():void
如果正在执行一个多维数据集,则中止当前多维数据集的刷新。
dispatchEvent | () | 方法 |
public function dispatchEvent(event:Event):Boolean
将事件调度到事件流中。事件目标是对其调用 dispatchEvent()
方法的 对象。
参数
event:Event — 调度到事件流中的 Event 对象。 |
Boolean —
如果成功调度了事件,则值为 true 。值 false 表示失败或对事件调用了 preventDefault() 方法。
|
另请参见
execute | () | 方法 |
public function execute(query:IOLAPQuery):AsyncToken
排队要执行的 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:Object, 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 实例表示。 |
AsyncToken — AsyncToken 实例。 |
findDimension | () | 方法 |
public function findDimension(name:String):IOLAPDimension
返回 OLAP 多维数据集中具有给定名称的维度。
参数
name:String — 维度的名称。 |
IOLAPDimension — IOLAPDimension 实例,用于表示维度,或者如果未找到维度则为 null。 |
hasEventListener | () | 方法 |
public function hasEventListener(type:String):Boolean
检查 对象是否为特定事件类型注册了任何侦听器。这样,您就可以确定对象在事件流层次结构中的哪个位置改变了对事件类型的处理。
参数
type:String — 事件的类型。 |
Boolean —
如果指定类型的侦听器已注册,则值为 true ;否则,值为 false 。
|
另请参见
refresh | () | 方法 |
public function refresh():void
刷新数据提供者的多维数据集。设置多维数据集的架构后,您必须调用此方法来生成多维数据集。
此方法会调度 progress
事件来显示进度,当多维数据集完成并准备执行查询时调度 complete
事件。您必须等待 complete
事件,然后才能调用 execute()
方法来运行查询。
removeEventListener | () | 方法 |
public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
删除侦听器。如果没有注册任何匹配的侦听器,则对此方法的调用不起任何作用。
参数
type:String — 事件的类型。 | |
listener:Function — 要删除的侦听器对象。 | |
useCapture:Boolean (default = false ) — 指出是否为捕获阶段或目标阶段和冒泡阶段注册了侦听器。 |
另请参见
toString | () | 方法 |
willTrigger | () | 方法 |
public function willTrigger(type:String):Boolean
检查是否用此 对象或其任何始祖为指定事件类型注册了事件侦听器。将指定类型的事件调度给此对象或其任一后代时,如果在事件流的任何阶段触发了事件侦听器,则此方法返回 true
。
参数
type:String — 事件的类型。 |
Boolean —
如果已触发指定类型的侦听器,则会显示值 true ,否则显示值 false 。
|
另请参见
complete | 事件 |
mx.events.CubeEvent
mx.events.CubeEvent.CUBE_COMPLETE
已创建多维数据集并为查询准备就绪时调度。
CubeEvent.CUBE_COMPLETE
常数可为 complete
事件定义事件对象的 type
属性的值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
true
|
currentTarget
|
用于定义处理该事件的事件侦听器的 Object。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。
|
description
| 对正在处理的内容的描述。 |
progress
| 多维数据集中已更新的元素数。 |
target
|
调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。
|
total
| 多维数据集中需要更新的元素总数。 |
type
| CubeEvent.CUBE_COMPLETE |
progress | 事件 |
mx.events.CubeEvent
mx.events.CubeEvent.CUBE_PROGRESS
通过调用 refresh()
方法创建多维数据集时持续调度。
CubeEvent.CUBE_PROGRESS
常数可为 progress
事件定义事件对象的 type
属性的值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
true
|
currentTarget
|
用于定义处理该事件的事件侦听器的 Object。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。
|
description
| 对正在处理的内容的描述。 |
progress
| 多维数据集中已更新的元素数。 |
target
|
调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。
|
total
| 多维数据集中需要更新的元素总数。 |
type
| CubeEvent.CUBE_PROGRESS |
queryProgress | 事件 |
mx.events.CubeEvent
mx.events.CubeEvent.QUERY_PROGRESS
通过调用 execute()
方法生成查询结果时持续调度。
CubeEvent.QUERY_PROGRESS
常数可为 queryProgress
事件定义事件对象的 type
属性的值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
true
|
currentTarget
|
用于定义处理该事件的事件侦听器的 Object。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。
|
description
| 对正在处理的内容的描述。 |
progress
| 多维数据集中已更新的元素数。 |
target
|
调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。
|
total
| 多维数据集中需要更新的元素总数。 |
type
| CubeEvent.QUERY_PROGRESS |