From dc3d894195f20b7706b9072a1caea2998d88c5af Mon Sep 17 00:00:00 2001 From: Rich Date: Wed, 21 May 2014 20:39:49 +0000 Subject: [PATCH] Assure that the selected slave is set when looking up transition destinations. Added logic to properly find a procedure title when the first applicable step is not the first step. --- PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs | 17 +++++++++-------- .../Extension/TransitionExt.cs | 11 +++++++++-- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs index 2c078e1e..47be7e82 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs @@ -4850,17 +4850,18 @@ namespace VEPROMS.CSLA.Library ProcedureInfo tmp = DataPortal.Fetch(new ItemAndChildrenByUnitCriteria(args.ProcID, 0, args.UnitID)); if (tmp.MyDocVersion != null) { - if (tmp.MyDocVersion.VersionID == args.MyDocVersion.VersionID) - { - (tmp.MyConfig as ProcedureConfig).SelectedSlave = args.UnitID; - ItemInfo.SetParentSectionAndDocVersion(tmp, args.MyDocVersion, null, tmp, args.MyDocVersion); - } - else - { + //if (tmp.MyDocVersion.VersionID == args.MyDocVersion.VersionID) + //{ + // args.MyDocVersion.DocVersionConfig.SelectedSlave = args.UnitID; + // (tmp.MyConfig as ProcedureConfig).SelectedSlave = args.UnitID; + // ItemInfo.SetParentSectionAndDocVersion(tmp, args.MyDocVersion, null, tmp, args.MyDocVersion); + //} + //else + //{ tmp.MyDocVersion.DocVersionConfig.SelectedSlave = args.UnitID; (tmp.MyConfig as ProcedureConfig).SelectedSlave = args.UnitID; ItemInfo.SetParentSectionAndDocVersion(tmp, tmp.MyDocVersion, null, tmp, tmp.MyDocVersion); - } + //} } return tmp; } diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/TransitionExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/TransitionExt.cs index 9a6c4bd7..86947ad9 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/TransitionExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/TransitionExt.cs @@ -699,8 +699,15 @@ namespace VEPROMS.CSLA.Library // if can't find procedure, just put in a question mark. if (tb._ToItem.PreviousID == null && tb._ToItem.ItemPartCount == 0 && tb._ToItem.ItemDocVersionCount == 0) { - tb.Append("?"); - return true; // (tb.TextAdded = true); + if (tb._ToItem.ActiveParent is ItemInfo && (tb._ToItem.ActiveParent as ItemInfo).Steps[0].ItemID == tb._ToItem.ItemID) + { + // If the transition is to the first applicable step, then use the location rather than outputting a question mark. + } + else + { + tb.Append("?"); + return true; // (tb.TextAdded = true); + } } string parenstr = tb._ToItem.MyProcedure.MyContent.Text; parenstr = parenstr.Replace("\\LINE ", " ").Replace("\r\n", " ");