Compare commits

...

19 Commits

Author SHA1 Message Date
6128632186 B2024-063-Invalid-Format-message-box-displays-when-rev-date-empty 2024-08-27 10:58:04 -04:00
5db6a984f3 B2024-063-Invalid-Format-message-box-displays-when-rev-date-empty 2024-08-27 09:17:32 -04:00
a43e059733 Merge pull request 'F2024-070 - Add “DEVIATION:” to the enhanced background template after “KNOWLOEDGE/ABILITY”' (#395) from F2024-070_Catawba into Development
Format only change. ready for testing phase.
2024-08-22 11:26:17 -04:00
0ac79f4e46 F2024-070 - Add “DEVIATION:” to the enhanced background template after “KNOWLOEDGE/ABILITY” 2024-08-22 11:24:17 -04:00
218a2c17a2 Merge pull request 'B2024-061- Added a null reference check in the save annotation code. Need for when Admin deletes the annotation while a user modified the text of it' (#394) from B2024-061 into Development
null reference check added to the code, tested locally before uploading
2024-08-21 11:45:10 -04:00
a629f6834b B2024-061- Added a null reference check in the save annotation code. Need for when Admin deletes the annotation while a user modified the text of it 2024-08-21 11:37:37 -04:00
bf5337cf63 B2024-062 printing a procedure that is empty displays the Empty Procedure message. WhenOK button is clicked, PROMS will exit the Print function.. (#393)
B2024-062
When you attempt to print a procedure that is empty (i.e. none of the sections are applicable to the selected Child to print), the Empty Procedure message appears. When you click the OK button PROMS will now simply exit the Print function instead of displaying the “Try Again” message box.

Reviewed-on: #393
Reviewed-by: Paul Larsen <plarsen@volian.com>
Co-authored-by: John Jenko <jjenko@volian.com>
Co-committed-by: John Jenko <jjenko@volian.com>
2024-08-20 12:25:42 -04:00
7713f0cd63 Merge pull request 'B2024-059: Paste source section has bad links.' (#391) from B2024-059 into Development
Reviewed-on: #391
Reviewed-by: Paul Larsen <plarsen@volian.com>
2024-08-15 10:10:13 -04:00
Kathy Ruffing
2711520666 B2024-059: Paste source section has bad links. 2024-08-15 06:51:02 -04:00
Kathy Ruffing
4a6c0ba447 Merge pull request 'B2024-058-RevisionDate-field-Print-dialog' (#390) from B2024-058-RevisionDate-field-Print-dialog into Development
Reviewed-on: #390
Reviewed-by: Kathy Ruffing <kruffing@volian.com>
2024-08-14 12:04:36 -04:00
3f3281e2f4 B2024-058-RevisionDate-field-Print-dialog 2024-08-14 09:37:26 -04:00
0eadd3fe33 B2024-058-RevisionDate-field-Print-dialog 2024-08-13 14:01:38 -04:00
4bf42be80a B2024-058-RevisionDate-field-Print-dialog 2024-08-13 10:05:05 -04:00
d7f829737a B2024-058-RevisionDate-field-Print-dialog 2024-08-08 15:21:11 -04:00
25cc62c7c6 Merge pull request 'F2024-069-Procedure-Set-Specific-Information-dialog-ajustments' (#388) from F2024-069-Procedure-Set-Specific-Information-dialog-ajustments into Development
changes good. ready for testing
2024-08-08 14:13:28 -04:00
47596c7bca Merge pull request 'F2024-067 - Updates to VCSummer for time sensitive stes (clock)' (#387) from F2024-067 into Development
format change ready for testing
2024-08-08 14:12:05 -04:00
7129853902 F2024-069-Procedure-Set-Specific-Information-dialog-ajustments 2024-08-08 13:33:16 -04:00
4248d40917 B2024-058-RevisionDate-field-Print-dialog 2024-08-08 09:27:27 -04:00
Kevin Laskey
a891a62ffa F2024-067 - Updates to VCSummer for time sensitive stes (clock) 2024-08-07 14:15:57 -04:00
11 changed files with 100 additions and 29 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -97,12 +97,12 @@ namespace VEPROMS
this.expandableSplitter1 = new DevComponents.DotNetBar.ExpandableSplitter(); this.expandableSplitter1 = new DevComponents.DotNetBar.ExpandableSplitter();
this.panelEx2 = new DevComponents.DotNetBar.PanelEx(); this.panelEx2 = new DevComponents.DotNetBar.PanelEx();
this.groupPag = new DevComponents.DotNetBar.Controls.GroupPanel(); this.groupPag = new DevComponents.DotNetBar.Controls.GroupPanel();
this.cbxGenerateTimeCritActSum = new System.Windows.Forms.CheckBox();
this.expPrnSetting = new DevComponents.DotNetBar.ExpandablePanel(); this.expPrnSetting = new DevComponents.DotNetBar.ExpandablePanel();
this.ppGpDuplex = new DevComponents.DotNetBar.Controls.GroupPanel(); this.ppGpDuplex = new DevComponents.DotNetBar.Controls.GroupPanel();
this.tbBlankPage = new DevComponents.DotNetBar.Controls.TextBoxX(); this.tbBlankPage = new DevComponents.DotNetBar.Controls.TextBoxX();
this.lblBlPg = new DevComponents.DotNetBar.LabelX(); this.lblBlPg = new DevComponents.DotNetBar.LabelX();
this.swtbtnPDFdtPrefixSuffix = new DevComponents.DotNetBar.Controls.SwitchButton(); this.swtbtnPDFdtPrefixSuffix = new DevComponents.DotNetBar.Controls.SwitchButton();
this.cbxGenerateTimeCritActSum = new System.Windows.Forms.CheckBox();
this.gpnlDebug.SuspendLayout(); this.gpnlDebug.SuspendLayout();
this.grpDateSelector.SuspendLayout(); this.grpDateSelector.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.docVersionConfigBindingSource)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.docVersionConfigBindingSource)).BeginInit();
@@ -1285,6 +1285,23 @@ namespace VEPROMS
this.groupPag.TabIndex = 111; this.groupPag.TabIndex = 111;
this.groupPag.Text = "Print using standard PROMS pagination rules by:"; this.groupPag.Text = "Print using standard PROMS pagination rules by:";
// //
// cbxGenerateTimeCritActSum
//
this.cbxGenerateTimeCritActSum.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.cbxGenerateTimeCritActSum.AutoSize = true;
this.cbxGenerateTimeCritActSum.BackColor = System.Drawing.Color.Transparent;
this.cbxGenerateTimeCritActSum.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.cbxGenerateTimeCritActSum.ForeColor = System.Drawing.SystemColors.ControlText;
this.cbxGenerateTimeCritActSum.Location = new System.Drawing.Point(240, 273);
this.cbxGenerateTimeCritActSum.Margin = new System.Windows.Forms.Padding(2);
this.cbxGenerateTimeCritActSum.Name = "cbxGenerateTimeCritActSum";
this.cbxGenerateTimeCritActSum.Size = new System.Drawing.Size(294, 17);
this.cbxGenerateTimeCritActSum.TabIndex = 102;
this.cbxGenerateTimeCritActSum.Text = "Generate Time Critical Action Summary (hidden but used)";
this.cbxGenerateTimeCritActSum.UseVisualStyleBackColor = false;
this.cbxGenerateTimeCritActSum.Visible = false;
//
// expPrnSetting // expPrnSetting
// //
this.expPrnSetting.CanvasColor = System.Drawing.SystemColors.Control; this.expPrnSetting.CanvasColor = System.Drawing.SystemColors.Control;
@@ -1421,23 +1438,6 @@ namespace VEPROMS
this.swtbtnPDFdtPrefixSuffix.TabIndex = 111; this.swtbtnPDFdtPrefixSuffix.TabIndex = 111;
this.swtbtnPDFdtPrefixSuffix.ValueChanged += new System.EventHandler(this.swtbtnPDFdtPrefixSuffix_ValueChanged); this.swtbtnPDFdtPrefixSuffix.ValueChanged += new System.EventHandler(this.swtbtnPDFdtPrefixSuffix_ValueChanged);
// //
// cbxGenerateTimeCritActSum
//
this.cbxGenerateTimeCritActSum.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.cbxGenerateTimeCritActSum.AutoSize = true;
this.cbxGenerateTimeCritActSum.BackColor = System.Drawing.Color.Transparent;
this.cbxGenerateTimeCritActSum.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.cbxGenerateTimeCritActSum.ForeColor = System.Drawing.SystemColors.ControlText;
this.cbxGenerateTimeCritActSum.Location = new System.Drawing.Point(240, 273);
this.cbxGenerateTimeCritActSum.Margin = new System.Windows.Forms.Padding(2);
this.cbxGenerateTimeCritActSum.Name = "cbxGenerateTimeCritActSum";
this.cbxGenerateTimeCritActSum.Size = new System.Drawing.Size(294, 17);
this.cbxGenerateTimeCritActSum.TabIndex = 102;
this.cbxGenerateTimeCritActSum.Text = "Generate Time Critical Action Summary (hidden but used)";
this.cbxGenerateTimeCritActSum.UseVisualStyleBackColor = false;
this.cbxGenerateTimeCritActSum.Visible = false;
//
// DlgPrintProcedure // DlgPrintProcedure
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);

View File

@@ -1096,6 +1096,15 @@ namespace VEPROMS
} }
private void btnCreatePDF_Click(object sender, EventArgs e) private void btnCreatePDF_Click(object sender, EventArgs e)
{ {
// B2024-058 Add validation for Revision Date field of the Print dialog
if (txbRevDate.Visible)
{
if (!validateDate(txbRevDate))
{
//txbRevDate.Focus();
return;
}
}
DoCreatePDF(); DoCreatePDF();
} }
@@ -1193,16 +1202,50 @@ namespace VEPROMS
if (_Initializing) return; if (_Initializing) return;
ppGpbxUserSpecTxt.Enabled = ppCmbxChgBarTxtType.SelectedIndex == (int)PrintChangeBarText.UserDef; ppGpbxUserSpecTxt.Enabled = ppCmbxChgBarTxtType.SelectedIndex == (int)PrintChangeBarText.UserDef;
} }
// B2024-058 Add validation for Revision Date field of the Print dialog
private bool validateDate(TextBox txtDate)
{
DateTime dDate;
if (!(txtDate.Text == ""))
{
if (DateTime.TryParse(txtDate.Text, out dDate))
{
return true;
}
else
{
string txtDate2 = txtDate.Text;
string message = String.Format("Date {0} in wrong format" + System.Environment.NewLine + "Correct the revision date.", txtDate2);
string txtTitle = "Invalid Format";
MessageBox.Show(message, txtTitle);
return false;
}
}
return true;
}
private void txbRevDate_Enter(object sender, EventArgs e) private void txbRevDate_Enter(object sender, EventArgs e)
{ {
txbDate = txbRevDate; txbDate = txbRevDate;
grpDateSelector.Text = "Select Revision Date"; grpDateSelector.Text = "Select Revision Date";
grpDateSelector.Visible = calDateSelector.Visible = true; grpDateSelector.Visible = calDateSelector.Visible = true;
//C2021-007 position the calendar to the current RevDate or if no RevDate, position to today's date //C2021-007 position the calendar to the current RevDate or if no RevDate, position to today's date
DateTime initSelDate =(txbDate.Text != null && txbDate.Text.Length != 0)? Convert.ToDateTime(txbDate.Text) : DateTime.Today; DateTime dDate;
calDateSelector.DisplayMonth = calDateSelector.SelectedDate = initSelDate; // B2024-058 Add validation for Revision Date field of the Print dialog
if (!validateDate(txbDate))
{
txbRevDate.Focus();
}
else
{
DateTime initSelDate = (txbDate.Text != null && txbDate.Text.Length != 0) ? Convert.ToDateTime(txbDate.Text) : DateTime.Today;
calDateSelector.DisplayMonth = calDateSelector.SelectedDate = initSelDate;
}
} }
private void txbRevDate_Leave(object sender, EventArgs e) private void txbRevDate_Leave(object sender, EventArgs e)
{ {
if (_Initializing) return; if (_Initializing) return;
@@ -1375,6 +1418,7 @@ namespace VEPROMS
_NewRevForAllProcs = null; _NewRevForAllProcs = null;
} }
//private void cbxDebug_CheckedChanged(object sender, EventArgs e) //private void cbxDebug_CheckedChanged(object sender, EventArgs e)
//{ //{
// cbxCmpPRMSpfd.Visible = cbxDebug.Checked; // cbxCmpPRMSpfd.Visible = cbxDebug.Checked;

