(仅限 Flex 数据可视化组件)
mx.olap
接口public interface IOLAPCube
实现器 OLAPCube

IOLAPCube 接口表示保留平构数据集的 N 维表示形式的 OLAP 多维数据集。使用 OLAP 架构来定义多维数据集表示输入平构数据集的方式。

OLAP 多维数据集与相关数据库表相似。但是相关数据库表只有二维,而 OLAP 多维数据集可以有任何维度。其最简单的形式是,OLAP 多维数据集的维度与平构数据集中的字段相对应。

设置 OLAP 多维数据集的架构后,您必须调用 IOLAPCube.refresh() 方法来生成多维数据集。完成多维数据集初始化后,OLAP 多维数据集会调度 complete 事件发出多维数据集已为查询准备就绪的信号。

另请参见

mx.olap.OLAPCube


公共属性
 属性定义方
  dimensions : IList
[只读 (read-only)] 多维数据集中的所有维度,作为 IOLAPDimension 实例列表。
IOLAPCube
  name : String
[只读 (read-only)] OLAP 多维数据集的名称。
IOLAPCube
公共方法
 方法定义方
  
中止已为执行提交的查询。
IOLAPCube
  
如果正在执行一个多维数据集,则中止当前多维数据集的刷新。
IOLAPCube
  
排队要执行的 OLAP 查询。
IOLAPCube
  
返回 OLAP 多维数据集中具有给定名称的维度。
IOLAPCube
  
刷新数据提供者的多维数据集。
IOLAPCube
属性详细信息
dimensions属性
dimensions:IList  [只读 (read-only)]

多维数据集中的所有维度,作为 IOLAPDimension 实例列表。



实现
    public function get dimensions():IList
name属性 
name:String  [只读 (read-only)]

OLAP 多维数据集的名称。



实现
    public function get name():String
方法详细信息
cancelQuery()方法
public function cancelQuery(query:IOLAPQuery):void

中止已为执行提交的查询。

参数

query:IOLAPQuery — 要中止的查询。

cancelRefresh()方法 
public function cancelRefresh():void

如果正在执行一个多维数据集,则中止当前多维数据集的刷新。

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。
refresh()方法 
public function refresh():void

刷新数据提供者的多维数据集。设置多维数据集的架构后,您必须调用此方法来生成多维数据集。

此方法会调度 progress 事件来显示进度,当多维数据集完成并准备执行查询时调度 complete 事件。您必须等待 complete 事件,然后才能调用 execute() 方法来运行查询。

另请参见