/// <summary> /// Create Create Cube DSV /// </summary> /// <param name="sqlHelper"></param> /// <param name="asMeta"></param> /// <param name="oleDB"></param> /// <param name="DSV"></param> /// <param name="dsvSchema"></param> public void CREATE_CUBE_DSV(DB_SQLHELPER_BASE sqlHelper , AS_METADATA asMeta , IDbConnection oleDB , Microsoft.AnalysisServices.DataSourceView DSV , String dsvSchema) { try { sqlHelper.ADD_MESSAGE_LOG("[Create cube dsv] Starting add cube dsv", MESSAGE_TYPE.DSV, MESSAGE_RESULT_TYPE.Normal); DataTable dsvSet = asMeta.GET_SSAS_DSV_SET(sqlHelper); foreach (DataRow row in dsvSet.Rows) { String dsv_schema_name = row["dsv_schema_name"].ToString(); String db_table_name = row["db_table_name"].ToString(); String table_type = row["table_type"].ToString(); String is_name_query = row["is_named_query"].ToString(); String dsv_query_text = String.Format("SELECT * FROM {0} WHERE 1=0", db_table_name); sqlHelper.ADD_MESSAGE_LOG(String.Format("[Create cube dsv->{0}] Adding to add cube dsv", db_table_name), MESSAGE_TYPE.DSV, MESSAGE_RESULT_TYPE.Succeed); AS_API.ADD_TABLE_TO_CUBE_DSV(oleDB , DSV , db_table_name , dsv_query_text , db_table_name , "View" , CONFIGURATION_HELPER.GET_METADATA_PROPERTY("db_table_schema_name")); } DSV.Update(); sqlHelper.ADD_MESSAGE_LOG("[Create cube dsv] Succeed to add cube dsv", MESSAGE_TYPE.DSV, MESSAGE_RESULT_TYPE.Succeed); } catch (Exception ex) { sqlHelper.ADD_MESSAGE_LOG("[Create cube dsv] " + ex.Message.ToString(), MESSAGE_TYPE.DSV, MESSAGE_RESULT_TYPE.Error); throw(ex); } }