View File

@@ -295,7 +295,10 @@ namespace VEPROMS
} }
} }
while (!MyPromsPrinter.MergeNotIncluded && _PdfFile == null && MessageBox.Show("Try Again?", "PDF Creation Failed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes); // B2024-062 Added check for EmptyProcedure. We don't need to show the Try Again message if the procedure
// is empty, as it would be just be a waste of time for the user.
while (!MyPromsPrinter.MergeNotIncluded && _PdfFile == null && !MyPromsPrinter.EmptyProcedure &&
MessageBox.Show("Try Again?", "PDF Creation Failed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes);
if (_PdfFile == null) if (_PdfFile == null)

View File

@@ -951,7 +951,10 @@ namespace VEPROMS.CSLA.Library
// it is pasted into a section without enhanced data, then clear it. // it is pasted into a section without enhanced data, then clear it.
// config data can only be on hls/notes/cautions for pasted steps. // config data can only be on hls/notes/cautions for pasted steps.
if (!pasteItem.IsHigh && !pasteItem.IsCaution && !pasteItem.IsNote) return; // B2024-059: clear links on a source section. When a paste occurs, the section is copied with the links but not
// new section is created in the enhanced document, so the links point to the original section (copied). These
// need to be removed.
if (!pasteItem.IsHigh && !pasteItem.IsCaution && !pasteItem.IsNote && !pasteItem.IsSection) return;
// See if the pasted step's section is enhanced with enhanced steps, and if not, clear it // See if the pasted step's section is enhanced with enhanced steps, and if not, clear it
// Also, if pasting into a source section, don't clear (B2017-225), the 'isSourceSection' portion of the code. // Also, if pasting into a source section, don't clear (B2017-225), the 'isSourceSection' portion of the code.
@@ -974,6 +977,12 @@ namespace VEPROMS.CSLA.Library
// of the pasted step. // of the pasted step.
if (pasteItem.HasEnhancedLinkedStep) pasteItem.RemoveEnhancedFromConfig(); if (pasteItem.HasEnhancedLinkedStep) pasteItem.RemoveEnhancedFromConfig();
} }
// B2024-059: clear links on a source section
if (isSourceSection)
{
EnhancedDocuments seleds = pasteItem.GetMyEnhancedDocuments();
foreach (EnhancedDocument ed in seleds) pasteItem.DoUnlinkEnhanced(pasteItem, ed.Type, true);
}
} }
#endregion #endregion
#region Insert Child #region Insert Child

