diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/ItemInsertExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/ItemInsertExt.cs index 1ec78e28..f503d8a5 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/ItemInsertExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/ItemInsertExt.cs @@ -2334,6 +2334,13 @@ namespace VEPROMS.CSLA.Library #region PasteReplace public static ItemInfo PasteReplace(ItemInfo itemInfo, int copyStartID, string chgid) { + bool tmp= false; + return PasteReplace(itemInfo, copyStartID, chgid, ref tmp); + } + // B2017-179 return a bool (firstTrans) if we could not replace the step but the user wants to position to the first transition that needs resolved + public static ItemInfo PasteReplace(ItemInfo itemInfo, int copyStartID, string chgid, ref bool firstTrans) + { + firstTrans = false; if (!CanDeleteObject()) throw new System.Security.SecurityException("User not authorized to remove a Item"); try @@ -2378,7 +2385,11 @@ namespace VEPROMS.CSLA.Library { ItemInfo iii = itemInfo.HandleSqlExceptionOnDelete(ex); if (iii == itemInfo) return null;// If self returned then return null - if (iii != null) return iii; + if (iii != null) + { + firstTrans = true; // B2017-179 set the firstTrans to true and return the itminfo of the first transition location that needs resolved + return iii; + } if (!HandleSqlExceptionOnCopy(ex)) { if (ex.Message.Contains("has External Transitions and has no next step") diff --git a/PROMS/Volian.Controls.Library/DisplayTabControl.cs b/PROMS/Volian.Controls.Library/DisplayTabControl.cs index a018e4c8..75e9562f 100644 --- a/PROMS/Volian.Controls.Library/DisplayTabControl.cs +++ b/PROMS/Volian.Controls.Library/DisplayTabControl.cs @@ -527,6 +527,7 @@ namespace Volian.Controls.Library break; case ItemInfo.EAddpingPart.Replace: EditItem ei = edtitm.PasteReplace(copyStartID); + if (ei == null) return false; //B2017-179 PasteReplace will return null if was aborted if (ei.MyItemInfo.ItemID != edtitm.MyItemInfo.ItemID) { edtitm.Dispose();