internal void DeleteReport(Report report, bool DenyShared) { report.Validate(true); if (report.State == Report.StateEnum.Executing) { try { report.CancelExecute(); } catch { // do nothing } } if (BeforeDeleteReport != null) { BeforeDeleteReport(report, EventArgs.Empty); } DeleteSharedReports(report); report._DeleteStates(); report._Delete(DenyShared); report = null; }