diff --git a/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs b/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs index 7cd3806d..03d91e3b 100644 --- a/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs +++ b/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs @@ -1633,8 +1633,8 @@ namespace VEPROMS.CSLA.Library // Load all extension specific return values (1 to many) for (int i = 0; i < lstValues.Count; i++) { - var roExt = Extensions.Where(x => x.Offset.Equals(i + 1)).SingleOrDefault(); - + // B2022-110: PC/PC Multi return values are correct in editor but not correct in Step Properties/ROs when selected, or when printed + var roExt = lstValues.Count==1?null:Extensions.Where(x => x.AccPageExt.Equals(_multiRoValues[i])).SingleOrDefault(); string roValue = GetParentChildROValue(lstValues[i], this.SelectedSlave); child.children[i].ParentID = child.ID; @@ -1643,7 +1643,7 @@ namespace VEPROMS.CSLA.Library child.children[i].value = roValue; child.children[i].appid = (roExt != null) ? string.Format("{0}.{1}", child.appid, roExt.AccPageExt) : child.appid; - child.children[i].roid = string.Format("{0}{1}{2}", tableID.ToString("X4"), child.ID.ToString("X8"), (roExt.RoidExt != null) ? roExt.RoidExt : string.Empty).ToUpper(); + child.children[i].roid = string.Format("{0}{1}{2}", tableID.ToString("X4"), child.ID.ToString("X8"), (roExt != null && roExt.RoidExt != null) ? roExt.RoidExt : string.Empty).ToUpper(); child.children[i].children = new List().ToArray(); }