Refresh NextItems when looking for Range transition Item

Dispose of steps as they are imported.
This commit is contained in:
Rich 2016-08-03 15:12:04 +00:00
parent 4293219f16
commit 56ab02c3f7
2 changed files with 139 additions and 127 deletions

View File

@ -3123,14 +3123,15 @@ namespace VEPROMS
CheckForFloatingFoldout(contentid, config); CheckForFloatingFoldout(contentid, config);
string userid = xc.Attributes.GetNamedItem("userid").InnerText; string userid = xc.Attributes.GetNamedItem("userid").InnerText;
DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText); DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText);
step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Table); using (step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Table))
{
step.DTS = dts; step.DTS = dts;
step.UserID = userid; step.UserID = userid;
// check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute) // check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute)
XmlNode fnNode = xc.Attributes.GetNamedItem("formatfilename"); //Bug fix B2016-103 the formatid in an Export file may not match the formatid where you are importing to XmlNode fnNode = xc.Attributes.GetNamedItem("formatfilename"); //Bug fix B2016-103 the formatid in an Export file may not match the formatid where you are importing to
string formatfilename = (fnNode != null) ? fnNode.InnerText : ""; string formatfilename = (fnNode != null) ? fnNode.InnerText : "";
if (formatid != string.Empty) if (formatid != string.Empty)
step.MyContent.MyFormat = OldToNewFormat(int.Parse(formatid),formatfilename); step.MyContent.MyFormat = OldToNewFormat(int.Parse(formatid), formatfilename);
step.MyContent.Config = config; step.MyContent.Config = config;
step.MyContent.DTS = dts; step.MyContent.DTS = dts;
step.MyContent.UserID = userid; step.MyContent.UserID = userid;
@ -3150,6 +3151,7 @@ namespace VEPROMS
prevInfo = StepInfo.Get(step.ItemID); prevInfo = StepInfo.Get(step.ItemID);
if (xc.HasChildNodes) if (xc.HasChildNodes)
AddParts(xc, prevInfo); AddParts(xc, prevInfo);
}
return prevInfo; return prevInfo;
} }
private void AddSteps(XmlNode xn, ItemInfo parentInfo) private void AddSteps(XmlNode xn, ItemInfo parentInfo)
@ -3212,7 +3214,8 @@ namespace VEPROMS
CheckForFloatingFoldout(contentid, config); CheckForFloatingFoldout(contentid, config);
string userid = xc.Attributes.GetNamedItem("userid").InnerText; string userid = xc.Attributes.GetNamedItem("userid").InnerText;
DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText); DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText);
step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Step); using (step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Step))
{
step.DTS = dts; step.DTS = dts;
step.UserID = userid; step.UserID = userid;
// check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute) // check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute)
@ -3237,6 +3240,7 @@ namespace VEPROMS
prevInfo = StepInfo.Get(step.ItemID); prevInfo = StepInfo.Get(step.ItemID);
if (xc.HasChildNodes) if (xc.HasChildNodes)
AddParts(xc, prevInfo); AddParts(xc, prevInfo);
}
return prevInfo; return prevInfo;
} }
private void AddRNOs(XmlNode xn, ItemInfo parentInfo) private void AddRNOs(XmlNode xn, ItemInfo parentInfo)
@ -3300,7 +3304,8 @@ namespace VEPROMS
CheckForFloatingFoldout(contentid, config); CheckForFloatingFoldout(contentid, config);
string userid = xc.Attributes.GetNamedItem("userid").InnerText; string userid = xc.Attributes.GetNamedItem("userid").InnerText;
DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText); DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText);
step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.RNO); using (step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.RNO))
{
step.DTS = dts; step.DTS = dts;
step.UserID = userid; step.UserID = userid;
// check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute) // check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute)
@ -3325,6 +3330,7 @@ namespace VEPROMS
prevInfo = StepInfo.Get(step.ItemID); prevInfo = StepInfo.Get(step.ItemID);
if (xc.HasChildNodes) if (xc.HasChildNodes)
AddParts(xc, prevInfo); AddParts(xc, prevInfo);
}
return prevInfo; return prevInfo;
} }
private void AddNotes(XmlNode xn, ItemInfo parentInfo) private void AddNotes(XmlNode xn, ItemInfo parentInfo)
@ -3388,7 +3394,8 @@ namespace VEPROMS
CheckForFloatingFoldout(contentid, config); CheckForFloatingFoldout(contentid, config);
string userid = xc.Attributes.GetNamedItem("userid").InnerText; string userid = xc.Attributes.GetNamedItem("userid").InnerText;
DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText); DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText);
step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Note); using (step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Note))
{
step.DTS = dts; step.DTS = dts;
step.UserID = userid; step.UserID = userid;
// check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute) // check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute)
@ -3413,6 +3420,7 @@ namespace VEPROMS
prevInfo = StepInfo.Get(step.ItemID); prevInfo = StepInfo.Get(step.ItemID);
if (xc.HasChildNodes) if (xc.HasChildNodes)
AddParts(xc, prevInfo); AddParts(xc, prevInfo);
}
return prevInfo; return prevInfo;
} }
private void AddCautions(XmlNode xn, ItemInfo parentInfo) private void AddCautions(XmlNode xn, ItemInfo parentInfo)
@ -3476,7 +3484,8 @@ namespace VEPROMS
CheckForFloatingFoldout(contentid, config); CheckForFloatingFoldout(contentid, config);
string userid = xc.Attributes.GetNamedItem("userid").InnerText; string userid = xc.Attributes.GetNamedItem("userid").InnerText;
DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText); DateTime dts = DateTime.Parse(xc.Attributes.GetNamedItem("dts").InnerText);
step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Caution); using (step = Step.MakeStep(parentInfo, prevInfo, number, text, steptype, E_FromType.Caution))
{
step.DTS = dts; step.DTS = dts;
step.UserID = userid; step.UserID = userid;
// check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute) // check for a null in case an older export file is being imported (the older files will not have the fromatfilename attribute)
@ -3501,6 +3510,7 @@ namespace VEPROMS
prevInfo = StepInfo.Get(step.ItemID); prevInfo = StepInfo.Get(step.ItemID);
if (xc.HasChildNodes) if (xc.HasChildNodes)
AddParts(xc, prevInfo); AddParts(xc, prevInfo);
}
return prevInfo; return prevInfo;
} }
private void AddSections(XmlNode xn, ItemInfo parentInfo) private void AddSections(XmlNode xn, ItemInfo parentInfo)

View File

@ -1205,6 +1205,8 @@ namespace VEPROMS.CSLA.Library
Dictionary<int, ItemInfo> rangeAncestors = GetAncestors(tb._RangeItem); Dictionary<int, ItemInfo> rangeAncestors = GetAncestors(tb._RangeItem);
tb.AppendPrefix(); tb.AppendPrefix();
bool usedRangeAncestor = false; bool usedRangeAncestor = false;
// Refresh Next Items
tb._ToItem.RefreshNextItems();
ItemInfo next = GetNextItem(tb._ToItem, rangeAncestors, ref usedRangeAncestor); ItemInfo next = GetNextItem(tb._ToItem, rangeAncestors, ref usedRangeAncestor);
string lastTab = Tab(tb._RangeItem, tb._RangeItem.ActiveFormat.PlantFormat.FormatData.TransData.TStepNoFlag); string lastTab = Tab(tb._RangeItem, tb._RangeItem.ActiveFormat.PlantFormat.FormatData.TransData.TStepNoFlag);
while (next.ItemID != tb._RangeItem.ItemID) while (next.ItemID != tb._RangeItem.ItemID)