Пример #1
0
        public void CreateAdomdMining()
        {
            string sConnString = "Data Source=" + sServer + "; Initial Catalog=" + sCatalog;

            Microsoft.AnalysisServices.AdomdClient.AdomdConnection olapConn = new AdomdConnection(sConnString);
            try
            {
                olapConn.Open();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.StackTrace);
            }

            Microsoft.AnalysisServices.AdomdClient.CubeDef   objCube = olapConn.Cubes["Adventure Works"];
            Microsoft.AnalysisServices.AdomdClient.Dimension myDim   = objCube.Dimensions["Customer"];
            //Microsoft.AnalysisServices.MiningStructure myStructure = db.MiningStructures.Add("MarketBasket", "MarketBasket");
            //myStructure.Source = new CubeDimensionBinding(".", objCube.Name, myDim.Name);

            Microsoft.AnalysisServices.AdomdClient.Hierarchy basketAttribute;
            Microsoft.AnalysisServices.AdomdClient.Hierarchy itemAttribute;

            basketAttribute = objCube.Dimensions["Customer"].AttributeHierarchies["Customer"];
            itemAttribute   = objCube.Dimensions["Product"].AttributeHierarchies["Product"];


            /* DEMO CODE
             *
             * MiningStructure ms = db.MiningStructures.Add("CubeStruct");
             *
             * string dataSourceId = ".";
             * string cubeId = "Adventure Works";
             * string dimensionId = "Customer";
             * ms.Source = new CubeDimensionBinding(dataSourceId, cubeId, dimensionId);
             *
             * // Add a key column
             * ScalarMiningStructureColumn keyColumn = ms.Columns.Add("Customer", "Customer");
             * keyColumn.IsKey = true;
             * keyColumn.Type = MiningStructureColumnTypes.Text;
             * keyColumn.Content = MiningStructureColumnContents.Key;
             * string keyAttributeId = "Customer";
             * keyColumn.Source = new CubeAttributeBinding(myCube.ID, myDimension.ID, keyAttributeId, AttributeBindingType.All);
             *
             * // Add two scalar columns
             * ScalarMiningStructureColumn column = ms.Columns.Add("Commute Distance", "Commute Distance");
             * column.Type = MiningStructureColumnTypes.Text;
             * column.Content = MiningStructureColumnContents.Discrete;
             * string attributeId = "Commute Distance";
             * column.Source = new CubeAttributeBinding(myCube.ID, myDimension.ID, attributeId, AttributeBindingType.All);
             *
             * column = ms.Columns.Add("Home Owner", "Home Owner");
             * column.Type = MiningStructureColumnTypes.Text;
             * column.Content = MiningStructureColumnContents.Discrete;
             * attributeId = "Home Owner";
             * column.Source = new CubeAttributeBinding(myCube.ID, myDimension.ID, attributeId, AttributeBindingType.All);
             * ms.Update();
             *
             */
        }
Пример #2
0
 public CubeDef Find(string index)
 {
     if (_obj != null)
     {
         AsAdomdClient.CubeDef obj = _obj.Find(index);
         return(obj == null ? null : new CubeDef(obj));
     }
     else
     {
         ExcelAdoMdConnections.ReturnDelegate <CubeDef> f = delegate
         {
             ExcelAdomdClient.CubeDef obj = _objExcel.Find(index);
             return(obj == null ? null : new CubeDef(obj));
         };
         return(f());
     }
 }
 internal Dimension(AdomdConnection connection, DataRow dimensionRow, CubeDef parentCube, string catalog, string sessionId)
 {
     this.baseData = new BaseObjectData(connection, true, null, dimensionRow, parentCube, null, catalog, sessionId);
 }
 internal MeasureCollection(AdomdConnection connection, CubeDef parentCube)
 {
     this.measureCollectionInternal = new MeasureCollectionInternal(connection, parentCube);
 }
 internal NamedSetCollection(AdomdConnection connection, CubeDef parentCube)
 {
     this.namedSetCollectionInternal = new NamedSetCollectionInternal(connection, parentCube);
 }
        internal static Dimension GetDimensionByRow(AdomdConnection connection, DataRow row, CubeDef parentCube, string catalog, string sessionId)
        {
            Dimension dimension;

            if (row[0] is DBNull)
            {
                dimension = new Dimension(connection, row, parentCube, catalog, sessionId);
                row[0]    = dimension;
            }
            else
            {
                dimension = (Dimension)row[0];
            }
            return(dimension);
        }
 internal DimensionCollectionInternal(AdomdConnection connection, CubeDef parentCube) : base(connection, InternalObjectType.InternalTypeDimension, parentCube.metadataCache)
 {
     this.parentCube = parentCube;
 }
 internal DimensionCollection(AdomdConnection connection, CubeDef parentCube)
 {
     this.dimensionCollectionInternal = new DimensionCollectionInternal(connection, parentCube);
 }
 internal KpiCollection(AdomdConnection connection, CubeDef parentCube)
 {
     this.kpiCollectionInternal = new KpiCollectionInternal(connection, parentCube);
 }
Пример #10
0
        internal static Measure GetMeasureByRow(AdomdConnection connection, DataRow row, CubeDef parentCube, string catalog, string sessionId)
        {
            Measure measure;

            if (row[0] is DBNull)
            {
                measure = new Measure(connection, row, parentCube, catalog, sessionId);
                row[0]  = measure;
            }
            else
            {
                measure = (Measure)row[0];
            }
            return(measure);
        }
Пример #11
0
 internal MeasureCollectionInternal(AdomdConnection connection, CubeDef parentCube) : base(connection, InternalObjectType.InternalTypeMeasure, parentCube.metadataCache)
 {
     this.parentCube = parentCube;
 }
Пример #12
0
 public CubeDef(AsAdomdClient.CubeDef obj)
 {
     _obj = obj;
 }
Пример #13
0
        internal static NamedSet GetNamedSetByRow(AdomdConnection connection, DataRow row, CubeDef parentCube, string catalog, string sessionId)
        {
            NamedSet namedSet;

            if (row[0] is DBNull)
            {
                namedSet = new NamedSet(connection, row, parentCube, catalog, sessionId);
                row[0]   = namedSet;
            }
            else
            {
                namedSet = (NamedSet)row[0];
            }
            return(namedSet);
        }
Пример #14
0
 internal NamedSetCollectionInternal(AdomdConnection connection, CubeDef parentCube) : base(connection, InternalObjectType.InternalTypeNamedSet, parentCube.metadataCache)
 {
     this.parentCube = parentCube;
 }
Пример #15
0
        public static string GetMemberQuery(string memberSet, string dimensionPropertiesClause, CubeDef cube)
        {
            string text = AdomdUtils.Enquote(cube.Name, "[", "]");

            return(string.Format(CultureInfo.InvariantCulture, "SELECT {0} {1} ON 0, {{}} ON 1 FROM {2}", new object[]
            {
                memberSet,
                dimensionPropertiesClause,
                text
            }));
        }