~Addressed out-of-memory exception being thrown when right-clicking on a procedure with previous revisions

This commit is contained in:
Chris Glavan 2024-02-19 12:09:09 -05:00
parent 719d2b5d90
commit 92345f8f91
3 changed files with 29 additions and 6 deletions

View File

@ -597,6 +597,13 @@ namespace VEPROMS.CSLA.Library
//if (_RevisionInfoList != null)
// return _RevisionInfoList;
RevisionInfoList tmp = DataPortal.Fetch<RevisionInfoList>(new ItemUnitCriteria(itemID, unitID));
foreach (var x in tmp)
{
x.LatestVersion.ApprovedXML = x.RevisionID.ToString();
x.LatestVersion.PDF = Encoding.ASCII.GetBytes(x.RevisionID.ToString());
x.LatestVersion.SummaryPDF = Encoding.ASCII.GetBytes(x.RevisionID.ToString());
}
RevisionInfo.AddList(tmp);
tmp.AddEvents();
//_RevisionInfoList = tmp;

View File

@ -153,6 +153,10 @@ namespace VEPROMS.CSLA.Library
CanReadProperty("PDF", true);
return _PDF;
}
set
{
_PDF = value;
}
}
private byte[] _SummaryPDF;
public byte[] SummaryPDF
@ -163,6 +167,10 @@ namespace VEPROMS.CSLA.Library
CanReadProperty("SummaryPDF", true);
return _SummaryPDF;
}
set
{
_SummaryPDF = value;
}
}
private string _ApprovedXML;
public string ApprovedXML
@ -173,6 +181,10 @@ namespace VEPROMS.CSLA.Library
CanReadProperty("ApprovedXML", true);
return _ApprovedXML;
}
set
{
_ApprovedXML = value;
}
}
private DateTime _DTS = new DateTime();
public DateTime DTS

View File

@ -1309,25 +1309,26 @@ namespace Volian.Controls.Library
if (ri.LatestVersion.PDF != null)
{
MenuItem mirp = mir.MenuItems.Add("View Procedure");
mirp.Tag = ri;
mirp.Tag = ri.RevisionID;
mirp.Click += new EventHandler(MultiUnitApprovedRevision_Click);
}
if (ri.LatestVersion.SummaryPDF != null)
{
MenuItem mirs = mir.MenuItems.Add("View Summary of Changes");
mirs.Tag = ri;
mirs.Tag = ri.RevisionID;
mirs.Click += new EventHandler(MultiUnitSummaryOfChanges_Click);
}
if (ri.LatestVersion.ApprovedXML != null && ri.LatestVersion.ApprovedXML != "")
{
MenuItem miri = mir.MenuItems.Add("Create Procedure to Import");
miri.Tag = ri;
miri.Tag = ri.RevisionID;
miri.Click += new EventHandler(ImportProcedure_Click);
}
//end added jcb 20111031
mv.Tag = lastApprovedRevisionID;
}
ril = null;
}
}
public void AddNewNode(IVEDrillDownReadOnly o)
@ -1419,7 +1420,8 @@ namespace Volian.Controls.Library
void ImportProcedure_Click(object sender, EventArgs e)
{
RevisionInfo ri = (sender as MenuItem).Tag as RevisionInfo;
//RevisionInfo ri = (sender as MenuItem).Tag as RevisionInfo;
RevisionInfo ri = RevisionInfo.Get(int.Parse((sender as MenuItem).Tag.ToString()));
RevisionConfig rc = ri.MyConfig as RevisionConfig;
// bug fix: B2016-183 - add the child's name (ex Unit 1) to the export file name for Parent/Child procedures.
int applIdx = rc.Applicability_Index;
@ -1459,7 +1461,8 @@ namespace Volian.Controls.Library
bool superceded = false;
MenuItem mi = sender as MenuItem;
if (mi == null) return;
RevisionInfo ri = mi.Tag as RevisionInfo;
//RevisionInfo ri = mi.Tag as RevisionInfo;
RevisionInfo ri = RevisionInfo.Get(int.Parse(mi.Tag.ToString()));
{
MenuItem mip = mi.Parent as MenuItem;
//B2021-086 Added the check for the last revision stage is an Approved stage
@ -1485,7 +1488,8 @@ namespace Volian.Controls.Library
{
MenuItem mi = sender as MenuItem;
if (mi == null) return;
RevisionInfo ri = mi.Tag as RevisionInfo;
//RevisionInfo ri = mi.Tag as RevisionInfo;
RevisionInfo ri = RevisionInfo.Get(int.Parse(mi.Tag.ToString()));
ItemInfo ii = ItemInfo.Get(ri.ItemID);
ii.MyDocVersion.DocVersionConfig.SelectedSlave = ri.MyConfig.Applicability_Index;
vlnTreeViewPdfArgs args = new vlnTreeViewPdfArgs(Volian.Base.Library.TmpFile.CreateFileName(ProcedureInfo.Get(ri.ItemID).PDFNumber + " Summary of Changes"), ri.LatestVersion.SummaryPDF, "");