From f35b8c03c5912bc1da9215b7a1decc6be19bbd16 Mon Sep 17 00:00:00 2001 From: Kathy Date: Tue, 2 Nov 2021 15:06:17 +0000 Subject: [PATCH] B2021-127 Automatically set the Serial Number for BNPP Alarm Point Procedures --- PROMS/Formats/fmtall/BNPPalrall.xml | Bin 196448 -> 196378 bytes .../DlgPrintProcedure.cs | 15 +++++++++++++++ .../Volian.Print.Library/VlnSvgPageHelper.cs | 10 ++++++++++ 3 files changed, 25 insertions(+) diff --git a/PROMS/Formats/fmtall/BNPPalrall.xml b/PROMS/Formats/fmtall/BNPPalrall.xml index 234199020c23d25b8b0eef9b0a5bd13319fc8e55..6c6e801d5a6f06465f09fe49e3c8510f5cb7ddcb 100644 GIT binary patch delta 54 zcmaFxk9*cX?uHh|Ele+}g{v8S8Jrn{7=jsGfutWpD1+~G$Hh#-(*vxS1g6(nGudok JP{VYf2>|!#5nTWP delta 44 zcmbRBkNd$t?uHh|Ele+}rypo$(qnX)9`DQ~I$1?Xgt?YMbGp41lj3%{8m2!@0FaLl A)Bpeg diff --git a/PROMS/VEPROMS User Interface/DlgPrintProcedure.cs b/PROMS/VEPROMS User Interface/DlgPrintProcedure.cs index a5d450b2..b4f65f88 100644 --- a/PROMS/VEPROMS User Interface/DlgPrintProcedure.cs +++ b/PROMS/VEPROMS User Interface/DlgPrintProcedure.cs @@ -698,6 +698,7 @@ namespace VEPROMS int i = 0; pbPDFsStatus.Maximum = n; pbPDFsStatus.Visible = true; + VlnSvgPageHelper.CountInApplProcs = 1; // B2021-127: BNPPalr - Auto set of serial #, skip Front Matter as per PAL 11/1/21 (set to 1 not 0) this.Text = string.Format("Processing {0}", _DocVersionInfo.MyFolder.Name); foreach (ProcedureInfo myProc in _DocVersionInfo.Procedures) { @@ -717,6 +718,7 @@ namespace VEPROMS if (SelectedSlave > 0) { bool includeProc = MyProcedure.ApplInclude(SelectedSlave); // C2021-027: Procedure level PC/PC + if (!includeProc) VlnSvgPageHelper.CountInApplProcs++; // B2021-127: BNPPalr - Auto set of serial # if (includeProc) { MyProcedure.MyDocVersion.DocVersionConfig.SelectedSlave = SelectedSlave; @@ -910,6 +912,19 @@ namespace VEPROMS if (MessageBox.Show(this, message + Environment.NewLine + Environment.NewLine + "Do you want to continue to print the procedure?", "Procedure Is Checked Out", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return; } + // B2021-127: BNPPalr - Auto set of serial #, skip Front Matter as per PAL 11/1/21 (set to 1 not 0) + // Only do if set has applicability, printing an individual procedure, need to determine + // applicability count. + if (MyProcedure.MyDocVersion.MultiUnitCount > 1) + { + VlnSvgPageHelper.CountInApplProcs = 1; + foreach (ProcedureInfo pi in MyProcedure.MyDocVersion.Procedures) + { + if (pi.ItemID == MyProcedure.ItemID) break; + bool includeProc = pi.ApplInclude(SelectedSlave); + if (!includeProc) VlnSvgPageHelper.CountInApplProcs++; + } + } CreateDebugFiles(); // If file exists, determine if overwrite checkbox allows overwrite, if not prompt. diff --git a/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs b/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs index 6a0eb097..ca11a466 100644 --- a/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs +++ b/PROMS/Volian.Print.Library/VlnSvgPageHelper.cs @@ -234,6 +234,12 @@ namespace Volian.Print.Library get { return _PrintedSectionPage; } set { _PrintedSectionPage = value; } } + private static int _CountInApplProcs; // B2021-127: BNPPalr - Auto set of serial # + public static int CountInApplProcs + { + get { return _CountInApplProcs; } + set { _CountInApplProcs = value; } + } //private bool _AddBlankPagesForDuplexPrinting = false; //public bool AddBlankPagesForDuplexPrinting // Tells us if a the option to add a blank page is turn on (for procedures with duplex foldouts) //{ @@ -2167,6 +2173,10 @@ i = 0; string un = MySection.MyDocVersion.DocVersionConfig.Print_UnitNumberForPageList; plstr = plstr.Replace(token, un); break; + case "{MCRSERNUM}": // B2021-127: BNPPalr - Auto set of serial # + int sernum = section.MyProcedure.Ordinal - VlnSvgPageHelper.CountInApplProcs; + plstr = plstr.Replace(token, sernum.ToString()); + break; default: if (token.Contains(@"SI-")) // procedure set specific information. (at folder or working draft levels) {