public void Process(int parMetod = -1) { if (parMetod == -1) { parMetod = GlobalVar.varMetod; } //Log log =new Log(); ErrConf = new ErrorConfiguration(); ErrConf.KeyErrorAction = KeyErrorAction.ConvertToUnknown; ErrConf.KeyNotFound = ErrorOption.IgnoreError; ErrConf.NullKeyConvertedToUnknown = ErrorOption.IgnoreError; if (Dim != null) { try { Log.log("ProcesDimension=>" + Dim.Name); Dim.Process(ProcessingType); } catch (Exception e) { if (ProcessType.ProcessFull != ProcessingType) { try { Log.log("try ProcessADD =>" + Dim.Name + "\n" + e.Message); Dim.Process(ProcessType.ProcessAdd); } catch (Exception e2) { Log.log("Error ProcessFull =>" + Dim.Name + "\n" + e2.Message); } } } }
/// <summary> /// add measure group into cube /// </summary> /// <param name="cube"> cube (instead of cube db)</param> /// <param name="measureGroupName"></param> /// <param name="measureGroupID"></param> /// <param name="isRealTime"></param> /// <param name="keyNotFoundAction"></param> /// <param name="dropIfExisted"></param> /// <returns>measure group</returns> internal static MeasureGroup ADD_MEASURE_GROUP( DB_SQLHELPER_BASE sqlHelper, Cube cube, String measureGroupName, String measureGroupID, int isRealTime, String keyNotFoundAction, bool dropIfExisted = false) { MeasureGroup measure_group = cube.MeasureGroups.Find(measureGroupID); if (measure_group != null && dropIfExisted) { measure_group.Drop(); } measure_group = cube.MeasureGroups.Add(measureGroupID); measure_group.Name = measureGroupName; if (isRealTime == '0') { measure_group.StorageMode = StorageMode.Molap; } else { measure_group.StorageMode = StorageMode.Rolap; } measure_group.Type = MeasureGroupType.Regular; if (keyNotFoundAction != "0") { ErrorConfiguration error_configuration = new ErrorConfiguration(); switch (keyNotFoundAction.ToLower()) { case "ignoreerror": error_configuration.KeyNotFound = ErrorOption.IgnoreError; break; case "reportandcontinue": error_configuration.KeyNotFound = ErrorOption.ReportAndContinue; break; case "reportandstop": error_configuration.KeyNotFound = ErrorOption.ReportAndStop; break; default: error_configuration.KeyNotFound = ErrorOption.IgnoreError; break; } measure_group.ErrorConfiguration = error_configuration; } sqlHelper.ADD_MESSAGE_LOG( String.Format("Added measure group {0} into cube", measureGroupName), MESSAGE_TYPE.MEASURE_GROUP, MESSAGE_RESULT_TYPE.Succeed); return(measure_group); }
public ErrorConfiguration Clone() { var errorConfiguration = new ErrorConfiguration(); errorConfiguration.Folder = this.Folder; if (this.Name != null) { errorConfiguration.Name = this.Name.Clone(); } return(errorConfiguration); }
/// <summary> /// Process the cube /// </summary> /// <param name="server"></param> /// <param name="username"></param> /// <param name="password"></param> /// <param name="cubeName"></param> /// <returns>Success if processed successfully else error message</returns> public string ProcessCube(string Server, string Username, string Password, string CubeName) { try { string connectionString = "Data Source=" + Server + ";User ID=" + Username + ";Password="******";"; analysisSqlServer = new Server(); analysisSqlServer.Connect(connectionString); Database db_PreviouslyCreated = analysisSqlServer.Databases.FindByName(CubeName); db_PreviouslyCreated.DataSourceImpersonationInfo.ImpersonationMode = ImpersonationMode.Default; db_PreviouslyCreated.Update(); System.Collections.IEnumerator iteratorDataBaseCollection = db_PreviouslyCreated.DataSources.GetEnumerator(); while (iteratorDataBaseCollection.MoveNext()) { ((DataSource)iteratorDataBaseCollection.Current).ImpersonationInfo.ImpersonationMode = ImpersonationMode.ImpersonateServiceAccount; ((DataSource)iteratorDataBaseCollection.Current).Update(); } ErrorConfiguration dbErrorConfiguration = new ErrorConfiguration(); dbErrorConfiguration.KeyErrorLimitAction = KeyErrorLimitAction.StopLogging; db_PreviouslyCreated.Process(ProcessType.ProcessDefault, dbErrorConfiguration); Cube cube = db_PreviouslyCreated.Cubes.FindByName("Clear Financials AS"); cube.ProactiveCaching.Enabled = false; cube.ErrorConfiguration = new ErrorConfiguration(); cube.StorageMode = StorageMode.Molap; cube.ErrorConfiguration.KeyErrorLimitAction = KeyErrorLimitAction.StopLogging; cube.ProactiveCaching.Enabled = false; cube.Update(UpdateOptions.Default, UpdateMode.Update); cube.Refresh(true); } catch (Exception ex) { return(ex.InnerException.ToString()); } return("success"); }
public static bool Process(ProcessableMajorObject obj, ProcessType type, OutputContext output) { var errors = new ErrorConfiguration { KeyDuplicate = ErrorOption.ReportAndStop, KeyNotFound = ErrorOption.ReportAndStop, NullKeyNotAllowed = ErrorOption.ReportAndStop, CalculationError = ErrorOption.ReportAndStop, NullKeyConvertedToUnknown = ErrorOption.ReportAndStop }; var warnings = new XmlaWarningCollection(); obj.Process(type, errors, warnings); if (warnings.Count > 0) { foreach (XmlaWarning warning in warnings) { output.Warn(warning.Description); } return(false); } return(true); }