Compare commits
19 Commits
76502e6d97
...
B2025-009
| Author | SHA1 | Date | |
|---|---|---|---|
| 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;
|
||||
tbtnSave.Enabled = true;
|
||||
tbtnRestore.Enabled = true;
|
||||
tbtnSaveAs.Enabled = true;
|
||||
if (newone == null)
|
||||
{ tbtnSaveAs.Enabled = true; }
|
||||
else
|
||||
{ tbtnSaveAs.Enabled = false; }
|
||||
}
|
||||
menuROSave.Enabled = tbtnSave.Enabled;
|
||||
}
|
||||
@@ -1170,7 +1173,10 @@ namespace ROEditor
|
||||
|
||||
tbtnSave.Enabled = true;
|
||||
tbtnRestore.Enabled = true;
|
||||
tbtnSaveAs.Enabled = true;
|
||||
if (newone == null)
|
||||
{ tbtnSaveAs.Enabled = true; }
|
||||
else
|
||||
{ tbtnSaveAs.Enabled = false; }
|
||||
tbtnCancel.Enabled = true;
|
||||
menuROSave.Enabled = tbtnSave.Enabled;
|
||||
//B2021-080 set the mysavexml flag to true to ensure the text change will be saved
|
||||
|
||||
@@ -1129,7 +1129,7 @@ namespace ctlXMLEditLib
|
||||
mylabel.BackColor = chlbckcolor; // PC Applic fields are shaded blue otherwise backcolor is transparent
|
||||
mylabel.Location = new Point(screenx+indent, screeny);
|
||||
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;
|
||||
Controls.Add(mylabel);
|
||||
// add 3 onto screeny so that textbox is slightly below label.
|
||||
@@ -1696,7 +1696,7 @@ namespace ctlXMLEditLib
|
||||
}
|
||||
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 +1713,7 @@ namespace ctlXMLEditLib
|
||||
}
|
||||
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);
|
||||
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
|
||||
//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", " ");
|
||||
|
||||
@@ -8447,97 +8447,7 @@ namespace VEPROMS.CSLA.Library
|
||||
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)
|
||||
//private void DataPortal_Fetch(int itemID, string displayTabID, string displayTabName)
|
||||
{
|
||||
|
||||
@@ -2650,97 +2650,174 @@ namespace VEPROMS.CSLA.Library
|
||||
firstTrans = false;
|
||||
if (!CanDeleteObject())
|
||||
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
|
||||
// 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;
|
||||
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
|
||||
if (itemInfo.IsEnhancedStep)
|
||||
try
|
||||
{
|
||||
newItemInfo = ItemInfo.CopyPasteReplaceEnhancedItemInfoFetch(copyStartID, itemInfo);
|
||||
if (newItemInfo == null) return null;
|
||||
// C2017-031: Support for paste/replace an enhanced step, if this is replacing enhanced, do a specific query
|
||||
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;
|
||||
}
|
||||
}
|
||||
catch (Exception ex1)
|
||||
{
|
||||
if (ex1.Message.Contains("has External Transitions and has no next step")
|
||||
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 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);
|
||||
return null;
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
try
|
||||
{
|
||||
// Delete business objects, including remove from tree
|
||||
ItemInfo.DeleteItemInfoAndChildren(itemInfo.ItemID); // Dispose ItemInfo and Children
|
||||
using (Item item = Get(newItemInfo.ItemID)) ItemInfo.Refresh(item);
|
||||
ItemInfo.PasteSetChangeId(newItemInfo, chgid);
|
||||
ItemInfo.PasteClearEnhanced(newItemInfo);
|
||||
if (newItemInfo.NextItem != null) using (Item item = newItemInfo.NextItem.Get()) ItemInfo.Refresh(item);
|
||||
newItemInfo.RefreshNextItems();
|
||||
// if inserting after a caution or note, refreshes tabs. This will adjust bullets
|
||||
// of any previous cautions or notes.
|
||||
if (newItemInfo.IsCaution || newItemInfo.IsNote) newItemInfo.ResetOrdinal();
|
||||
newItemInfo.UpdateTransitionText();
|
||||
newItemInfo.UpdateROText();
|
||||
newItemInfo.UpdatePastedStepTransitionText();
|
||||
try
|
||||
{
|
||||
// Delete business objects, including remove from tree
|
||||
ItemInfo.DeleteItemInfoAndChildren(itemInfo.ItemID); // Dispose ItemInfo and Children
|
||||
using (Item item = Get(newItemInfo.ItemID)) ItemInfo.Refresh(item);
|
||||
ItemInfo.PasteSetChangeId(newItemInfo, chgid);
|
||||
if (!copyItemInfo.HasEnhancedLinkedStep && !itemInfo.HasEnhancedLinkedStep) ItemInfo.PasteClearEnhanced(newItemInfo);
|
||||
if (newItemInfo.NextItem != null) using (Item item = newItemInfo.NextItem.Get()) ItemInfo.Refresh(item);
|
||||
newItemInfo.RefreshNextItems();
|
||||
// if inserting after a caution or note, refreshes tabs. This will adjust bullets
|
||||
// of any previous cautions or notes.
|
||||
if (newItemInfo.IsCaution || newItemInfo.IsNote) newItemInfo.ResetOrdinal();
|
||||
newItemInfo.UpdateTransitionText();
|
||||
newItemInfo.UpdateROText();
|
||||
newItemInfo.UpdatePastedStepTransitionText();
|
||||
|
||||
// Add to tree
|
||||
if (newItemInfo.NextItem != null)
|
||||
{
|
||||
using (ItemInfo itm = ItemInfo.GetNonCached(newItemInfo.NextItem.ItemID))
|
||||
// Add to tree
|
||||
if (newItemInfo.NextItem != null)
|
||||
{
|
||||
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)
|
||||
{
|
||||
using (ItemInfo itm2 = ItemInfo.GetNonCached((int)newItemInfo.PreviousID))
|
||||
else if (newItemInfo.PreviousID != null)
|
||||
{
|
||||
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
|
||||
// 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));
|
||||
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;
|
||||
}
|
||||
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
|
||||
|
||||
@@ -1148,8 +1148,7 @@ namespace VEPROMS.CSLA.Library
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
||||
throw new DbCslaException("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
||||
Database.LogException("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1176,8 +1175,7 @@ namespace VEPROMS.CSLA.Library
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.AddDisplayTabsState", ex);
|
||||
throw new DbCslaException("ItemExt.AddDisplayTabsState", ex);
|
||||
Database.LogException("ItemExt.AddDisplayTabsState", ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1194,13 +1192,8 @@ namespace VEPROMS.CSLA.Library
|
||||
cm.CommandType = CommandType.StoredProcedure;
|
||||
cm.CommandText = "GetDisplayTabdata";
|
||||
cm.CommandTimeout = Database.DefaultTimeout;
|
||||
cm.Parameters.AddWithValue("@UserID", UserID);
|
||||
//cm.ExecuteNonQuery();
|
||||
cm.Parameters.AddWithValue("@UserID", UserID);
|
||||
SqlDataAdapter da = new SqlDataAdapter(cm);
|
||||
//da.Fill(dt);
|
||||
//cn.Close();
|
||||
//da.Dispose();
|
||||
//return dt; // fix
|
||||
|
||||
SqlDataReader reader = cm.ExecuteReader();
|
||||
DataTable dt = new DataTable();
|
||||
@@ -1210,8 +1203,10 @@ namespace VEPROMS.CSLA.Library
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//if (_MyLog.IsErrorEnabled) _MyLog.Error("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
||||
throw new DbCslaException("ItemExt.DeactivateStateDisplayTabTmp", ex);
|
||||
//B2025-004
|
||||
//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)
|
||||
{
|
||||
Database.LogException("UserSettings_GetData", ex);
|
||||
throw new DbCslaException("UserSettings_GetData", ex);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1806,7 +1806,7 @@ namespace Volian.Controls.Library
|
||||
//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
|
||||
// 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()
|
||||
{
|
||||
@@ -1866,25 +1866,6 @@ namespace Volian.Controls.Library
|
||||
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
|
||||
// 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))
|
||||
|
||||
@@ -308,7 +308,7 @@ namespace Volian.Print.Library
|
||||
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";
|
||||
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
|
||||
h.Add(actionWhat);
|
||||
if (cai.DTS > maxDTS)
|
||||
@@ -1465,7 +1465,7 @@ namespace Volian.Print.Library
|
||||
// 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";
|
||||
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
|
||||
h.Add(actionWhat);
|
||||
c = new PdfPCell(h);
|
||||
|
||||
Reference in New Issue
Block a user