Compare commits
29 Commits
76502e6d97
...
B2025-005
| Author | SHA1 | Date | |
|---|---|---|---|
| 4ca3697845 | |||
| 37626d8f45 | |||
| f95369d3a4 | |||
| aa00891f8e | |||
| d44f9ba2b6 | |||
| c3b7b1e5a4 | |||
| f3309e4a40 | |||
| 8fa059c186 | |||
| 96e61aea2b | |||
| 565779c9c8 | |||
| b4ccd682c3 | |||
| dba1331556 | |||
| 8803ae2274 | |||
| 69d09b7fc2 | |||
| 8ddfc8654e | |||
| 7a3243e882 | |||
| 4fc3b89e06 | |||
| a17419ac12 | |||
| 88905132e7 | |||
| 111bed58d6 | |||
| bed61324d6 | |||
| 1a889352b8 | |||
| 5bba126a36 | |||
| e01b955d46 | |||
| e3431b0e1e | |||
| b6d646b910 | |||
| bb679a2790 | |||
| e3af0a6426 | |||
| b2108b9e5f |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1154,7 +1154,10 @@ namespace ROEditor
|
|||||||
tbtnCancel.Enabled = true;
|
tbtnCancel.Enabled = true;
|
||||||
tbtnSave.Enabled = true;
|
tbtnSave.Enabled = true;
|
||||||
tbtnRestore.Enabled = true;
|
tbtnRestore.Enabled = true;
|
||||||
tbtnSaveAs.Enabled = true;
|
if (newone == null)
|
||||||
|
{ tbtnSaveAs.Enabled = true; }
|
||||||
|
else
|
||||||
|
{ tbtnSaveAs.Enabled = false; }
|
||||||
}
|
}
|
||||||
menuROSave.Enabled = tbtnSave.Enabled;
|
menuROSave.Enabled = tbtnSave.Enabled;
|
||||||
}
|
}
|
||||||
@@ -1170,7 +1173,10 @@ namespace ROEditor
|
|||||||
|
|
||||||
tbtnSave.Enabled = true;
|
tbtnSave.Enabled = true;
|
||||||
tbtnRestore.Enabled = true;
|
tbtnRestore.Enabled = true;
|
||||||
tbtnSaveAs.Enabled = true;
|
if (newone == null)
|
||||||
|
{ tbtnSaveAs.Enabled = true; }
|
||||||
|
else
|
||||||
|
{ tbtnSaveAs.Enabled = false; }
|
||||||
tbtnCancel.Enabled = true;
|
tbtnCancel.Enabled = true;
|
||||||
menuROSave.Enabled = tbtnSave.Enabled;
|
menuROSave.Enabled = tbtnSave.Enabled;
|
||||||
//B2021-080 set the mysavexml flag to true to ensure the text change will be saved
|
//B2021-080 set the mysavexml flag to true to ensure the text change will be saved
|
||||||
@@ -2392,20 +2398,26 @@ namespace ROEditor
|
|||||||
*/
|
*/
|
||||||
private void menuRODelete_Click(object sender, System.EventArgs e)
|
private void menuRODelete_Click(object sender, System.EventArgs e)
|
||||||
{
|
{
|
||||||
bool success=false;
|
string msgstr = "It is recommended that you may wish to create a backup zip of your RO folder prior to performing deletions.\n\nAre you sure you wish to delete the selected RO/RO Group?";
|
||||||
XmlNode nd = (XmlNode) roTreeView.SelectedNode.Tag;
|
|
||||||
if (nd.ParentNode.Name == "RO_Root")
|
DialogResult AnswerYN = MessageBox.Show(msgstr, "Deleting ROs/RO Group", MessageBoxButtons.YesNo);
|
||||||
success = myrodb.RODB_DeleteGroup(nd,null,null);
|
if (AnswerYN == DialogResult.Yes)
|
||||||
else
|
|
||||||
success = myrodb.RODB_DeleteRO(nd);
|
|
||||||
if (success == true)
|
|
||||||
{
|
{
|
||||||
// remove from xml tree & the tree control
|
bool success = false;
|
||||||
XmlNode parent = nd.ParentNode;
|
XmlNode nd = (XmlNode)roTreeView.SelectedNode.Tag;
|
||||||
parent.RemoveChild(nd);
|
if (nd.ParentNode.Name == "RO_Root")
|
||||||
updateRoListView(roTreeView.SelectedNode.Parent);
|
success = myrodb.RODB_DeleteGroup(nd, null, null);
|
||||||
roTreeView.SelectedNode.Remove();
|
else
|
||||||
roTreeView.Refresh();
|
success = myrodb.RODB_DeleteRO(nd);
|
||||||
|
if (success == true)
|
||||||
|
{
|
||||||
|
// remove from xml tree & the tree control
|
||||||
|
XmlNode parent = nd.ParentNode;
|
||||||
|
parent.RemoveChild(nd);
|
||||||
|
updateRoListView(roTreeView.SelectedNode.Parent);
|
||||||
|
roTreeView.SelectedNode.Remove();
|
||||||
|
roTreeView.Refresh();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2616,7 +2628,6 @@ namespace ROEditor
|
|||||||
success = ctlXMLEdit2.SaveData();
|
success = ctlXMLEdit2.SaveData();
|
||||||
if (!success)
|
if (!success)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Save Failed");
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
VlnXmlElement myro;
|
VlnXmlElement myro;
|
||||||
@@ -2732,7 +2743,6 @@ namespace ROEditor
|
|||||||
if (!success)
|
if (!success)
|
||||||
{
|
{
|
||||||
tbtnRestore.Enabled = false; // old data may not be around
|
tbtnRestore.Enabled = false; // old data may not be around
|
||||||
MessageBox.Show("Save Failed");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -324,29 +324,17 @@ namespace ctlXMLEditLib
|
|||||||
string ROINI = Directory.GetCurrentDirectory()+ "\\ROAPP.INI";
|
string ROINI = Directory.GetCurrentDirectory()+ "\\ROAPP.INI";
|
||||||
|
|
||||||
// Get the default file extension for graphic files
|
// Get the default file extension for graphic files
|
||||||
// DefaultGraphicFileExtension = TheIniFile.GetINIKeyValueStr("ROApp","Extention","",5,"ROAPP.INI");
|
// DefaultGraphicFileExtension = TheIniFile.GetINIKeyValueStr("ROApp","Extention","",5,"ROAPP.INI");
|
||||||
// Bug fix: B2006-025
|
// Bug fix: B2006-025
|
||||||
// needed to pass the full path of ROAPP.INI
|
// needed to pass the full path of ROAPP.INI
|
||||||
|
// B2025-007 only use the default file location (remove 16 bit PROMS location)
|
||||||
IniReader in1 = new IniReader(ROINI);
|
IniReader in1 = new IniReader(ROINI);
|
||||||
DefaultGraphicFileExtension = in1.ReadString("ROApp","Extention","");
|
DefaultGraphicFileExtension = in1.ReadString("ROApp", "Extention");
|
||||||
if (DefaultGraphicFileExtension.Equals(""))
|
if (string.IsNullOrEmpty(DefaultGraphicFileExtension)) DefaultGraphicFileExtension = in1.ReadString("ROApp", "Extension", ".TIF");
|
||||||
{
|
// if (File.Exists(PromsINI))
|
||||||
string ApplPathUp = ApplicationPath.ToUpper();
|
// DefaultGraphicFileExtension = TheIniFile.GetINIKeyValueStr("Graphics","defaultext",".TIF",5,PromsINI);
|
||||||
int idx = ApplPathUp.IndexOf("VE-PROMS.NET\\BIN");
|
// if (File.Exists("ROAPP.INI"))
|
||||||
if (idx >= 0)
|
// DefaultGraphicFileExtension = TheIniFile.GetINIKeyValueStr("ROApp","Extention",".TIF",5,"ROAPP.INI");
|
||||||
{
|
|
||||||
string PromsINI = ApplicationPath.Substring(0, idx);
|
|
||||||
PromsINI += "VE-PROMS\\VEPROMS.INI";
|
|
||||||
IniReader in2 = new IniReader(PromsINI);
|
|
||||||
DefaultGraphicFileExtension = in2.ReadString("Graphics", "defaultext", ".TIF");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
DefaultGraphicFileExtension = ".TIF";
|
|
||||||
}
|
|
||||||
// if (File.Exists(PromsINI))
|
|
||||||
// DefaultGraphicFileExtension = TheIniFile.GetINIKeyValueStr("Graphics","defaultext",".TIF",5,PromsINI);
|
|
||||||
// if (File.Exists("ROAPP.INI"))
|
|
||||||
// DefaultGraphicFileExtension = TheIniFile.GetINIKeyValueStr("ROApp","Extention",".TIF",5,"ROAPP.INI");
|
|
||||||
if (!DefaultGraphicFileExtension.StartsWith("."))
|
if (!DefaultGraphicFileExtension.StartsWith("."))
|
||||||
DefaultGraphicFileExtension = "." + DefaultGraphicFileExtension;
|
DefaultGraphicFileExtension = "." + DefaultGraphicFileExtension;
|
||||||
|
|
||||||
@@ -784,6 +772,7 @@ namespace ctlXMLEditLib
|
|||||||
dosaveflag = false;
|
dosaveflag = false;
|
||||||
return (true);
|
return (true);
|
||||||
}
|
}
|
||||||
|
MessageBox.Show("Save Failed");
|
||||||
return (false);
|
return (false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1129,7 +1118,7 @@ namespace ctlXMLEditLib
|
|||||||
mylabel.BackColor = chlbckcolor; // PC Applic fields are shaded blue otherwise backcolor is transparent
|
mylabel.BackColor = chlbckcolor; // PC Applic fields are shaded blue otherwise backcolor is transparent
|
||||||
mylabel.Location = new Point(screenx+indent, screeny);
|
mylabel.Location = new Point(screenx+indent, screeny);
|
||||||
mylabel.Name = (pcChildIdx == 0) ? CvtUserFldToFld(element.Name) : CvtUserFldToFld(pcChildFldName);
|
mylabel.Name = (pcChildIdx == 0) ? CvtUserFldToFld(element.Name) : CvtUserFldToFld(pcChildFldName);
|
||||||
mylabel.Text = (applicLabel.Length > 0) ? applicLabel : CvtFldToUserFld(element.Name); // C2021-026 applicLabel is the P/C Child name
|
mylabel.Text = (applicLabel.Length > 0) ? applicLabel : CvtFldToUserFld(element.Name).Replace("Image_",""); // C2021-026 applicLabel is the P/C Child name
|
||||||
mylabel.AutoSize = true;
|
mylabel.AutoSize = true;
|
||||||
Controls.Add(mylabel);
|
Controls.Add(mylabel);
|
||||||
// add 3 onto screeny so that textbox is slightly below label.
|
// add 3 onto screeny so that textbox is slightly below label.
|
||||||
@@ -1484,12 +1473,15 @@ namespace ctlXMLEditLib
|
|||||||
if (fnamebox.Text != "" && fnamebox.Modified == true)
|
if (fnamebox.Text != "" && fnamebox.Modified == true)
|
||||||
{
|
{
|
||||||
FileInfo ifi = new FileInfo(fnamebox.Text);
|
FileInfo ifi = new FileInfo(fnamebox.Text);
|
||||||
if (ifi.Exists == false)
|
if (ifi.Exists == false)
|
||||||
{
|
{
|
||||||
MessageBoxButtons buttons = MessageBoxButtons.OK;
|
FileInfo ifi2 = new FileInfo(fnamebox.Text + DefaultGraphicFileExtension);
|
||||||
MessageBox.Show( "File does not exist.",
|
if (!ifi2.Exists)
|
||||||
"File Input Error", buttons);
|
{
|
||||||
return;
|
MessageBox.Show("File does not exist.",
|
||||||
|
"File Input Error", MessageBoxButtons.OK);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
bool ok = ValidGraphicsFile(fnamebox.Text);
|
bool ok = ValidGraphicsFile(fnamebox.Text);
|
||||||
if (ok != true)
|
if (ok != true)
|
||||||
@@ -1696,7 +1688,7 @@ namespace ctlXMLEditLib
|
|||||||
}
|
}
|
||||||
catch (Exception ee)
|
catch (Exception ee)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Invalid Height Input",ee.ToString());
|
MessageBox.Show("The Height and Width cannot be empty fields. Enter a number in either field and the other will automatically adjust to a proportional size.", "Invalid Height Input");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1713,7 +1705,7 @@ namespace ctlXMLEditLib
|
|||||||
}
|
}
|
||||||
catch (Exception ee)
|
catch (Exception ee)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Invalid Width Input", ee.ToString());
|
MessageBox.Show("The Height and Width cannot be empty fields. Enter a number in either field and the other will automatically adjust to a proportional size.", "Invalid Width Input");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1352,6 +1352,16 @@ namespace VEPROMS.CSLA.Library
|
|||||||
{
|
{
|
||||||
gg = ItemInfo.ConvertToDisplayText(gg);
|
gg = ItemInfo.ConvertToDisplayText(gg);
|
||||||
newvalue = ItemInfo.ConvertToDisplayText(newvalue);
|
newvalue = ItemInfo.ConvertToDisplayText(newvalue);
|
||||||
|
|
||||||
|
//CSM B2024-094 - Carats (as Deltas) print as question marks in tables when unit <u> is used in RO Definition Value
|
||||||
|
//If there is a grid, need to keep these as the \u code
|
||||||
|
//Otherwise they will not use the correct font and end up as question marks
|
||||||
|
if (MyGrid != null)
|
||||||
|
{
|
||||||
|
gg = gg.Replace($"{(char)916}", @"\u916?");
|
||||||
|
newvalue = newvalue.Replace($"{(char)916}", @"\u916?");
|
||||||
|
}
|
||||||
|
|
||||||
// Debug - jsj 5-19-2017 - left in for initial check-in
|
// Debug - jsj 5-19-2017 - left in for initial check-in
|
||||||
//string xx_gg = gg_org.Replace(@"\'b0", @"\'B0").Replace(@"\u8209?", "-").Replace(@"\u160?", " ").Replace("\xA0", " ");
|
//string xx_gg = gg_org.Replace(@"\'b0", @"\'B0").Replace(@"\u8209?", "-").Replace(@"\u160?", " ").Replace("\xA0", " ");
|
||||||
//string xx_nv = newval_org.Replace(@"\'b0", @"\'B0").Replace(@"\u8209?", "-").Replace(@"\u160?", " ").Replace("\xA0", " ");
|
//string xx_nv = newval_org.Replace(@"\'b0", @"\'B0").Replace(@"\u8209?", "-").Replace(@"\u160?", " ").Replace("\xA0", " ");
|
||||||
|
|||||||
@@ -8447,97 +8447,7 @@ namespace VEPROMS.CSLA.Library
|
|||||||
Dr = dr;
|
Dr = dr;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public static DataTable GetDisplayTabs(int itemID) //, string displayTabID, string displayTabName)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
DataTable tmp = DataPortal.Fetch<DataTable>(new DisplayTabs(itemID, "", "")); //, displayTabID, displayTabName));
|
|
||||||
//ItemInfo.AddList(tmp);
|
|
||||||
//tmp.AddEvents();
|
|
||||||
return tmp;
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
throw new DbCslaException("Error on ItemInfoList.GetChildren", ex);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
private DataTable dt = new DataTable();
|
|
||||||
private DataTable DataPortal_Fetch(DisplayTabs criteria)
|
|
||||||
{
|
|
||||||
|
|
||||||
using (SqlConnection cn = Database.VEPROMS_SqlConnection)
|
|
||||||
{
|
|
||||||
using (SqlCommand cm = cn.CreateCommand())
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
cm.CommandType = CommandType.StoredProcedure;
|
|
||||||
cm.CommandText = "GetDisplayTabData";
|
|
||||||
cm.CommandTimeout = Database.DefaultTimeout;
|
|
||||||
SqlDataAdapter da = new SqlDataAdapter(cm);
|
|
||||||
da.Fill(dt);
|
|
||||||
cn.Close();
|
|
||||||
da.Dispose();
|
|
||||||
return dt;
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.DataPortal_Fetch", ex);
|
|
||||||
throw new DbCslaException("ItemExt.DataPortal_Fetch", ex);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
//public static void AddDisplayTabsState(int itemID, string displayTabID, string displayTabName)
|
|
||||||
//{
|
|
||||||
// try
|
|
||||||
// {
|
|
||||||
// //DisplayTabs tmp =
|
|
||||||
// DataPortal.Fetch<DisplayTabs>(new DisplayTabs(itemID, displayTabID, displayTabName)); //, displayTabID, displayTabName));
|
|
||||||
// //ItemInfo.AddList(tmp);
|
|
||||||
// //tmp.AddEvents();
|
|
||||||
// //return tmp;
|
|
||||||
// }
|
|
||||||
// catch (Exception ex)
|
|
||||||
// {
|
|
||||||
// throw new DbCslaException("Error on ItemInfoList.GetChildren", ex);
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//private DataTable dt = new DataTable();
|
|
||||||
//private void DataPortal_Fetch(int itemID, string displayTabID, string displayTabName)
|
|
||||||
//{
|
|
||||||
|
|
||||||
// using (SqlConnection cn = Database.VEPROMS_SqlConnection)
|
|
||||||
// {
|
|
||||||
// using (SqlCommand cm = cn.CreateCommand())
|
|
||||||
// {
|
|
||||||
// try
|
|
||||||
// {
|
|
||||||
// cm.CommandType = CommandType.StoredProcedure;
|
|
||||||
// cm.CommandText = "AddDisplayTabState";
|
|
||||||
// cm.CommandTimeout = Database.DefaultTimeout;
|
|
||||||
// cm.Parameters.AddWithValue("@ItemID", ItemID);
|
|
||||||
// cm.Parameters.AddWithValue("@displayTabID", displayTabID);
|
|
||||||
// cm.Parameters.AddWithValue("@displayTabName", displayTabName);
|
|
||||||
// cm.ExecuteNonQuery();
|
|
||||||
// //SqlDataAdapter da = new SqlDataAdapter(cm);
|
|
||||||
// //da.Fill(dt);
|
|
||||||
// //cn.Close();
|
|
||||||
// //da.Dispose();
|
|
||||||
// //return dt; // fix
|
|
||||||
// }
|
|
||||||
// catch (Exception ex)
|
|
||||||
// {
|
|
||||||
// //if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.DataPortal_Fetch", ex);
|
|
||||||
// throw new DbCslaException("ItemExt.DataPortal_Fetch", ex);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
//}
|
|
||||||
public static void AddDisplayTabsState(int itemID, string displayTabID, string displayTabName)
|
public static void AddDisplayTabsState(int itemID, string displayTabID, string displayTabName)
|
||||||
//private void DataPortal_Fetch(int itemID, string displayTabID, string displayTabName)
|
//private void DataPortal_Fetch(int itemID, string displayTabID, string displayTabName)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2650,97 +2650,174 @@ namespace VEPROMS.CSLA.Library
|
|||||||
firstTrans = false;
|
firstTrans = false;
|
||||||
if (!CanDeleteObject())
|
if (!CanDeleteObject())
|
||||||
throw new System.Security.SecurityException("User not authorized to remove a Item");
|
throw new System.Security.SecurityException("User not authorized to remove a Item");
|
||||||
// B2016-009 check source and desintation types and display message box if needed
|
// B2016-009 check source and destination types and display message box if needed
|
||||||
// C2022-017 moved the CheckSourceDestinationType call to btnPasteReplace_Click in StepTabRibbon
|
// C2022-017 moved the CheckSourceDestinationType call to btnPasteReplace_Click in StepTabRibbon
|
||||||
// B2023-101 Handle Paste Replace when procedure to be replaced has Incoming Transitions, i.e. do a separate try/catch for this case
|
// B2023-101 Handle Paste Replace when procedure to be replaced has Incoming Transitions, i.e. do a separate try/catch for this case
|
||||||
ItemInfo newItemInfo = null;
|
ItemInfo newItemInfo = null;
|
||||||
try
|
using (ItemInfo copyItemInfo = ItemInfo.Get(copyStartID))
|
||||||
{
|
{
|
||||||
// C2017-031: Support for paste/replace an enhanced step, if this is replacing enhanced, do a specific query
|
try
|
||||||
if (itemInfo.IsEnhancedStep)
|
|
||||||
{
|
{
|
||||||
newItemInfo = ItemInfo.CopyPasteReplaceEnhancedItemInfoFetch(copyStartID, itemInfo);
|
// C2017-031: Support for paste/replace an enhanced step, if this is replacing enhanced, do a specific query
|
||||||
if (newItemInfo == null) return null;
|
if (itemInfo.IsEnhancedStep)
|
||||||
|
{
|
||||||
|
newItemInfo = ItemInfo.CopyPasteReplaceEnhancedItemInfoFetch(copyStartID, itemInfo);
|
||||||
|
if (newItemInfo == null) return null;
|
||||||
|
}
|
||||||
|
//C2025-003 Enhanced Copy/Paste Upgrade - Added support for paste/replace on a master step
|
||||||
|
else if (itemInfo.HasEnhancedLinkedStep || copyItemInfo.HasEnhancedLinkedStep)
|
||||||
|
{
|
||||||
|
DialogResult rslt = DialogResult.No;
|
||||||
|
|
||||||
|
SectionConfig secCfg = itemInfo.ActiveSection.MyConfig as SectionConfig;
|
||||||
|
if (copyItemInfo.HasEnhancedLinkedStep && secCfg.MyEnhancedDocuments.Count > 0)
|
||||||
|
rslt = FlexibleMessageBox.Show("The step you are copying contains linked background documents." +
|
||||||
|
"\r\n\r\nDo you also wish to make a copy of the background documents?",
|
||||||
|
"Paste background documents", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
|
||||||
|
|
||||||
|
//unlink and remove any background documents attached to where you are copying to
|
||||||
|
//and then delete them
|
||||||
|
//if selected want to replace BG step (DialogResult.Yes)
|
||||||
|
if (itemInfo.HasEnhancedLinkedStep && rslt == DialogResult.Yes)
|
||||||
|
{
|
||||||
|
foreach (EnhancedDocument ed in itemInfo.GetMyEnhancedDocuments())
|
||||||
|
{
|
||||||
|
using (ItemInfo exEnh = ItemInfo.Get(ed.ItemID))
|
||||||
|
{
|
||||||
|
exEnh.DoUnlinkEnhanced(exEnh, 0, false);
|
||||||
|
DeleteItemAndChildren(exEnh);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//do copy/paste replace of the master step
|
||||||
|
newItemInfo = ItemInfo.CopyPasteReplaceItemInfoFetch(copyStartID, itemInfo);
|
||||||
|
if (newItemInfo == null) return null;
|
||||||
|
|
||||||
|
//copy any background documents
|
||||||
|
//if selected want to replace BG step (DialogResult.Yes)
|
||||||
|
if (copyItemInfo.HasEnhancedLinkedStep && rslt == DialogResult.Yes)
|
||||||
|
{
|
||||||
|
foreach (EnhancedDocument ed in copyItemInfo.GetMyEnhancedDocuments())
|
||||||
|
{
|
||||||
|
using (ItemInfo exEnh = newItemInfo.DoAddMissingEnhancedItems(ed.Type))
|
||||||
|
{
|
||||||
|
PasteReplace(exEnh, ed.ItemID, chgid, ref firstTrans);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (rslt == DialogResult.No)
|
||||||
|
{
|
||||||
|
//if selected didn't want to copy BG documents (DialogResult.No)
|
||||||
|
//need to unlink BG doc from old removed content (what was pasted over top of)
|
||||||
|
//re-link BG document to new paste replace master doc
|
||||||
|
//this should also auto update the text of the main linked item
|
||||||
|
//to match the new master doc wording
|
||||||
|
|
||||||
|
//get original BG documents
|
||||||
|
EnhancedDocuments orig_eds = itemInfo.GetMyEnhancedDocuments();
|
||||||
|
|
||||||
|
//remove link from pre-existing BG docs
|
||||||
|
foreach (EnhancedDocument ed in orig_eds)
|
||||||
|
{
|
||||||
|
using (ItemInfo exEnh = ItemInfo.Get(ed.ItemID))
|
||||||
|
{ exEnh.DoUnlinkEnhanced(exEnh, 0, false); }
|
||||||
|
}
|
||||||
|
|
||||||
|
//remove link from steps just copied
|
||||||
|
ItemInfo.PasteClearEnhanced(newItemInfo);
|
||||||
|
|
||||||
|
//re-link pre-existing BG docs to newly replaced master step
|
||||||
|
foreach (EnhancedDocument ed in orig_eds)
|
||||||
|
{
|
||||||
|
using (ItemInfo orig_ed_item = ItemInfo.Get(ed.ItemID))
|
||||||
|
{ newItemInfo.DoCreateLinksEnhancedSingleItem(orig_ed_item, ed.Type); }
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
newItemInfo = ItemInfo.CopyPasteReplaceItemInfoFetch(copyStartID, itemInfo); if (newItemInfo == null) return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
catch (Exception ex1)
|
||||||
{
|
{
|
||||||
newItemInfo = ItemInfo.CopyPasteReplaceItemInfoFetch(copyStartID, itemInfo); if (newItemInfo == null) return null;
|
if (ex1.Message.Contains("has External Transitions and has no next step")
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (Exception ex1)
|
|
||||||
{
|
|
||||||
if (ex1.Message.Contains("has External Transitions and has no next step")
|
|
||||||
|| ex1.Message.Contains("has External Transitions to Procedure")
|
|| ex1.Message.Contains("has External Transitions to Procedure")
|
||||||
|| ex1.Message.Contains("has External Transitions to it's children"))
|
|| ex1.Message.Contains("has External Transitions to it's children"))
|
||||||
|
|
||||||
{
|
{
|
||||||
FlexibleMessageBox.Show("This procedure has external transition references to it that must be resolved before doing the Paste/Replace.\r\nRight Click on the procedure and select the Incoming Transitions menu option to find these references and resolve them.", "Paste Replace Failed", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
|
FlexibleMessageBox.Show("This procedure has external transition references to it that must be resolved before doing the Paste/Replace.\r\nRight Click on the procedure and select the Incoming Transitions menu option to find these references and resolve them.", "Paste Replace Failed", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
|
||||||
return null;
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
try
|
||||||
try
|
{
|
||||||
{
|
// Delete business objects, including remove from tree
|
||||||
// Delete business objects, including remove from tree
|
ItemInfo.DeleteItemInfoAndChildren(itemInfo.ItemID); // Dispose ItemInfo and Children
|
||||||
ItemInfo.DeleteItemInfoAndChildren(itemInfo.ItemID); // Dispose ItemInfo and Children
|
using (Item item = Get(newItemInfo.ItemID)) ItemInfo.Refresh(item);
|
||||||
using (Item item = Get(newItemInfo.ItemID)) ItemInfo.Refresh(item);
|
ItemInfo.PasteSetChangeId(newItemInfo, chgid);
|
||||||
ItemInfo.PasteSetChangeId(newItemInfo, chgid);
|
if (!copyItemInfo.HasEnhancedLinkedStep && !itemInfo.HasEnhancedLinkedStep) ItemInfo.PasteClearEnhanced(newItemInfo);
|
||||||
ItemInfo.PasteClearEnhanced(newItemInfo);
|
if (newItemInfo.NextItem != null) using (Item item = newItemInfo.NextItem.Get()) ItemInfo.Refresh(item);
|
||||||
if (newItemInfo.NextItem != null) using (Item item = newItemInfo.NextItem.Get()) ItemInfo.Refresh(item);
|
newItemInfo.RefreshNextItems();
|
||||||
newItemInfo.RefreshNextItems();
|
// if inserting after a caution or note, refreshes tabs. This will adjust bullets
|
||||||
// if inserting after a caution or note, refreshes tabs. This will adjust bullets
|
// of any previous cautions or notes.
|
||||||
// of any previous cautions or notes.
|
if (newItemInfo.IsCaution || newItemInfo.IsNote) newItemInfo.ResetOrdinal();
|
||||||
if (newItemInfo.IsCaution || newItemInfo.IsNote) newItemInfo.ResetOrdinal();
|
newItemInfo.UpdateTransitionText();
|
||||||
newItemInfo.UpdateTransitionText();
|
newItemInfo.UpdateROText();
|
||||||
newItemInfo.UpdateROText();
|
newItemInfo.UpdatePastedStepTransitionText();
|
||||||
newItemInfo.UpdatePastedStepTransitionText();
|
|
||||||
|
|
||||||
// Add to tree
|
// Add to tree
|
||||||
if (newItemInfo.NextItem != null)
|
if (newItemInfo.NextItem != null)
|
||||||
{
|
|
||||||
using (ItemInfo itm = ItemInfo.GetNonCached(newItemInfo.NextItem.ItemID))
|
|
||||||
{
|
{
|
||||||
itm.OnNewSiblingBefore(new ItemInfoInsertEventArgs(newItemInfo, ItemInfo.EAddpingPart.Before));
|
using (ItemInfo itm = ItemInfo.GetNonCached(newItemInfo.NextItem.ItemID))
|
||||||
|
{
|
||||||
|
itm.OnNewSiblingBefore(new ItemInfoInsertEventArgs(newItemInfo, ItemInfo.EAddpingPart.Before));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
else if (newItemInfo.PreviousID != null)
|
||||||
else if (newItemInfo.PreviousID != null)
|
|
||||||
{
|
|
||||||
using (ItemInfo itm2 = ItemInfo.GetNonCached((int)newItemInfo.PreviousID))
|
|
||||||
{
|
{
|
||||||
itm2.OnNewSiblingAfter(new ItemInfoInsertEventArgs(newItemInfo, ItemInfo.EAddpingPart.After));
|
using (ItemInfo itm2 = ItemInfo.GetNonCached((int)newItemInfo.PreviousID))
|
||||||
|
{
|
||||||
|
itm2.OnNewSiblingAfter(new ItemInfoInsertEventArgs(newItemInfo, ItemInfo.EAddpingPart.After));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// B2024-045, 049 and 050: if not a single procedure replace, update user interface by using the 'OnNewChild'. Single
|
||||||
|
// procedure's MyParent is null because its parent is a working draft (docversion) since MyParent's type is iteminfo.
|
||||||
|
// For the single procedure case, the user interface code in vlntreeview will update the tree.
|
||||||
|
if (newItemInfo.MyParent != null)
|
||||||
|
newItemInfo.MyParent.OnNewChild(new ItemInfoInsertEventArgs(newItemInfo, ItemInfo.EAddpingPart.Child));
|
||||||
|
}
|
||||||
|
return newItemInfo;
|
||||||
}
|
}
|
||||||
else
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
// B2024-045, 049 and 050: if not a single procedure replace, update user interface by using the 'OnNewChild'. Single
|
ItemInfo iii = itemInfo.HandleSqlExceptionOnDelete(ex);
|
||||||
// procedure's MyParent is null because its parent is a working draft (docversion) since MyParent's type is iteminfo.
|
if (iii == itemInfo) return null;// If self returned then return null
|
||||||
// For the single procedure case, the user interface code in vlntreeview will update the tree.
|
if (iii != null)
|
||||||
if (newItemInfo.MyParent != null)
|
{
|
||||||
newItemInfo.MyParent.OnNewChild(new ItemInfoInsertEventArgs(newItemInfo, ItemInfo.EAddpingPart.Child));
|
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")
|
||||||
|
|| ex.Message.Contains("has External Transitions to Procedure")
|
||||||
|
|| ex.Message.Contains("has External Transitions to it's children")
|
||||||
|
|| ex.Message.Contains("This step has been deleted"))
|
||||||
|
throw ex;
|
||||||
|
|
||||||
|
FlexibleMessageBox.Show("Details were written to the Error Log.", "Paste Replace Failed", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
|
||||||
|
return itemInfo;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return itemInfo;
|
||||||
}
|
}
|
||||||
return newItemInfo;
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
ItemInfo iii = itemInfo.HandleSqlExceptionOnDelete(ex);
|
|
||||||
if (iii == itemInfo) return null;// If self returned then return null
|
|
||||||
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")
|
|
||||||
|| ex.Message.Contains("has External Transitions to Procedure")
|
|
||||||
|| ex.Message.Contains("has External Transitions to it's children")
|
|
||||||
|| ex.Message.Contains("This step has been deleted")
|
|
||||||
)
|
|
||||||
throw ex;
|
|
||||||
FlexibleMessageBox.Show("Details were written to the Error Log.", "Paste Replace Failed", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
|
|
||||||
return itemInfo;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
return itemInfo;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|||||||
@@ -1148,8 +1148,7 @@ namespace VEPROMS.CSLA.Library
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
Database.LogException("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
||||||
throw new DbCslaException("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1176,8 +1175,7 @@ namespace VEPROMS.CSLA.Library
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.AddDisplayTabsState", ex);
|
Database.LogException("ItemExt.AddDisplayTabsState", ex);
|
||||||
throw new DbCslaException("ItemExt.AddDisplayTabsState", ex);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1194,13 +1192,8 @@ namespace VEPROMS.CSLA.Library
|
|||||||
cm.CommandType = CommandType.StoredProcedure;
|
cm.CommandType = CommandType.StoredProcedure;
|
||||||
cm.CommandText = "GetDisplayTabdata";
|
cm.CommandText = "GetDisplayTabdata";
|
||||||
cm.CommandTimeout = Database.DefaultTimeout;
|
cm.CommandTimeout = Database.DefaultTimeout;
|
||||||
cm.Parameters.AddWithValue("@UserID", UserID);
|
cm.Parameters.AddWithValue("@UserID", UserID);
|
||||||
//cm.ExecuteNonQuery();
|
|
||||||
SqlDataAdapter da = new SqlDataAdapter(cm);
|
SqlDataAdapter da = new SqlDataAdapter(cm);
|
||||||
//da.Fill(dt);
|
|
||||||
//cn.Close();
|
|
||||||
//da.Dispose();
|
|
||||||
//return dt; // fix
|
|
||||||
|
|
||||||
SqlDataReader reader = cm.ExecuteReader();
|
SqlDataReader reader = cm.ExecuteReader();
|
||||||
DataTable dt = new DataTable();
|
DataTable dt = new DataTable();
|
||||||
@@ -1210,8 +1203,10 @@ namespace VEPROMS.CSLA.Library
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
//B2025-004
|
||||||
throw new DbCslaException("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
//if it fails loading previously open tabs, simply treat it as if no tabs were open
|
||||||
|
//instead of crashing
|
||||||
|
return new DataTable();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,7 +48,6 @@ namespace VEPROMS.CSLA.Library
|
|||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
Database.LogException("UserSettings_GetData", ex);
|
Database.LogException("UserSettings_GetData", ex);
|
||||||
throw new DbCslaException("UserSettings_GetData", ex);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -587,6 +587,13 @@ namespace Volian.Controls.Library
|
|||||||
|
|
||||||
if (forceReload || RoTreeNeedsReloaded || tvROFST.Nodes == null || tvROFST.Nodes.Count <= 0)
|
if (forceReload || RoTreeNeedsReloaded || tvROFST.Nodes == null || tvROFST.Nodes.Count <= 0)
|
||||||
{
|
{
|
||||||
|
//B2025-008
|
||||||
|
//in cases where a RO table is clicked on
|
||||||
|
//it will refresh the list
|
||||||
|
//temp store what the ROID was before the list refreshes
|
||||||
|
//so can go to it after the refresh
|
||||||
|
string tmpROID = CurROLink?.ROID;
|
||||||
|
|
||||||
ROFSTLookup.rodbi[] dbs = MyROFSTLookup.GetRODatabaseList(true);
|
ROFSTLookup.rodbi[] dbs = MyROFSTLookup.GetRODatabaseList(true);
|
||||||
|
|
||||||
// B2022-123: RO Tab Treeview not showing correct RO values when switching between procedures.
|
// B2022-123: RO Tab Treeview not showing correct RO values when switching between procedures.
|
||||||
@@ -609,6 +616,8 @@ namespace Volian.Controls.Library
|
|||||||
_currDocVersionID = null;
|
_currDocVersionID = null;
|
||||||
|
|
||||||
if(_docVersionInfo != null) _currDocVersionID = (int?)_docVersionInfo.VersionID;
|
if(_docVersionInfo != null) _currDocVersionID = (int?)_docVersionInfo.VersionID;
|
||||||
|
|
||||||
|
if (tmpROID != null) ExpandNode(ROFSTLookup.FormatRoidKey(tmpROID, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
var unitInfoNode = tvROFST.Nodes.Cast<TreeNode>().Where(x => x.Text == "Unit Information").FirstOrDefault();
|
var unitInfoNode = tvROFST.Nodes.Cast<TreeNode>().Where(x => x.Text == "Unit Information").FirstOrDefault();
|
||||||
|
|||||||
@@ -1806,7 +1806,7 @@ namespace Volian.Controls.Library
|
|||||||
//B20170-158 Don't allow a step to replace a linked step
|
//B20170-158 Don't allow a step to replace a linked step
|
||||||
//B2017-180: The fix for B2017-158 also needed the 'HasEnhancedLinkedStep' to check if the copied step is a source step
|
//B2017-180: The fix for B2017-158 also needed the 'HasEnhancedLinkedStep' to check if the copied step is a source step
|
||||||
// C2017-031: Support for paste/replace an enhanced step, enable button
|
// C2017-031: Support for paste/replace an enhanced step, enable button
|
||||||
btnPasteReplace.Enabled = btnCMPasteReplace.Enabled = enable && ((!MyItemInfo.IsEnhancedStep && !MyItemInfo.HasEnhancedLinkedStep) || (MyItemInfo.IsEnhancedStep));
|
btnPasteReplace.Enabled = btnCMPasteReplace.Enabled = enable;
|
||||||
}
|
}
|
||||||
private void SetPasteButtonEnabled()
|
private void SetPasteButtonEnabled()
|
||||||
{
|
{
|
||||||
@@ -1866,25 +1866,6 @@ namespace Volian.Controls.Library
|
|||||||
if (stepToCfg.MyEnhancedDocuments != null && stepToCfg.MyEnhancedDocuments.Count > 0 && stepToCfg.MyEnhancedDocuments[0].Type != 0) toSourceHasEnhancedLinks = true;
|
if (stepToCfg.MyEnhancedDocuments != null && stepToCfg.MyEnhancedDocuments.Count > 0 && stepToCfg.MyEnhancedDocuments[0].Type != 0) toSourceHasEnhancedLinks = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// enhanced: if 'from' step is not enhanced, only allow paste before/after
|
|
||||||
if (MyItemInfo.IsHigh && !MyItemInfo.IsEnhancedStep)
|
|
||||||
{
|
|
||||||
stepToCfg = MyItemInfo.MyConfig as StepConfig;
|
|
||||||
if (stepToCfg.MyEnhancedDocuments != null && stepToCfg.MyEnhancedDocuments.Count > 0 && stepToCfg.MyEnhancedDocuments[0].Type != 0)
|
|
||||||
{
|
|
||||||
// Current selected step is source (i.e. has enhanced links to enhanced steps)
|
|
||||||
// check if 'from' step is non. If so, allow paste before/after but not replace
|
|
||||||
if (tmp.MyDisplayTabControl.MyCopyStep.IsHigh)
|
|
||||||
{
|
|
||||||
StepConfig fromCfg = tmp.MyDisplayTabControl.MyCopyStep.MyConfig as StepConfig;
|
|
||||||
if (fromCfg != null && (fromCfg.MyEnhancedDocuments==null || fromCfg.MyEnhancedDocuments.Count==0))
|
|
||||||
{
|
|
||||||
btnPasteReplace.Enabled = btnCMPasteReplace.Enabled = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//copy item is high level step
|
//copy item is high level step
|
||||||
// Allow a High Level step to be pasted to a sub-step, but not to a table, figure, section or procedure type
|
// Allow a High Level step to be pasted to a sub-step, but not to a table, figure, section or procedure type
|
||||||
if (tmp.MyDisplayTabControl.MyCopyStep.IsHigh && (MyItemInfo.IsTable || MyItemInfo.IsFigure || MyItemInfo.IsSection || MyItemInfo.IsProcedure))
|
if (tmp.MyDisplayTabControl.MyCopyStep.IsHigh && (MyItemInfo.IsTable || MyItemInfo.IsFigure || MyItemInfo.IsSection || MyItemInfo.IsProcedure))
|
||||||
|
|||||||
@@ -308,7 +308,7 @@ namespace Volian.Print.Library
|
|||||||
h.Font = f3;
|
h.Font = f3;
|
||||||
string actionWhat = (cai.ActionWhat == "Added" && cai.DTS <= MyProc.ChangeBarDate) ? "Original" : cai.ActionWhat != "Changed" ? cai.ActionWhat : cai.DTS <= maxDTS ? "Restored" : cai.DTS > MyProc.ChangeBarDate ? cai.ActionWhat : "Original";
|
string actionWhat = (cai.ActionWhat == "Added" && cai.DTS <= MyProc.ChangeBarDate) ? "Original" : cai.ActionWhat != "Changed" ? cai.ActionWhat : cai.DTS <= maxDTS ? "Restored" : cai.DTS > MyProc.ChangeBarDate ? cai.ActionWhat : "Original";
|
||||||
if (actionWhat == "Deleted" || actionWhat == "Restored")
|
if (actionWhat == "Deleted" || actionWhat == "Restored")
|
||||||
h.Add(actionWhat + "\r\n" + cai.ActionWhen.ToString());
|
h.Add(actionWhat + "\r\n" + (cai.ActionWhen < cai.DTS ? cai.DTS.ToString("M/dd/yyyy") : cai.ActionWhen.ToString()));
|
||||||
else
|
else
|
||||||
h.Add(actionWhat);
|
h.Add(actionWhat);
|
||||||
if (cai.DTS > maxDTS)
|
if (cai.DTS > maxDTS)
|
||||||
@@ -409,7 +409,7 @@ namespace Volian.Print.Library
|
|||||||
else if (cai.Type > 20099) // B2020-054: Always put out 'Equation' (removed checking for null text)
|
else if (cai.Type > 20099) // B2020-054: Always put out 'Equation' (removed checking for null text)
|
||||||
txt = "Equation";
|
txt = "Equation";
|
||||||
else
|
else
|
||||||
txt = ItemInfo.ConvertToDisplayText(cai.Text);
|
txt = ItemInfo.ConvertToDisplayText(cai.Text).Replace("Go to \u25cf", "Go to ?");
|
||||||
if (MyProc.MyDocVersion.MultiUnitCount > 1)
|
if (MyProc.MyDocVersion.MultiUnitCount > 1)
|
||||||
{
|
{
|
||||||
System.Xml.XmlNode nd;
|
System.Xml.XmlNode nd;
|
||||||
@@ -1465,7 +1465,7 @@ namespace Volian.Print.Library
|
|||||||
// h.Add(cai.ActionWhen > MyProc.DTS ? cai.ActionWhat : "Original");
|
// h.Add(cai.ActionWhen > MyProc.DTS ? cai.ActionWhat : "Original");
|
||||||
string actionWhat = ((cai.ActionWhat == "Added" || cai.ActionWhat == "Changed") && cai.DTS <= MyProc.ChangeBarDate) ? "Original" : cai.ActionWhat; //(cai.ActionWhat == "Added" && cai.DTS <= MyProc.DTS) ? "Original" : cai.ActionWhat != "Changed" ? cai.ActionWhat : cai.DTS <= maxDTS ? "Restored" : cai.DTS > MyProc.DTS ? cai.ActionWhat : "Original";
|
string actionWhat = ((cai.ActionWhat == "Added" || cai.ActionWhat == "Changed") && cai.DTS <= MyProc.ChangeBarDate) ? "Original" : cai.ActionWhat; //(cai.ActionWhat == "Added" && cai.DTS <= MyProc.DTS) ? "Original" : cai.ActionWhat != "Changed" ? cai.ActionWhat : cai.DTS <= maxDTS ? "Restored" : cai.DTS > MyProc.DTS ? cai.ActionWhat : "Original";
|
||||||
if (actionWhat == "Deleted" || actionWhat == "Restored")
|
if (actionWhat == "Deleted" || actionWhat == "Restored")
|
||||||
h.Add(actionWhat + "\r\n" + cai.ActionWhen.ToString());
|
h.Add(actionWhat + "\r\n" + (cai.ActionWhen < cai.DTS ? cai.DTS.ToString("M/dd/yyyy") : cai.ActionWhen.ToString()));
|
||||||
else
|
else
|
||||||
h.Add(actionWhat);
|
h.Add(actionWhat);
|
||||||
c = new PdfPCell(h);
|
c = new PdfPCell(h);
|
||||||
@@ -1570,7 +1570,7 @@ namespace Volian.Print.Library
|
|||||||
else if (cai.Type > 20099)
|
else if (cai.Type > 20099)
|
||||||
txt = "Equation";
|
txt = "Equation";
|
||||||
else
|
else
|
||||||
txt = ItemInfo.ConvertToDisplayText(cai.Text);
|
txt = ItemInfo.ConvertToDisplayText(cai.Text).Replace("Go to \u25cf", "Go to ?");
|
||||||
// Add Parent/Child information if applicable
|
// Add Parent/Child information if applicable
|
||||||
// We were doing this for the Chronology report so I added the same logic here for the Summary report
|
// We were doing this for the Chronology report so I added the same logic here for the Summary report
|
||||||
if (MyProc.MyDocVersion.MultiUnitCount > 1)
|
if (MyProc.MyDocVersion.MultiUnitCount > 1)
|
||||||
|
|||||||
Reference in New Issue
Block a user