View File

@@ -674,12 +674,15 @@ namespace Volian.Controls.Library
{ {
using (Annotation annotation = CurrentAnnotation.Get()) using (Annotation annotation = CurrentAnnotation.Get())
{ {
annotation.RtfText = rtxbComment.Rtf; if (annotation != null) // B2024-061 check for null reference
annotation.SearchText = rtxbComment.Text; {
annotation.MyAnnotationType = annotationType; annotation.RtfText = rtxbComment.Rtf;
annotation.DTS = DateTime.Now; annotation.SearchText = rtxbComment.Text;
annotation.UserID = Volian.Base.Library.VlnSettings.UserID; annotation.MyAnnotationType = annotationType;
annotation.Save(); annotation.DTS = DateTime.Now;
annotation.UserID = Volian.Base.Library.VlnSettings.UserID;
annotation.Save();
}
} }
} }
} }

View File

@@ -138,6 +138,15 @@ namespace Volian.Print.Library
get { return _Prefix; } get { return _Prefix; }
set { _Prefix = value; } set { _Prefix = value; }
} }
// B2024-062 Set to true when the procedure being printed has no content.
// When set to true, will prevent the "Try Again" dialog from appearing
// and simply exit the print function
private bool _EmptyProcedure = false;
public bool EmptyProcedure
{
get { return _EmptyProcedure; }
}
private static readonly log4net.ILog _MyLog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); private static readonly log4net.ILog _MyLog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
public event PromsPrinterStatusEvent StatusChanged; public event PromsPrinterStatusEvent StatusChanged;
internal void OnStatusChanged(object sender, PromsPrintStatusArgs args) internal void OnStatusChanged(object sender, PromsPrintStatusArgs args)
@@ -933,6 +942,9 @@ namespace Volian.Print.Library
{ {
MessageBox.Show("This procedure has no content and will not be printed.", "Empty Procedure", MessageBoxButtons.OK, MessageBoxIcon.Information); MessageBox.Show("This procedure has no content and will not be printed.", "Empty Procedure", MessageBoxButtons.OK, MessageBoxIcon.Information);
ProfileTimer.Pop(profileDepth); ProfileTimer.Pop(profileDepth);
// B2024-062 Added check for EmptyProcedure. This is to prevent the Try Again message
// from appearing after the user clicks on the OK button from the Empty Procedure message
_EmptyProcedure = true;
return null; return null;
} }
OnStatusChanged(myProcedure.DisplayNumber, PromsPrinterStatusType.ProgressSetup, myProcedure.Sections.Count); OnStatusChanged(myProcedure.DisplayNumber, PromsPrinterStatusType.ProgressSetup, myProcedure.Sections.Count);