/// <summary> /// add or reuse a tracker for the given clientID /// </summary> /// <param name="AClientID"></param> /// <param name="ACaption"></param> /// <param name="AAbsoluteOverallAmount"></param> /// <returns></returns> static public TProgressState InitProgressTracker(string AClientID, string ACaption, decimal AAbsoluteOverallAmount = 100.0m) { TProgressState state = new TProgressState(); state.AbsoluteOverallAmount = AAbsoluteOverallAmount; state.Caption = ACaption; // First clear all progress trackers. We cannot have too many variables in the session. We only work with one progress tracker per session. TSession.ClearVariables(PROGRESSTRACKER); TSession.SetVariable(PROGRESSTRACKER + AClientID, state); return(state); }