Wyliczenie ActionTargetType
Określa gdzie Action może być umieszczony.
Przestrzeń nazw: Microsoft.AnalysisServices
Zestaw: Microsoft.AnalysisServices (w Microsoft.AnalysisServices.dll)
Składnia
'Deklaracja
<GuidAttribute("4B273BB8-914C-4b23-A8D2-7DED53B5D185")> _
Public Enumeration ActionTargetType
'Użycie
Dim instance As ActionTargetType
[GuidAttribute("4B273BB8-914C-4b23-A8D2-7DED53B5D185")]
public enum ActionTargetType
[GuidAttribute(L"4B273BB8-914C-4b23-A8D2-7DED53B5D185")]
public enum class ActionTargetType
[<GuidAttribute("4B273BB8-914C-4b23-A8D2-7DED53B5D185")>]
type ActionTargetType
public enum ActionTargetType
Elementy członkowskie
Nazwa elementu członkowskiego | Opis | |
---|---|---|
Cube | Znajduje się na moduł.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być Specyfikacja moduł. |
|
Cells | Znajduje się na zestaw komórek lub podmodułu.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być Specyfikacja komórka. |
|
Set | Znajduje się na zestaw.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być specyfikacja zestaw. |
|
Hierarchy | Znajduje się na jednej hierarchii z wymiar.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być określenie wymiar. |
|
Level | Znajduje się poziom z wymiar.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być poziom specyfikacji. |
|
DimensionMembers | Znajduje się na wymiar.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być określenie wymiar. |
|
HierarchyMembers | Znajduje się na członków jednej hierarchii z wymiar.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być określenie wymiar. |
|
LevelMembers | Znajduje się na członków poziom z wymiar.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej musi być poziom specyfikacji. |
|
AttributeMembers | Znajduje się na element członkowski atrybut.
Po uruchomieniu kwerendy akcja odpowiedniej współrzędnej należy element członkowski atrybut. |
Uwagi
Nowe: 17 lipca 2006
Przykłady
Ta sekcja zawiera dwie próbki; jednej próbki przy użyciu AMO do zestaw akcja oraz innej próbki przy użyciu ADOMD.NET klient, aby pobrać akcja kodu klient.
Pokazuje poniższy przykład używa AMO, jak zestaw akcja w górę.W tym przykładzie założono, że są połączone z przykładową bazą danych AMOAdventureWorks i przekazane jako parametr moduł jest "Adventure Works".
Należy zauważyć, że akcja typ miejsce docelowe w AMO kod jest zdefiniowany jako Cells i akcja jest zdefiniowany dla wszystkich komórek w miara grupy "Odsprzedawcy sprzedaż".W ADOMD.NET kodu odpowiadającego współrzędnych typu jest MDACTION_COORDINATE_CELL = 6, której towarzyszy spójna kolekcja ([środki]. [Ilość zamówienia sprzedawcy], [produktu Product].[Kategoria].&[3]) jako współrzędna znaleźć akcja.
Kod jest napisany w języku C#.
#region Using directives
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Diagnostics;
using System.Globalization;
using System.Text;
using System.Data;
using System.Data.OleDb;
using System.Data.Sql;
using Microsoft.AnalysisServices;
#endregion
private void CreateActions(Cube cube)
{
#region Adding a drillthrough action
//Create a Drillthrough action
DrillThroughAction action = new DrillThroughAction("Reseller Details", "Drillthrough Action");
//Define the Action
action.Invocation = ActionInvocation.Interactive;
action.Type = ActionType.DrillThrough;
action.TargetType = ActionTargetType.Cells;
action.Target = "MeasureGroupMeasures(\"Reseller Sales\")";
action.Caption = "DrillThrough...";
action.CaptionIsMdx = false;
//Adding Measure columns
MeasureBinding mb1 = new MeasureBinding();
mb1.MeasureID = "Reseller Sales Amount";
action.Columns.Add(mb1);
MeasureBinding mb2 = new MeasureBinding();
mb2.MeasureID = "Reseller Order Quantity";
action.Columns.Add(mb2);
MeasureBinding mb3 = new MeasureBinding();
mb3.MeasureID = "Reseller Unit Price";
action.Columns.Add(mb3);
//Adding Dimension Columns
CubeAttributeBinding cb1 = new CubeAttributeBinding();
cb1.CubeID = cube.ID;
cb1.CubeDimensionID = "Reseller";
cb1.AttributeID = "Reseller";
cb1.Type = AttributeBindingType.All;
action.Columns.Add(cb1);
CubeAttributeBinding cb2 = new CubeAttributeBinding();
cb2.CubeID = cube.ID;
cb2.CubeDimensionID = "Product";
cb2.AttributeID = "Product Name";
cb2.Type = AttributeBindingType.All;
action.Columns.Add(cb2);
//Add the defined action to the cube
cube.Actions.Add(action);
#endregion
}
Następujące próbki, które używa ADOMD.NET klient, pokazuje jak sprawdzić próbki akcja jest poprawnie zdefiniowany.
Parametry podane w następujący sposób.
CATALOG_NAME = AMOAdventureworks
CUBE_NAME = Adventure Works
KOORDYNOWANIE = ([środki]. [Ilość zamówienia sprzedawcy], [produktu Product].[Kategoria].&[3])
COORDINATE_TYPE = 6
Kod jest napisany w języku C#.Nazwa_serwera jest System.Windows.Forms.TextBox obiektu formularza.
#region Using directives
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using adoMdClient = Microsoft.AnalysisServices.AdomdClient;
#endregion
...
private enum COORDINATE_TYPE
{
MDACTION_COORDINATE_CUBE = 1,
MDACTION_COORDINATE_DIMENSION = 2,
MDACTION_COORDINATE_LEVEL = 3,
MDACTION_COORDINATE_MEMBER = 4,
MDACTION_COORDINATE_SET = 5,
MDACTION_COORDINATE_CELL = 6
}
...
private void readActionsUsingADOMDClient(String catalogName, String cubeName, String coordinate, COORDINATE_TYPE coordinateType)
{
adoMdClient.AdomdRestrictionCollection restrictions = new adoMdClient.AdomdRestrictionCollection();
restrictions.Add("CATALOG_NAME", catalogName);
restrictions.Add("CUBE_NAME", cubeName);
restrictions.Add("COORDINATE", coordinate);
restrictions.Add("COORDINATE_TYPE", (int)coordinateType);
foreach (adoMdClient.AdomdRestriction restriction in restrictions)
{
Debug.WriteLine(restriction.Name + "=" + restriction.Value);
}
using (adoMdClient.AdomdConnection cnxAmoAdventureworks = new adoMdClient.AdomdConnection())
{
if (serverName.Text.Length == 0)
{
cnxAmoAdventureworks.ConnectionString = "Data Source=localhost;Catalog=AMOAdventureworks";
}
else
{
cnxAmoAdventureworks.ConnectionString = "Data Source=" + serverName.Text + ";Catalog=AMOAdventureworks";
}
cnxAmoAdventureworks.Open();
DataTable actionsTable = cnxAmoAdventureworks.GetSchemaDataSet("MDSCHEMA_ACTIONS", restrictions).Tables[0];
Debug.WriteLine("Table [" + actionsTable.TableName + "] has " + actionsTable.Rows.Count.ToString() + " rows");
int j = 0;
foreach (DataRow actionRow in actionsTable.Rows)
{
for (int i = 0; i < actionRow.ItemArray.Length; i++)
{
Debug.WriteLine("[" + j.ToString().PadLeft(4) + "]\t" + actionsTable.Columns[i].ColumnName + ": " + actionRow.ItemArray[i].ToString());
}
j++;
}
}
}
Po uruchomieniu kodu będą widoczne następujące wyniki.
Tabela [rowsetTable] zawiera wiersze 1
CATALOG_NAME [0]: AmoAdventureWorks
SCHEMA_NAME [0]:
CUBE_NAME [0]: Adventure Works
ACTION_NAME [0]: Szczegóły sprzedawcy
ACTION_TYPE [0]: 256
[0] WSPÓŁRZĘDNYCH: (Środki [].[Odsprzedawcy zamówienia Ilość] [produktu Product].[Kategoria].&[3])
COORDINATE_TYPE [0]: 6
ACTION_CAPTION [0]: Drążenia...
[ OPIS 0]:
ZAWARTOŚĆ [0]: Wybierz DRĄŻENIA ([środki]. [Ilość zamówienia sprzedawcy], [produktu Product].[Kategoria].&[3]) na 0 Z [Adventure Works] zwrot [Sprzedaż sprzedawcy].[Odsprzedawcy Sales Amount] [Sprzedaż sprzedawcy].[Ilość zamówienia sprzedawcy], [Sprzedaż sprzedawcy].[Cena jednostkowa sprzedawcy], [$sprzedawcy].[Sprzedawca] [$produktu].[Nazwa produktu]
APLIKACJA [0]:
WYWOŁANIA [0]: 1