動作可以有不同類型,必須根據類型來建立。 動作可以是:
鑽研動作,會傳回一組數據列,代表執行動作之 Cube 所選取單元格的基礎數據。
報告動作,會從 Reporting Services 傳回報表,該報表與動作發生所在 Cube 的選取區段相關聯。
標準操作會傳回動作元素(例如 URL、HTML、DataSet、RowSet 和其他元素),這些元素是與執行操作時所選立方體區段相關聯的。
用戶端應用程式會使用查詢介面,例如 ADOMD.NET,來擷取和公開用戶動作。 如需詳細資訊,請參閱 使用 ADOMD.NET 進行開發。
簡單 Action 物件包含:基本資訊、要執行動作的目標、限制動作範圍的條件,以及類型。 基本資訊包括動作的名稱、動作的描述、動作建議的標題,以及其他資訊。
目標是 Cube 中執行動作的實際位置。 目標是由目標類型和目標物件所組成。 目標類型代表 Cube 中要啟用動作的物件類型。 目標類型可以是層級成員、單元格、階層、階層成員或其他。 目標對像是目標類型的特定物件;如果目標類型是階層,則目標物件是 Cube 中任何一個已定義的階層。
條件是當動作事件發生時進行評估的 MDX 運算式。 如果條件評估為 true,則會執行動作。 否則,不會執行動作。
類型指的是要執行的行動種類。 Action 是抽象類別,因此,若要使用它,您必須使用任意一個衍生類別。 預先定義了兩種類型的動作:穿透式分析和報表生成。 這些類別有對應的衍生類別: DrillThroughAction 和 ReportAction。 類別中 StandardAction 涵蓋其他動作。
在 Microsoft SQL Server Analysis Services 中,動作是儲存的 MDX 語句,可供用戶端應用程式呈現和使用。 換句話說,動作是定義並儲存在伺服器上的用戶端命令。 動作也包含資訊,指定用戶端應用程式應該顯示及處理 MDX 語句的時機和方式。 動作所指定的作業可以啟動應用程式、使用動作中的資訊做為參數,或根據動作所提供的準則擷取資訊。
動作可讓商務用戶根據分析的結果採取行動。 藉由儲存和重複使用動作,終端使用者可以超越傳統分析,這通常以呈現數據為結尾,並起始發現問題和缺陷的解決方案,從而將商業智慧應用程式延伸至 Cube 之外。 動作可以將用戶端應用程式從複雜的數據轉譯工具轉換成企業作系統不可或缺的一部分。 相較於專注於將資料作為輸入傳送至操作應用程式,終端使用者可以在決策過程中「閉環處理」。 將分析數據轉換成決策的能力對於成功的商業智慧應用程序至關重要。
例如,流覽 Cube 的企業使用者注意到特定產品的目前庫存很低。 用戶端應用程式會為企業使用者提供動作清單,這些動作全都與從 Analysis Services 資料庫擷取的低產品庫存值有關,商務用戶會選取代表產品之 Cube 成員的 Order 動作。 Order 動作會藉由在作業資料庫中呼叫資料庫預存程序來起始新的訂單。 此預存程式會產生適當的資訊,以傳送至訂單項目系統。
您可以在建立動作時行使彈性:例如,動作可以啟動應用程式,或從資料庫擷取資訊。 您可以將動作設定為從 Cube 的幾乎所有部分觸發,包括維度、層級、成員和儲存格,或為 Cube 的相同部分建立多個動作。 您也可以將字串參數傳遞至啟動的應用程式,並在動作執行時指定向使用者顯示的標題。
這很重要
為了讓商務使用者使用動作,商務用戶採用的用戶端應用程式必須支持動作。
動作類型
下表列出 Analysis Services 中包含的動作類型:
| 動作類型 | 說明 |
|---|---|
| 命令列 | 在命令提示字元執行命令 |
| 數據集 | 將資料集傳回用戶端應用程式。 |
| 鑽研 | 傳回鑽研語句做為表達式,客戶端執行以傳回數據列集 |
| HTML | 在因特網瀏覽器中執行 HTML 腳本 |
| 專有 | 使用此數據表所列之外的介面來執行作業。 |
| 報告 | 將參數化 URL 型要求提交至報表伺服器,並將報表傳回用戶端應用程式。 |
| 資料列集合 | 將數據列集傳回用戶端應用程式。 |
| 聲明 | 執行 OLE DB 命令。 |
| URL | 在因特網瀏覽器中顯示動態網頁。 |
解決和執行動作
當商務使用者存取定義命令物件的 物件時,會自動解析與動作相關聯的語句,讓用戶端應用程式能夠使用,但不會自動執行動作。 只有當商務使用者執行起始動作的用戶端特定作業時,才會執行此動作。 例如,當商務使用者以滑鼠右鍵單擊特定成員或單元格時,用戶端應用程式可能會將動作清單顯示為彈出視窗。