diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/AuditExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/AuditExt.cs index 632574da..4744a1da 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/AuditExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/AuditExt.cs @@ -318,11 +318,11 @@ namespace VEPROMS.CSLA.Library #region ChronologyReport //chronology report - public static AnnotationAuditInfoList GetChronology(int @procItemID, int itemID) + public static AnnotationAuditInfoList GetChronology(int @procItemID, int itemID, DateTime dts) { try { - AnnotationAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteria(procItemID, itemID)); + AnnotationAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteria(procItemID, itemID, dts)); return tmp; } catch (Exception ex) @@ -343,10 +343,16 @@ namespace VEPROMS.CSLA.Library { get { return _itemID; } } - public ChronologyCriteria(int procItemID, int itemID) + private DateTime _DTS; + public DateTime DTS + { + get { return _DTS; } + } + public ChronologyCriteria(int procItemID, int itemID, DateTime dts) { _procItemID = procItemID; _itemID = itemID; + _DTS = dts; } } private void DataPortal_Fetch(ChronologyCriteria criteria) @@ -363,6 +369,7 @@ namespace VEPROMS.CSLA.Library cm.CommandText = "getAnnotationAuditsChronologyByItemID"; cm.Parameters.AddWithValue("@ProcItemID", criteria.ProcItemID); cm.Parameters.AddWithValue("@ItemID", criteria.ItemID); + cm.Parameters.AddWithValue("@DTS", criteria.DTS); cm.CommandTimeout = Database.DefaultTimeout; using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { @@ -389,11 +396,11 @@ namespace VEPROMS.CSLA.Library this.RaiseListChangedEvents = true; } //chronology report by unit - public static AnnotationAuditInfoList GetChronologyByUnit(int @procItemID, int itemID, int unitID) + public static AnnotationAuditInfoList GetChronologyByUnit(int @procItemID, int itemID, int unitID, DateTime dts) { try { - AnnotationAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteriaByUnit(procItemID, itemID, unitID)); + AnnotationAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteriaByUnit(procItemID, itemID, unitID, dts)); return tmp; } catch (Exception ex) @@ -419,11 +426,17 @@ namespace VEPROMS.CSLA.Library { get { return _UnitID; } } - public ChronologyCriteriaByUnit(int procItemID, int itemID, int unitID) + private DateTime _DTS; + public DateTime DTS + { + get { return _DTS; } + } + public ChronologyCriteriaByUnit(int procItemID, int itemID, int unitID, DateTime dts) { _procItemID = procItemID; _itemID = itemID; _UnitID = unitID; + _DTS = dts; } } private void DataPortal_Fetch(ChronologyCriteriaByUnit criteria) @@ -441,6 +454,7 @@ namespace VEPROMS.CSLA.Library cm.Parameters.AddWithValue("@ProcItemID", criteria.ProcItemID); cm.Parameters.AddWithValue("@ItemID", criteria.ItemID); cm.Parameters.AddWithValue("@UnitID", criteria.UnitID); + cm.Parameters.AddWithValue("@DTS", criteria.DTS); using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { IsReadOnly = false; @@ -674,11 +688,11 @@ namespace VEPROMS.CSLA.Library #region ChronologyReport //chronology report - public static ContentAuditInfoList GetChronology(int procedureItemID, int currentItemID, bool includeDeletedChildren) + public static ContentAuditInfoList GetChronology(int procedureItemID, int currentItemID, bool includeDeletedChildren, DateTime dts) { try { - ContentAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteria(procedureItemID, currentItemID, includeDeletedChildren)); + ContentAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteria(procedureItemID, currentItemID, includeDeletedChildren, dts)); return tmp; } catch (Exception ex) @@ -704,11 +718,17 @@ namespace VEPROMS.CSLA.Library { get { return _IncludeDeletedChildren; } } - public ChronologyCriteria(int procedureItemID, int currentItemID, bool includeDeletedChildren) + private DateTime _DTS; + public DateTime DTS + { + get { return _DTS; } + } + public ChronologyCriteria(int procedureItemID, int currentItemID, bool includeDeletedChildren, DateTime dts) { _ProcedureItemID = procedureItemID; _CurrentItemID = currentItemID; _IncludeDeletedChildren = includeDeletedChildren; + _DTS = dts; } } private void DataPortal_Fetch(ChronologyCriteria criteria) @@ -726,6 +746,7 @@ namespace VEPROMS.CSLA.Library cm.Parameters.AddWithValue("@ProcedureItemID", criteria.ProcedureItemID); cm.Parameters.AddWithValue("@SelectedItemID", criteria.CurrentItemID); cm.Parameters.AddWithValue("@IncludeDeletedChildren", criteria.IncludeDeletedChildren ? 1 : 0); + cm.Parameters.AddWithValue("@DTS", criteria.DTS); cm.CommandTimeout = Database.DefaultTimeout; using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { @@ -754,11 +775,11 @@ namespace VEPROMS.CSLA.Library this.RaiseListChangedEvents = true; } //chronology report by unit - public static ContentAuditInfoList GetChronologyByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID) + public static ContentAuditInfoList GetChronologyByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID, DateTime dts) { try { - ContentAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteriaByUnit(procedureItemID, currentItemID, includeDeletedChildren, unitID)); + ContentAuditInfoList tmp = DataPortal.Fetch(new ChronologyCriteriaByUnit(procedureItemID, currentItemID, includeDeletedChildren, unitID, dts)); return tmp; } catch (Exception ex) @@ -789,12 +810,18 @@ namespace VEPROMS.CSLA.Library { get { return _UnitID; } } - public ChronologyCriteriaByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID) + private DateTime _DTS; + public DateTime DTS + { + get { return _DTS; } + } + public ChronologyCriteriaByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID, DateTime dts) { _ProcedureItemID = procedureItemID; _CurrentItemID = currentItemID; _IncludeDeletedChildren = includeDeletedChildren; _UnitID = unitID; + _DTS = dts; } } private void DataPortal_Fetch(ChronologyCriteriaByUnit criteria) @@ -813,6 +840,7 @@ namespace VEPROMS.CSLA.Library cm.Parameters.AddWithValue("@SelectedItemID", criteria.CurrentItemID); cm.Parameters.AddWithValue("@IncludeDeletedChildren", criteria.IncludeDeletedChildren ? 1 : 0); cm.Parameters.AddWithValue("@UnitID", criteria.UnitID); + cm.Parameters.AddWithValue("@DTS", criteria.DTS); using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { IsReadOnly = false; @@ -843,11 +871,11 @@ namespace VEPROMS.CSLA.Library #region SummaryReport //summary report - public static ContentAuditInfoList GetSummary(int procedureItemID, int currentItemID, bool includeDeletedChildren) + public static ContentAuditInfoList GetSummary(int procedureItemID, int currentItemID, bool includeDeletedChildren, DateTime dts) { try { - ContentAuditInfoList tmp = DataPortal.Fetch(new SummaryCriteria(procedureItemID, currentItemID, includeDeletedChildren)); + ContentAuditInfoList tmp = DataPortal.Fetch(new SummaryCriteria(procedureItemID, currentItemID, includeDeletedChildren, dts)); return tmp; } catch (Exception ex) @@ -873,11 +901,17 @@ namespace VEPROMS.CSLA.Library { get { return _IncludeDeletedChildren; } } - public SummaryCriteria(int procedureItemID, int currentItemID, bool includeDeletedChildren) + private DateTime _DTS; + public DateTime DTS + { + get { return _DTS; } + } + public SummaryCriteria(int procedureItemID, int currentItemID, bool includeDeletedChildren, DateTime dts) { _ProcedureItemID = procedureItemID; _CurrentItemID = currentItemID; _IncludeDeletedChildren = includeDeletedChildren; + _DTS = dts; } } private void DataPortal_Fetch(SummaryCriteria criteria) @@ -895,6 +929,7 @@ namespace VEPROMS.CSLA.Library cm.Parameters.AddWithValue("@ProcedureItemID", criteria.ProcedureItemID); cm.Parameters.AddWithValue("@SelectedItemID", criteria.CurrentItemID); cm.Parameters.AddWithValue("@IncludeDeletedChildren", criteria.IncludeDeletedChildren ? 1 : 0); + cm.Parameters.AddWithValue("@DTS", criteria.DTS); cm.CommandTimeout = Database.DefaultTimeout; using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { @@ -923,11 +958,11 @@ namespace VEPROMS.CSLA.Library this.RaiseListChangedEvents = true; } //summary report by unit - public static ContentAuditInfoList GetSummaryByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID) + public static ContentAuditInfoList GetSummaryByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID, DateTime dts) { try { - ContentAuditInfoList tmp = DataPortal.Fetch(new SummaryCriteriaByUnit(procedureItemID, currentItemID, includeDeletedChildren, unitID)); + ContentAuditInfoList tmp = DataPortal.Fetch(new SummaryCriteriaByUnit(procedureItemID, currentItemID, includeDeletedChildren, unitID, dts)); return tmp; } catch (Exception ex) @@ -958,12 +993,18 @@ namespace VEPROMS.CSLA.Library { get { return _UnitID; } } - public SummaryCriteriaByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID) + private DateTime _DTS; + public DateTime DTS + { + get { return _DTS; } + } + public SummaryCriteriaByUnit(int procedureItemID, int currentItemID, bool includeDeletedChildren, int unitID, DateTime dts) { _ProcedureItemID = procedureItemID; _CurrentItemID = currentItemID; _IncludeDeletedChildren = includeDeletedChildren; _UnitID = unitID; + _DTS = dts; } } private void DataPortal_Fetch(SummaryCriteriaByUnit criteria) @@ -982,6 +1023,7 @@ namespace VEPROMS.CSLA.Library cm.Parameters.AddWithValue("@SelectedItemID", criteria.CurrentItemID); cm.Parameters.AddWithValue("@IncludeDeletedChildren", criteria.IncludeDeletedChildren ? 1 : 0); cm.Parameters.AddWithValue("@UnitID", criteria.UnitID); + cm.Parameters.AddWithValue("@DTS", criteria.DTS); using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { IsReadOnly = false; diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs index 44509ecf..1b956777 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs @@ -1983,7 +1983,7 @@ namespace VEPROMS.CSLA.Library if (sc == null) return false; // if there is no override & return whether there was a change to the text. if (sc.Step_CBOverride == null) - return (MyContent.DTS > MyProcedure.DTS); + return (MyContent.DTS > MyProcedure.ChangeBarDate); else // override is on: return (sc.Step_CBOverride == "On"); } @@ -4084,6 +4084,22 @@ namespace VEPROMS.CSLA.Library [Serializable()] public partial class ProcedureInfo : ItemInfo, IVEDrillDownReadOnly { + private DateTime? _ChangeBarDate = null; + public DateTime ChangeBarDate + { + get + { + if (_ChangeBarDate == null) + { + _ChangeBarDate = DTS; + string cbDTS = (MyConfig as ProcedureConfig).Print_ChangeBarDate; + if ((cbDTS ?? "") != "") + _ChangeBarDate = DateTime.Parse(cbDTS); + } + return (DateTime)_ChangeBarDate; + } + set { _ChangeBarDate = value; } + } public Dictionary MyLookup = null; public override void SetupTags() { @@ -4153,6 +4169,7 @@ namespace VEPROMS.CSLA.Library if (tmp != null) { tmp.MyDocVersion.DocVersionConfig.SelectedSlave = (int)unitID; + (tmp.MyConfig as ProcedureConfig).SelectedSlave = (int)unitID; TransitionLookup tranLookup = new TransitionLookup((int)unitID, (int)itemID, tmp.MyLookup); tranLookup.NewLookupNeeded += new TransitionLookupEvent(GetNewLookup); SetParentSectionAndDocVersion(tmp, tmp.MyDocVersion, null, tmp.MyDocVersion, tranLookup);