From 30f56d1f9bbbcae2e894702abcb0e37cfc11e08a Mon Sep 17 00:00:00 2001 From: John Jenko Date: Wed, 14 Jan 2026 16:01:40 -0500 Subject: [PATCH 1/7] F2026-001 Added the ability to prefix a Continuous Action sub-step tab with its parent tab. --- PROMS/Formats/fmtall/BASEall.xml | Bin 91132 -> 91196 bytes PROMS/Formats/fmtall/VEGP2all.xml | Bin 236454 -> 236516 bytes .../Format/PlantFormat.cs | 10 +++++ PROMS/Volian.Print.Library/ContActionSum.cs | 39 +++++++++++++++++- 4 files changed, 47 insertions(+), 2 deletions(-) diff --git a/PROMS/Formats/fmtall/BASEall.xml b/PROMS/Formats/fmtall/BASEall.xml index 56657cc2a26697f470b093e7a194ae888682551d..eec99ffad4e8cc94960595fd15097a50fdc68062 100644 GIT binary patch delta 67 zcmex!oORC$)(r(Q(+{vPvM{GGq)cX9CM+1jkk1gzP|A=5Buf}l844ydP8a92W8j3q S$qSpco0r9GUlzj{#ts0!0uu`W delta 34 jcmdmUg7wdF)(r(Q+;$9{FgW>Pvv%{dnC;JE7{k~B&g~0= diff --git a/PROMS/Formats/fmtall/VEGP2all.xml b/PROMS/Formats/fmtall/VEGP2all.xml index 3b797a864defa090a2b23c93935346b1740fee4b..db5751afc3b658879e4a63013780ff1174ee541a 100644 GIT binary patch delta 92 zcmZ3so$twZz6}QEjtUHp3@Jbuz>vsL#E{C6$56r$0%Ruv$$W-jhEgCa7$}y?PyiLT fWl#dLihweyK$cyzv3a|(IU^7=Z8tV&E=~ae0237B delta 30 kcmaE|op0H8z6}QE%ytZ%&4uReh31Sv%(T7GoVhp!0IWX>I{*Lx diff --git a/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs b/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs index 87719a04..282cc8f1 100644 --- a/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs +++ b/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs @@ -4351,6 +4351,16 @@ public LeftJustifyList(XmlNodeList xmlNodeList) : base(xmlNodeList) { } return LazyLoad(ref _IncludeSectionLabel, "@IncludeSectionLabel"); } } + //F2026-001 default (in base format) is False. Put in for Vogtle Units 3 & 4. + // this will add the parent sub-step tab if the parent is not identified as a continueous action step + private LazyLoad _AddParentTabToSubStepTab; + public bool AddParentTabToSubStepTab + { + get + { + return LazyLoad(ref _AddParentTabToSubStepTab, "@AddParentTabToSubStepTab"); + } + } // the font and font styles to use for the continuous action summary private VE_Font _Font; public VE_Font Font diff --git a/PROMS/Volian.Print.Library/ContActionSum.cs b/PROMS/Volian.Print.Library/ContActionSum.cs index d7853e03..02276c91 100644 --- a/PROMS/Volian.Print.Library/ContActionSum.cs +++ b/PROMS/Volian.Print.Library/ContActionSum.cs @@ -47,6 +47,7 @@ namespace Volian.Print.Library AddHeader(doingTimeCriticalSummary); // F2022-024 pass flag when creating a Time Critical Action Summary report foreach (pkParagraph myContAct in myContActSteps) { + bool addParentTab = myContAct.MyParagraph.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.AccSectionData.ContinuousActionSummaryData.AddParentTabToSubStepTab; // F2026-001 prefix Continuous Action sub-step with parent tab if (myContAct.MyChildren.Count > 0) if (myContAct.MyParagraph.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.AccSectionData.ContinuousActionSummaryData.IncludeSectionNumAndTitle) // only print the section title if it has Continuous Action Steps AddSectionHeader(myContAct.MyParagraph.MyItemInfo.DisplayNumber, myContAct.MyParagraph.MyItemInfo.FormattedDisplayText, myContAct.MyParagraph.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.AccSectionData.ContinuousActionSummaryData.IncludeSectionLabel); @@ -79,8 +80,27 @@ namespace Volian.Print.Library } else if (!pgh.MyParagraph.MyItemInfo.IsHigh) // if the high level step was not included, adjust the tab for a sub-step/RNO { - string tabPre = (_FirstLine) ? hlsii.MyTab.Text.Trim() + " " : ""; - if (!_FirstLine) + string tabPre = ""; + StringBuilder sbTabPre = new StringBuilder(); + ItemInfo prevItemInfo = pgh.MyParagraph.MyItemInfo.MyParent; + // F2026-001 The while loop below will build a sub-step prefix of the continuous action sub-step + // if the format flag (AddParentTabToSubStepTab) is set - the base format has this set to false + // it will not add the parent tab + // - if the parent is a continuous action step or sub-step as that information would be redundant + // - if the current is a RNO step type and the Parent is NOT a RNO step type + if (prevItemInfo.IncludeOnContActSum || !addParentTab) prevItemInfo = null; + while (prevItemInfo != null && !prevItemInfo.IsHigh && !prevItemInfo.IncludeOnContActSum) + { + sbTabPre.Insert(0, prevItemInfo.MyTab.CleanText.Trim()); + if ((prevItemInfo.IsInRNO && !prevItemInfo.MyParent.IsInRNO) || prevItemInfo.MyParent.IncludeOnContActSum) + prevItemInfo = null; + else + prevItemInfo = prevItemInfo.MyParent; + } + if (_FirstLine) // the first of a CAS on the report include the High Level Step tab + sbTabPre.Insert(0, (hlsii != null) ? hlsii.MyTab.Text.Trim() + " " : ""); + tabPre = sbTabPre.ToString(); + if (!_FirstLine) // if not the first line we indent the size of high level step tab preTabLen = GetTextWidth(hlsii.MyTab.Text.Trim() + " ") / 72f; if (pgh.MyParagraph.MyItemInfo.IsInRNO) { @@ -103,10 +123,13 @@ namespace Volian.Print.Library private void AddChildren(pkParagraph pgh, int level) { + StringBuilder sbPreTab = new StringBuilder(); + bool addParentTab = pgh.MyParagraph.MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.AccSectionData.ContinuousActionSummaryData.AddParentTabToSubStepTab; // F2026-001 flag to add parent tab to CAS sub-step if (pgh.MyChildren.Count > 0) level++; foreach (pkParagraph cpgh in pgh.MyChildren) { + sbPreTab.Clear(); if (cpgh.MyCautionsAndNotes.Count > 0) AddNotesOrCautions(cpgh,level); string stpTab = cpgh.MyParagraph.MyItemInfo.MyTab.CleanText.Trim() + (cpgh.MyParagraph.MyItemInfo.IsInRNO ? "[R] ": " "); @@ -114,6 +137,18 @@ namespace Volian.Print.Library { stpTab = string.Format("{0} ", cpgh.MyParagraph.MyParent.MyTab.Text.Trim()) + " " + stpTab; } + ItemInfo prevItmInfo = cpgh.MyParagraph.MyItemInfo.MyParent; + // F2026-001 the while loop below will add the sub-step's parent tab if applicable + if (prevItmInfo.IncludeOnContActSum || !addParentTab) prevItmInfo = null; // don't try to add parent tab + while (prevItmInfo != null && !prevItmInfo.IsHigh) + { + sbPreTab.Insert(0, prevItmInfo.MyTab.CleanText.Trim()); + if ((prevItmInfo.IsInRNO && !prevItmInfo.MyParent.IsInRNO) || prevItmInfo.MyParent.IncludeOnContActSum) + prevItmInfo = null; + else + prevItmInfo = prevItmInfo.MyParent; + } + stpTab = sbPreTab.ToString() + stpTab; AddContinuousAction(stpTab, GetContActStepText(cpgh.MyParagraph.MyItemInfo), "", (cpgh.MyParagraph.MyItemInfo.PageNumber + 1).ToString(),level,0); AddChildren(cpgh, level); } -- 2.49.1 From ed4469bd5f3b653978845dd51a72f24451ea7845 Mon Sep 17 00:00:00 2001 From: mschill Date: Thu, 15 Jan 2026 07:20:46 -0500 Subject: [PATCH 2/7] B2026-002 When parens are inside a parent / child, printing a double parens. When "(tunable)" was added to the RO return value that has Parent/Child turned on in the field, that return value will print "(turnable))" - with two closing parentheses. In Vogtle data, Customer turned on Parent/Child on the Setpoint field in the Alarms CSD grouping. Added "(tunable)" to the Setpoint's default value in CDS-ARP-001-172 The value looks good in the editor but prints with two closing parens. --- PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs b/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs index 087b1c5d..6cf15ddd 100644 --- a/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs +++ b/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs @@ -2098,6 +2098,15 @@ namespace VEPROMS.CSLA.Library { string resstr = rtnstr.Substring(0, indx); int endHsp = rtnstr.IndexOf(")", indx); + + //B2026 - 002 handle if parens inside a HSP + int startpos = indx + 5; + while (rtnstr.Substring(startpos, endHsp - startpos).Contains("(")) + { + startpos = rtnstr.IndexOf("(", startpos + 1, endHsp - startpos) + 1; + endHsp = rtnstr.IndexOf(")", endHsp + 1); + } + string tmpstr = rtnstr.Substring(indx + 5, endHsp - indx - 5); // B2017-012 Don't convert space to hard spaces for XY Plots. -- 2.49.1 From c6eeb2107ab1b29032820d177838eeb5fd2aa818 Mon Sep 17 00:00:00 2001 From: John Jenko Date: Fri, 16 Jan 2026 14:31:09 -0500 Subject: [PATCH 3/7] F2026-002 Added a format flag for Vogtle Units 3 & 4 to prevent a duplicate sub-step letter in the top continue message, when a step breaks at second level sub-step in the RNO --- PROMS/Formats/fmtall/VEGP2all.xml | Bin 236516 -> 236670 bytes .../VEPROMS.CSLA.Library/Format/DocStyles.cs | 9 +++++++++ PROMS/Volian.Print.Library/vlnParagraph.cs | 3 +++ 3 files changed, 12 insertions(+) diff --git a/PROMS/Formats/fmtall/VEGP2all.xml b/PROMS/Formats/fmtall/VEGP2all.xml index db5751afc3b658879e4a63013780ff1174ee541a..7fcb87469afd0ba7c6a462c9d920866b6beaa763 100644 GIT binary patch delta 165 zcmaE|o$ucczJ?aY7N#xCPCm9S4EYRs3?&SnKr)#jhoO`qg&~z8h{2D+pCN=Hks%2v zlg8iyWEC?wGPnX|0)Xrypc _DontIncludeRNOTabIfHasAERParent; + public bool DontIncludeRNOTabIfHasAERParent // F2026-002: Vogtle Units 3&4 Top Continue Message. + { + get + { + return LazyLoad(ref _DontIncludeRNOTabIfHasAERParent, "@DontIncludeRNOTabIfHasAERParent"); + } + } + private LazyLoad _Message; [Category("Continue Msg")] [DisplayName("Top Continue Msg")] diff --git a/PROMS/Volian.Print.Library/vlnParagraph.cs b/PROMS/Volian.Print.Library/vlnParagraph.cs index 4a52b20f..c8f153f4 100644 --- a/PROMS/Volian.Print.Library/vlnParagraph.cs +++ b/PROMS/Volian.Print.Library/vlnParagraph.cs @@ -2819,6 +2819,9 @@ namespace Volian.Print.Library { // F2020-023: tab includes parent tab and if caution/note don't use its parent, go up another level string noBullet = MyItemInfo.IsCautionOrNotePart ? MyItemInfo.MyParent.MyParent.CombinedTab : MyItemInfo.MyParent.CombinedTab; + // F2026-002 Vogtle Units 3&4, don't include the RNO sub-step tab if the parent is an AER sub-step + if (docstyle.Continue.Top.DontIncludeRNOTabIfHasAERParent && MyItemInfo.MyParent.IsRNOPart && !MyItemInfo.MyParent.MyParent.IsRNOPart) + noBullet = MyItemInfo.MyParent.MyParent.CombinedTab; // C2021-024: WCN1 if bullet exists in combined tab, stop right before bullet. // B2021-085 & 087: crash if noBullet was null. Also, if null, see if text in parent. if no text, replace the // "%s." with noBullet (null) which won't put out just a '.' as step number. -- 2.49.1 From 12cf05bb877c17d75209be9a162a8e4f50dd9c04 Mon Sep 17 00:00:00 2001 From: mschill Date: Mon, 19 Jan 2026 10:01:37 -0500 Subject: [PATCH 4/7] Remove OPTIMIZE_FOR_SEQUENTIAL_KEY for compatibility with earlier SQL versions --- PROMS/VEPROMS User Interface/PROMSFixes.Sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PROMS/VEPROMS User Interface/PROMSFixes.Sql b/PROMS/VEPROMS User Interface/PROMSFixes.Sql index ba14ecc4..1846ad2f 100644 --- a/PROMS/VEPROMS User Interface/PROMSFixes.Sql +++ b/PROMS/VEPROMS User Interface/PROMSFixes.Sql @@ -24509,7 +24509,7 @@ GO CREATE NONCLUSTERED INDEX IX_tblROUsagesRODbIDDeleteStatusROID ON [dbo].[tblROUsages] ([RODbID],[DeleteStatus],[ROID]) -INCLUDE([ROUsageID],[ContentID],[Config],[DTS],[UserID],[LastChanged]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] +INCLUDE([ROUsageID],[ContentID],[Config],[DTS],[UserID],[LastChanged]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] GO PRINT 'Added IX_tblROUsagesRODbIDDeleteStatusROID Index. Speeds up RO queries' -- 2.49.1 From 00c64411c5261bb5561e339286a29ada477d70c8 Mon Sep 17 00:00:00 2001 From: mschill Date: Mon, 19 Jan 2026 11:33:10 -0500 Subject: [PATCH 5/7] C2026-002 Admin Tool - Data Check - Enhancements to new admin Tool for ROs not used. Add the ability to filter out groups of Alarms from the results. --- PROMS/VEPROMS User Interface/PROMSFixes.Sql | 16 +- .../frmBatchRefresh.Designer.cs | 623 +++++++++--------- .../VEPROMS User Interface/frmBatchRefresh.cs | 62 +- .../frmBatchRefresh.resx | 93 ++- .../Minimal/GeneralReports.cs | 36 +- 5 files changed, 469 insertions(+), 361 deletions(-) diff --git a/PROMS/VEPROMS User Interface/PROMSFixes.Sql b/PROMS/VEPROMS User Interface/PROMSFixes.Sql index 1846ad2f..5c0e796b 100644 --- a/PROMS/VEPROMS User Interface/PROMSFixes.Sql +++ b/PROMS/VEPROMS User Interface/PROMSFixes.Sql @@ -24436,6 +24436,15 @@ IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[vesp_GetROsNotUs DROP PROCEDURE [vesp_GetROsNotUsed]; GO +-- Need to drop vesp_GetROsNotUsed SP first so script can drop and recreate the TableValID table type +IF EXISTS( SELECT * FROM INFORMATION_SCHEMA.DOMAINS WHERE Domain_Name = 'TableValID' ) + DROP TYPE [dbo].[TableValID] + +CREATE TYPE [dbo].[TableValID] AS TABLE( + [ID] [bigint] NOT NULL + +) +GO /****** Object: StoredProcedure [dbo].[vesp_GetROsNotUsed] ******/ @@ -24445,6 +24454,9 @@ GO -- Description: Returns ROs that are not Used in PROMS -- ============================================= CREATE PROCEDURE [dbo].[vesp_GetROsNotUsed] +( + @dbIDs AS dbo.TableValID READONLY +) AS BEGIN @@ -24464,6 +24476,7 @@ BEGIN FROM RofstChild INNER JOIN RofstDatabase fstdb on fstdb.RofstID = RofstChild.RofstID and fstdb.dbiID = RofstChild.dbiID INNER JOIN @FSTs fst on fst.RofstID = fstdb.RofstID AND RofstChild.RofstID = fst.RofstID + INNER JOIN @dbIDs dbIDs on dbIDs.ID = RofstChild.dbiID --downbase to only dbs included LEFT OUTER JOIN RofstChild subchild ON subChild.ParentID = RofstChild.ID --make sure it is not a parent of something else LEFT OUTER JOIN DRoUsages ON [DRoUsages].[ROID] like RofstChild.[ROID] + '%' AND fst.RODbID = DROUsages.RODbID --not used in documents LEFT OUTER JOIN RoUsages ON [RoUsages].[ROID] like RofstChild.[ROID] + '%' AND fst.RODbID = ROUsages.RODbID --not used in regular ROs @@ -24488,6 +24501,7 @@ BEGIN SELECT DISTINCT NULL, NULL, RofstDatabase.ID, RofstDatabase.ParentID, RofstDatabase.dbiID, RofstDatabase.dbiTitle FROM RofstDatabase INNER JOIN @FSTs fst on fst.RofstID = RofstDatabase.RofstID + INNER JOIN @dbIDs dbIDs on RofstDatabase.dbiID = dbIDs.ID --downbase to only dbs included select * FROM #notused notused @@ -24548,7 +24562,7 @@ BEGIN TRY -- Try Block DECLARE @RevDate varchar(255) DECLARE @RevDescription varchar(255) - set @RevDate = '1/12/2026 2:00 PM' + set @RevDate = '1/16/2026 7:00 AM' set @RevDescription = 'Added Method to get ROs that are not used in PROMS' Select cast(@RevDate as datetime) RevDate, @RevDescription RevDescription diff --git a/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs b/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs index a3a789a3..7cc148dd 100644 --- a/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs +++ b/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs @@ -30,6 +30,7 @@ { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmBatchRefresh)); this.myTV = new System.Windows.Forms.TreeView(); + this.myTV_RO_DBs = new System.Windows.Forms.TreeView(); this.splitContainer3 = new System.Windows.Forms.SplitContainer(); this.panelEx3 = new DevComponents.DotNetBar.PanelEx(); this.txtResults = new System.Windows.Forms.TextBox(); @@ -62,6 +63,24 @@ this.btnIndexMaint = new DevComponents.DotNetBar.ButtonX(); this.itemPanel3 = new DevComponents.DotNetBar.PanelEx(); this.btnROsNotUsed = new DevComponents.DotNetBar.ButtonX(); + this.sideNavPanel3 = new DevComponents.DotNetBar.Controls.SideNavPanel(); + this.swCheckROLinks = new DevComponents.DotNetBar.Controls.SwitchButton(); + this.labelX12 = new DevComponents.DotNetBar.LabelX(); + this.warningBox5 = new DevComponents.DotNetBar.Controls.WarningBox(); + this.line3 = new DevComponents.DotNetBar.Controls.Line(); + this.swUpdateROVals = new DevComponents.DotNetBar.Controls.SwitchButton(); + this.swRefreshTrans = new DevComponents.DotNetBar.Controls.SwitchButton(); + this.labelX11 = new DevComponents.DotNetBar.LabelX(); + this.labelX6 = new DevComponents.DotNetBar.LabelX(); + this.warningBox1 = new DevComponents.DotNetBar.Controls.WarningBox(); + this.btnFixLinks = new DevComponents.DotNetBar.ButtonX(); + this.sideNavPanel4 = new DevComponents.DotNetBar.Controls.SideNavPanel(); + this.swDeleteFolder = new DevComponents.DotNetBar.Controls.SwitchButton(); + this.labelX13 = new DevComponents.DotNetBar.LabelX(); + this.swDeleteAnnotations = new DevComponents.DotNetBar.Controls.SwitchButton(); + this.labelX14 = new DevComponents.DotNetBar.LabelX(); + this.myTVdel = new System.Windows.Forms.TreeView(); + this.btnDeleteItems = new DevComponents.DotNetBar.ButtonX(); this.sideNavPanel2 = new DevComponents.DotNetBar.Controls.SideNavPanel(); this.swRefreshTblsForSrch = new DevComponents.DotNetBar.Controls.SwitchButton(); this.lblRefreshTblForSrch = new DevComponents.DotNetBar.LabelX(); @@ -78,24 +97,6 @@ this.labelX8 = new DevComponents.DotNetBar.LabelX(); this.line2 = new DevComponents.DotNetBar.Controls.Line(); this.btnRunRepair = new DevComponents.DotNetBar.ButtonX(); - this.sideNavPanel4 = new DevComponents.DotNetBar.Controls.SideNavPanel(); - this.swDeleteFolder = new DevComponents.DotNetBar.Controls.SwitchButton(); - this.labelX13 = new DevComponents.DotNetBar.LabelX(); - this.swDeleteAnnotations = new DevComponents.DotNetBar.Controls.SwitchButton(); - this.labelX14 = new DevComponents.DotNetBar.LabelX(); - this.myTVdel = new System.Windows.Forms.TreeView(); - this.btnDeleteItems = new DevComponents.DotNetBar.ButtonX(); - this.sideNavPanel3 = new DevComponents.DotNetBar.Controls.SideNavPanel(); - this.swCheckROLinks = new DevComponents.DotNetBar.Controls.SwitchButton(); - this.labelX12 = new DevComponents.DotNetBar.LabelX(); - this.warningBox5 = new DevComponents.DotNetBar.Controls.WarningBox(); - this.line3 = new DevComponents.DotNetBar.Controls.Line(); - this.swUpdateROVals = new DevComponents.DotNetBar.Controls.SwitchButton(); - this.swRefreshTrans = new DevComponents.DotNetBar.Controls.SwitchButton(); - this.labelX11 = new DevComponents.DotNetBar.LabelX(); - this.labelX6 = new DevComponents.DotNetBar.LabelX(); - this.warningBox1 = new DevComponents.DotNetBar.Controls.WarningBox(); - this.btnFixLinks = new DevComponents.DotNetBar.ButtonX(); this.sideNavItem1 = new DevComponents.DotNetBar.Controls.SideNavItem(); this.separator1 = new DevComponents.DotNetBar.Separator(); this.sideNavItmRepair = new DevComponents.DotNetBar.Controls.SideNavItem(); @@ -127,9 +128,9 @@ this.itemPanel1.SuspendLayout(); this.itemPanel2.SuspendLayout(); this.itemPanel3.SuspendLayout(); - this.sideNavPanel2.SuspendLayout(); - this.sideNavPanel4.SuspendLayout(); this.sideNavPanel3.SuspendLayout(); + this.sideNavPanel4.SuspendLayout(); + this.sideNavPanel2.SuspendLayout(); this.panelEx4.SuspendLayout(); this.SuspendLayout(); // @@ -143,6 +144,16 @@ this.myTV.TabIndex = 4; this.myTV.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.myTV_AfterCheck); // + // myTV_RO_DBs + // + this.myTV_RO_DBs.CheckBoxes = true; + this.myTV_RO_DBs.Dock = System.Windows.Forms.DockStyle.Bottom; + this.myTV_RO_DBs.Location = new System.Drawing.Point(0, 50); + this.myTV_RO_DBs.Name = "myTV_RO_DBs"; + this.myTV_RO_DBs.Size = new System.Drawing.Size(267, 250); + this.myTV_RO_DBs.TabIndex = 4; + this.myTV_RO_DBs.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.TreeView_AfterCheck); + // // splitContainer3 // this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill; @@ -351,7 +362,7 @@ this.pnlLater.Controls.Add(this.dtpDate); this.pnlLater.Dock = System.Windows.Forms.DockStyle.Top; this.pnlLater.Enabled = false; - this.pnlLater.Location = new System.Drawing.Point(6, 25); + this.pnlLater.Location = new System.Drawing.Point(6, 23); this.pnlLater.Name = "pnlLater"; this.pnlLater.Padding = new System.Windows.Forms.Padding(6); this.pnlLater.Size = new System.Drawing.Size(279, 37); @@ -362,7 +373,7 @@ this.label5.AutoSize = true; this.label5.Location = new System.Drawing.Point(105, 15); this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(19, 15); + this.label5.Size = new System.Drawing.Size(18, 13); this.label5.TabIndex = 5; this.label5.Text = "@"; // @@ -392,7 +403,7 @@ this.chkLater.Dock = System.Windows.Forms.DockStyle.Top; this.chkLater.Location = new System.Drawing.Point(6, 6); this.chkLater.Name = "chkLater"; - this.chkLater.Size = new System.Drawing.Size(279, 19); + this.chkLater.Size = new System.Drawing.Size(279, 17); this.chkLater.TabIndex = 4; this.chkLater.Text = "Process Later"; this.chkLater.UseVisualStyleBackColor = true; @@ -466,9 +477,9 @@ // this.sideNav1.BackColor = System.Drawing.SystemColors.Control; this.sideNav1.Controls.Add(this.sideNavPanel5); - this.sideNav1.Controls.Add(this.sideNavPanel2); - this.sideNav1.Controls.Add(this.sideNavPanel4); this.sideNav1.Controls.Add(this.sideNavPanel3); + this.sideNav1.Controls.Add(this.sideNavPanel4); + this.sideNav1.Controls.Add(this.sideNavPanel2); this.sideNav1.Dock = System.Windows.Forms.DockStyle.Fill; this.sideNav1.EnableClose = false; this.sideNav1.EnableMaximize = false; @@ -493,10 +504,10 @@ this.sideNavPanel5.Controls.Add(this.itemPanel2); this.sideNavPanel5.Controls.Add(this.itemPanel3); this.sideNavPanel5.Dock = System.Windows.Forms.DockStyle.Fill; - this.sideNavPanel5.Location = new System.Drawing.Point(117, 35); + this.sideNavPanel5.Location = new System.Drawing.Point(112, 31); this.sideNavPanel5.MinimumSize = new System.Drawing.Size(0, 493); this.sideNavPanel5.Name = "sideNavPanel5"; - this.sideNavPanel5.Size = new System.Drawing.Size(263, 493); + this.sideNavPanel5.Size = new System.Drawing.Size(268, 493); this.sideNavPanel5.TabIndex = 26; // // itemPanel1 @@ -541,7 +552,7 @@ this.warningBox3.CloseButtonVisible = false; this.warningBox3.Image = ((System.Drawing.Image)(resources.GetObject("warningBox3.Image"))); this.warningBox3.Location = new System.Drawing.Point(1, 61); - this.warningBox3.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.warningBox3.Margin = new System.Windows.Forms.Padding(4); this.warningBox3.Name = "warningBox3"; this.warningBox3.OptionsButtonVisible = false; this.warningBox3.Size = new System.Drawing.Size(264, 32); @@ -554,7 +565,7 @@ this.warningBox6.CloseButtonVisible = false; this.warningBox6.Image = ((System.Drawing.Image)(resources.GetObject("warningBox6.Image"))); this.warningBox6.Location = new System.Drawing.Point(1, 97); - this.warningBox6.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.warningBox6.Margin = new System.Windows.Forms.Padding(4); this.warningBox6.Name = "warningBox6"; this.warningBox6.OptionsButtonVisible = false; this.warningBox6.Size = new System.Drawing.Size(264, 43); @@ -593,10 +604,11 @@ // itemPanel3 // this.itemPanel3.Controls.Add(this.btnROsNotUsed); + this.itemPanel3.Controls.Add(this.myTV_RO_DBs); this.itemPanel3.DisabledBackColor = System.Drawing.Color.Empty; this.itemPanel3.Location = new System.Drawing.Point(0, 218); this.itemPanel3.Name = "itemPanel3"; - this.itemPanel3.Size = new System.Drawing.Size(267, 70); + this.itemPanel3.Size = new System.Drawing.Size(267, 300); this.itemPanel3.Style.BackgroundImagePosition = DevComponents.DotNetBar.eBackgroundImagePosition.Tile; this.itemPanel3.Style.Border = DevComponents.DotNetBar.eBorderType.DoubleLine; this.itemPanel3.Style.BorderColor.Color = System.Drawing.Color.DarkGray; @@ -609,7 +621,7 @@ this.btnROsNotUsed.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.btnROsNotUsed.Checked = true; this.btnROsNotUsed.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; - this.btnROsNotUsed.Location = new System.Drawing.Point(19, 22); + this.btnROsNotUsed.Location = new System.Drawing.Point(19, 11); this.btnROsNotUsed.Name = "btnROsNotUsed"; this.btnROsNotUsed.Size = new System.Drawing.Size(227, 26); this.btnROsNotUsed.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -619,6 +631,275 @@ this.btnROsNotUsed.Text = "Generate Snapshot of ROs Not Used"; this.btnROsNotUsed.Click += new System.EventHandler(this.btnROsNotUsed_Click); // + // sideNavPanel3 + // + this.sideNavPanel3.Controls.Add(this.swCheckROLinks); + this.sideNavPanel3.Controls.Add(this.labelX12); + this.sideNavPanel3.Controls.Add(this.warningBox5); + this.sideNavPanel3.Controls.Add(this.line3); + this.sideNavPanel3.Controls.Add(this.swUpdateROVals); + this.sideNavPanel3.Controls.Add(this.swRefreshTrans); + this.sideNavPanel3.Controls.Add(this.labelX11); + this.sideNavPanel3.Controls.Add(this.labelX6); + this.sideNavPanel3.Controls.Add(this.warningBox1); + this.sideNavPanel3.Controls.Add(this.myTV); + this.sideNavPanel3.Controls.Add(this.btnFixLinks); + this.sideNavPanel3.Dock = System.Windows.Forms.DockStyle.Fill; + this.sideNavPanel3.Location = new System.Drawing.Point(112, 31); + this.sideNavPanel3.MinimumSize = new System.Drawing.Size(0, 540); + this.sideNavPanel3.Name = "sideNavPanel3"; + this.sideNavPanel3.Size = new System.Drawing.Size(268, 540); + this.sideNavPanel3.TabIndex = 10; + this.sideNavPanel3.Visible = false; + // + // swCheckROLinks + // + // + // + // + this.swCheckROLinks.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.swCheckROLinks.Location = new System.Drawing.Point(10, 66); + this.swCheckROLinks.Name = "swCheckROLinks"; + this.swCheckROLinks.Size = new System.Drawing.Size(91, 22); + this.swCheckROLinks.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.swCheckROLinks, new DevComponents.DotNetBar.SuperTooltipInfo("Check RO Links", "", resources.GetString("swCheckROLinks.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); + this.swCheckROLinks.SwitchClickTogglesValue = true; + this.swCheckROLinks.TabIndex = 33; + this.swCheckROLinks.ValueChanged += new System.EventHandler(this.swCheckROLinks_ValueChanged); + // + // labelX12 + // + this.labelX12.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX12.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX12.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelX12.Location = new System.Drawing.Point(107, 66); + this.labelX12.Name = "labelX12"; + this.labelX12.Size = new System.Drawing.Size(186, 22); + this.superTooltip1.SetSuperTooltip(this.labelX12, new DevComponents.DotNetBar.SuperTooltipInfo("Check RO Links", "", resources.GetString("labelX12.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(350, 175))); + this.labelX12.TabIndex = 32; + this.labelX12.Text = "Check RO Links"; + // + // warningBox5 + // + this.warningBox5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249))))); + this.warningBox5.CloseButtonVisible = false; + this.warningBox5.Image = ((System.Drawing.Image)(resources.GetObject("warningBox5.Image"))); + this.warningBox5.Location = new System.Drawing.Point(17, 145); + this.warningBox5.Margin = new System.Windows.Forms.Padding(4); + this.warningBox5.Name = "warningBox5"; + this.warningBox5.OptionsButtonVisible = false; + this.warningBox5.Size = new System.Drawing.Size(262, 32); + this.warningBox5.TabIndex = 31; + this.warningBox5.Text = "NOTE These tools can take a long time to run"; + // + // line3 + // + this.line3.BackColor = System.Drawing.Color.Transparent; + this.line3.Location = new System.Drawing.Point(6, 127); + this.line3.Name = "line3"; + this.line3.Size = new System.Drawing.Size(285, 12); + this.line3.TabIndex = 30; + this.line3.Text = "line3"; + // + // swUpdateROVals + // + // + // + // + this.swUpdateROVals.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.swUpdateROVals.Location = new System.Drawing.Point(10, 10); + this.swUpdateROVals.Name = "swUpdateROVals"; + this.swUpdateROVals.Size = new System.Drawing.Size(91, 22); + this.swUpdateROVals.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.swUpdateROVals, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("swUpdateROVals.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); + this.swUpdateROVals.SwitchClickTogglesValue = true; + this.swUpdateROVals.TabIndex = 29; + this.swUpdateROVals.Value = true; + this.swUpdateROVals.ValueObject = "Y"; + this.swUpdateROVals.ValueChanged += new System.EventHandler(this.swUpdateROVals_ValueChanged); + // + // swRefreshTrans + // + // + // + // + this.swRefreshTrans.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.swRefreshTrans.Location = new System.Drawing.Point(10, 38); + this.swRefreshTrans.Name = "swRefreshTrans"; + this.swRefreshTrans.Size = new System.Drawing.Size(91, 22); + this.swRefreshTrans.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.swRefreshTrans, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("swRefreshTrans.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(265, 175))); + this.swRefreshTrans.SwitchClickTogglesValue = true; + this.swRefreshTrans.TabIndex = 29; + this.swRefreshTrans.ValueChanged += new System.EventHandler(this.swRefreshTrans_ValueChanged); + // + // labelX11 + // + this.labelX11.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX11.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelX11.Location = new System.Drawing.Point(107, 10); + this.labelX11.Name = "labelX11"; + this.labelX11.Size = new System.Drawing.Size(186, 22); + this.superTooltip1.SetSuperTooltip(this.labelX11, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("labelX11.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); + this.labelX11.TabIndex = 28; + this.labelX11.Text = "Update RO Values"; + // + // labelX6 + // + this.labelX6.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX6.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelX6.Location = new System.Drawing.Point(107, 38); + this.labelX6.Name = "labelX6"; + this.labelX6.Size = new System.Drawing.Size(186, 22); + this.superTooltip1.SetSuperTooltip(this.labelX6, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("labelX6.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(256, 175))); + this.labelX6.TabIndex = 28; + this.labelX6.Text = "Refresh Transitions"; + // + // warningBox1 + // + this.warningBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249))))); + this.warningBox1.CloseButtonVisible = false; + this.warningBox1.Image = ((System.Drawing.Image)(resources.GetObject("warningBox1.Image"))); + this.warningBox1.Location = new System.Drawing.Point(17, 181); + this.warningBox1.Margin = new System.Windows.Forms.Padding(4); + this.warningBox1.Name = "warningBox1"; + this.warningBox1.OptionsButtonVisible = false; + this.warningBox1.Size = new System.Drawing.Size(262, 43); + this.warningBox1.TabIndex = 7; + this.warningBox1.Text = " Be sure there is a current backup of the \r\n database prior to running these func" + + "tions"; + // + // btnFixLinks + // + this.btnFixLinks.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnFixLinks.Checked = true; + this.btnFixLinks.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnFixLinks.Location = new System.Drawing.Point(10, 98); + this.btnFixLinks.Name = "btnFixLinks"; + this.btnFixLinks.Size = new System.Drawing.Size(280, 23); + this.btnFixLinks.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.btnFixLinks, new DevComponents.DotNetBar.SuperTooltipInfo("Process Links", "", "This will run the selected RO Links or Transitions Links tool.\r\n\r\nClick on the on" + + "/off switches to turn on/off each tool.\r\n\r\nNote that only one of these tools can" + + " be run at a time.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 130))); + this.btnFixLinks.TabIndex = 6; + this.btnFixLinks.Text = "Process Links"; + this.btnFixLinks.Click += new System.EventHandler(this.btnFixLinks_Click); + // + // sideNavPanel4 + // + this.sideNavPanel4.Controls.Add(this.swDeleteFolder); + this.sideNavPanel4.Controls.Add(this.labelX13); + this.sideNavPanel4.Controls.Add(this.swDeleteAnnotations); + this.sideNavPanel4.Controls.Add(this.labelX14); + this.sideNavPanel4.Controls.Add(this.myTVdel); + this.sideNavPanel4.Controls.Add(this.btnDeleteItems); + this.sideNavPanel4.Dock = System.Windows.Forms.DockStyle.Fill; + this.sideNavPanel4.Location = new System.Drawing.Point(112, 31); + this.sideNavPanel4.MinimumSize = new System.Drawing.Size(0, 493); + this.sideNavPanel4.Name = "sideNavPanel4"; + this.sideNavPanel4.Size = new System.Drawing.Size(268, 493); + this.sideNavPanel4.TabIndex = 27; + this.sideNavPanel4.Visible = false; + // + // swDeleteFolder + // + // + // + // + this.swDeleteFolder.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.swDeleteFolder.Location = new System.Drawing.Point(10, 43); + this.swDeleteFolder.Name = "swDeleteFolder"; + this.swDeleteFolder.Size = new System.Drawing.Size(69, 22); + this.swDeleteFolder.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.swDeleteFolder, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Folders", "", resources.GetString("swDeleteFolder.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 140))); + this.swDeleteFolder.SwitchClickTogglesValue = true; + this.swDeleteFolder.TabIndex = 39; + this.swDeleteFolder.ValueChanged += new System.EventHandler(this.swDeleteFolder_ValueChanged); + // + // labelX13 + // + this.labelX13.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX13.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelX13.Location = new System.Drawing.Point(85, 42); + this.labelX13.Name = "labelX13"; + this.labelX13.Size = new System.Drawing.Size(168, 22); + this.superTooltip1.SetSuperTooltip(this.labelX13, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Folders", "", resources.GetString("labelX13.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 140))); + this.labelX13.TabIndex = 38; + this.labelX13.Text = "Delete Folders"; + // + // swDeleteAnnotations + // + // + // + // + this.swDeleteAnnotations.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.swDeleteAnnotations.Location = new System.Drawing.Point(10, 15); + this.swDeleteAnnotations.Name = "swDeleteAnnotations"; + this.swDeleteAnnotations.Size = new System.Drawing.Size(69, 22); + this.swDeleteAnnotations.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.swDeleteAnnotations, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Annotations", "", resources.GetString("swDeleteAnnotations.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 155))); + this.swDeleteAnnotations.SwitchClickTogglesValue = true; + this.swDeleteAnnotations.TabIndex = 37; + this.swDeleteAnnotations.Value = true; + this.swDeleteAnnotations.ValueObject = "Y"; + this.swDeleteAnnotations.ValueChanged += new System.EventHandler(this.swDeleteAnnotations_ValueChanged); + // + // labelX14 + // + this.labelX14.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX14.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX14.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelX14.Location = new System.Drawing.Point(85, 14); + this.labelX14.Name = "labelX14"; + this.labelX14.Size = new System.Drawing.Size(186, 22); + this.superTooltip1.SetSuperTooltip(this.labelX14, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Annotations", "", resources.GetString("labelX14.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 155))); + this.labelX14.TabIndex = 36; + this.labelX14.Text = "Delete Annotations"; + // + // myTVdel + // + this.myTVdel.CheckBoxes = true; + this.myTVdel.Dock = System.Windows.Forms.DockStyle.Bottom; + this.myTVdel.Location = new System.Drawing.Point(0, 126); + this.myTVdel.Name = "myTVdel"; + this.myTVdel.Size = new System.Drawing.Size(268, 367); + this.myTVdel.TabIndex = 34; + this.myTVdel.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.myTV_AfterCheck); + // + // btnDeleteItems + // + this.btnDeleteItems.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnDeleteItems.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.btnDeleteItems.Checked = true; + this.btnDeleteItems.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnDeleteItems.Location = new System.Drawing.Point(39, 98); + this.btnDeleteItems.Name = "btnDeleteItems"; + this.btnDeleteItems.Size = new System.Drawing.Size(189, 23); + this.btnDeleteItems.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.superTooltip1.SetSuperTooltip(this.btnDeleteItems, new DevComponents.DotNetBar.SuperTooltipInfo("Process Deletions", "", resources.GetString("btnDeleteItems.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 175))); + this.btnDeleteItems.TabIndex = 35; + this.btnDeleteItems.Text = "Process Deletions"; + this.btnDeleteItems.Click += new System.EventHandler(this.btnDeleteItems_Click); + // // sideNavPanel2 // this.sideNavPanel2.Controls.Add(this.swRefreshTblsForSrch); @@ -681,7 +962,7 @@ this.warningBox4.CloseButtonVisible = false; this.warningBox4.Image = ((System.Drawing.Image)(resources.GetObject("warningBox4.Image"))); this.warningBox4.Location = new System.Drawing.Point(12, 264); - this.warningBox4.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.warningBox4.Margin = new System.Windows.Forms.Padding(4); this.warningBox4.Name = "warningBox4"; this.warningBox4.OptionsButtonVisible = false; this.warningBox4.Size = new System.Drawing.Size(264, 32); @@ -694,7 +975,7 @@ this.warningBox2.CloseButtonVisible = false; this.warningBox2.Image = ((System.Drawing.Image)(resources.GetObject("warningBox2.Image"))); this.warningBox2.Location = new System.Drawing.Point(12, 302); - this.warningBox2.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.warningBox2.Margin = new System.Windows.Forms.Padding(4); this.warningBox2.Name = "warningBox2"; this.warningBox2.OptionsButtonVisible = false; this.warningBox2.Size = new System.Drawing.Size(264, 43); @@ -869,275 +1150,6 @@ this.btnRunRepair.Text = "Run Repair"; this.btnRunRepair.Click += new System.EventHandler(this.btnRunRepair_Click); // - // sideNavPanel4 - // - this.sideNavPanel4.Controls.Add(this.swDeleteFolder); - this.sideNavPanel4.Controls.Add(this.labelX13); - this.sideNavPanel4.Controls.Add(this.swDeleteAnnotations); - this.sideNavPanel4.Controls.Add(this.labelX14); - this.sideNavPanel4.Controls.Add(this.myTVdel); - this.sideNavPanel4.Controls.Add(this.btnDeleteItems); - this.sideNavPanel4.Dock = System.Windows.Forms.DockStyle.Fill; - this.sideNavPanel4.Location = new System.Drawing.Point(112, 31); - this.sideNavPanel4.MinimumSize = new System.Drawing.Size(0, 493); - this.sideNavPanel4.Name = "sideNavPanel4"; - this.sideNavPanel4.Size = new System.Drawing.Size(268, 493); - this.sideNavPanel4.TabIndex = 27; - this.sideNavPanel4.Visible = false; - // - // swDeleteFolder - // - // - // - // - this.swDeleteFolder.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.swDeleteFolder.Location = new System.Drawing.Point(10, 43); - this.swDeleteFolder.Name = "swDeleteFolder"; - this.swDeleteFolder.Size = new System.Drawing.Size(69, 22); - this.swDeleteFolder.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.swDeleteFolder, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Folders", "", resources.GetString("swDeleteFolder.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 140))); - this.swDeleteFolder.SwitchClickTogglesValue = true; - this.swDeleteFolder.TabIndex = 39; - this.swDeleteFolder.ValueChanged += new System.EventHandler(this.swDeleteFolder_ValueChanged); - // - // labelX13 - // - this.labelX13.BackColor = System.Drawing.Color.Transparent; - // - // - // - this.labelX13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX13.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelX13.Location = new System.Drawing.Point(85, 42); - this.labelX13.Name = "labelX13"; - this.labelX13.Size = new System.Drawing.Size(168, 22); - this.superTooltip1.SetSuperTooltip(this.labelX13, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Folders", "", resources.GetString("labelX13.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 140))); - this.labelX13.TabIndex = 38; - this.labelX13.Text = "Delete Folders"; - // - // swDeleteAnnotations - // - // - // - // - this.swDeleteAnnotations.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.swDeleteAnnotations.Location = new System.Drawing.Point(10, 15); - this.swDeleteAnnotations.Name = "swDeleteAnnotations"; - this.swDeleteAnnotations.Size = new System.Drawing.Size(69, 22); - this.swDeleteAnnotations.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.swDeleteAnnotations, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Annotations", "", resources.GetString("swDeleteAnnotations.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 155))); - this.swDeleteAnnotations.SwitchClickTogglesValue = true; - this.swDeleteAnnotations.TabIndex = 37; - this.swDeleteAnnotations.Value = true; - this.swDeleteAnnotations.ValueObject = "Y"; - this.swDeleteAnnotations.ValueChanged += new System.EventHandler(this.swDeleteAnnotations_ValueChanged); - // - // labelX14 - // - this.labelX14.BackColor = System.Drawing.Color.Transparent; - // - // - // - this.labelX14.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX14.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelX14.Location = new System.Drawing.Point(85, 14); - this.labelX14.Name = "labelX14"; - this.labelX14.Size = new System.Drawing.Size(186, 22); - this.superTooltip1.SetSuperTooltip(this.labelX14, new DevComponents.DotNetBar.SuperTooltipInfo("Delete Annotations", "", resources.GetString("labelX14.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 155))); - this.labelX14.TabIndex = 36; - this.labelX14.Text = "Delete Annotations"; - // - // myTVdel - // - this.myTVdel.CheckBoxes = true; - this.myTVdel.Dock = System.Windows.Forms.DockStyle.Bottom; - this.myTVdel.Location = new System.Drawing.Point(0, 126); - this.myTVdel.Name = "myTVdel"; - this.myTVdel.Size = new System.Drawing.Size(268, 367); - this.myTVdel.TabIndex = 34; - this.myTVdel.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.myTV_AfterCheck); - // - // btnDeleteItems - // - this.btnDeleteItems.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; - this.btnDeleteItems.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.btnDeleteItems.Checked = true; - this.btnDeleteItems.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; - this.btnDeleteItems.Location = new System.Drawing.Point(39, 98); - this.btnDeleteItems.Name = "btnDeleteItems"; - this.btnDeleteItems.Size = new System.Drawing.Size(189, 23); - this.btnDeleteItems.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.btnDeleteItems, new DevComponents.DotNetBar.SuperTooltipInfo("Process Deletions", "", resources.GetString("btnDeleteItems.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 175))); - this.btnDeleteItems.TabIndex = 35; - this.btnDeleteItems.Text = "Process Deletions"; - this.btnDeleteItems.Click += new System.EventHandler(this.btnDeleteItems_Click); - // - // sideNavPanel3 - // - this.sideNavPanel3.Controls.Add(this.swCheckROLinks); - this.sideNavPanel3.Controls.Add(this.labelX12); - this.sideNavPanel3.Controls.Add(this.warningBox5); - this.sideNavPanel3.Controls.Add(this.line3); - this.sideNavPanel3.Controls.Add(this.swUpdateROVals); - this.sideNavPanel3.Controls.Add(this.swRefreshTrans); - this.sideNavPanel3.Controls.Add(this.labelX11); - this.sideNavPanel3.Controls.Add(this.labelX6); - this.sideNavPanel3.Controls.Add(this.warningBox1); - this.sideNavPanel3.Controls.Add(this.myTV); - this.sideNavPanel3.Controls.Add(this.btnFixLinks); - this.sideNavPanel3.Dock = System.Windows.Forms.DockStyle.Fill; - this.sideNavPanel3.Location = new System.Drawing.Point(112, 31); - this.sideNavPanel3.MinimumSize = new System.Drawing.Size(0, 540); - this.sideNavPanel3.Name = "sideNavPanel3"; - this.sideNavPanel3.Size = new System.Drawing.Size(268, 540); - this.sideNavPanel3.TabIndex = 10; - this.sideNavPanel3.Visible = false; - // - // swCheckROLinks - // - // - // - // - this.swCheckROLinks.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.swCheckROLinks.Location = new System.Drawing.Point(10, 66); - this.swCheckROLinks.Name = "swCheckROLinks"; - this.swCheckROLinks.Size = new System.Drawing.Size(91, 22); - this.swCheckROLinks.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.swCheckROLinks, new DevComponents.DotNetBar.SuperTooltipInfo("Check RO Links", "", resources.GetString("swCheckROLinks.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); - this.swCheckROLinks.SwitchClickTogglesValue = true; - this.swCheckROLinks.TabIndex = 33; - this.swCheckROLinks.ValueChanged += new System.EventHandler(this.swCheckROLinks_ValueChanged); - // - // labelX12 - // - this.labelX12.BackColor = System.Drawing.Color.Transparent; - // - // - // - this.labelX12.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX12.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelX12.Location = new System.Drawing.Point(107, 66); - this.labelX12.Name = "labelX12"; - this.labelX12.Size = new System.Drawing.Size(186, 22); - this.superTooltip1.SetSuperTooltip(this.labelX12, new DevComponents.DotNetBar.SuperTooltipInfo("Check RO Links", "", resources.GetString("labelX12.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(350, 175))); - this.labelX12.TabIndex = 32; - this.labelX12.Text = "Check RO Links"; - // - // warningBox5 - // - this.warningBox5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249))))); - this.warningBox5.CloseButtonVisible = false; - this.warningBox5.Image = ((System.Drawing.Image)(resources.GetObject("warningBox5.Image"))); - this.warningBox5.Location = new System.Drawing.Point(17, 145); - this.warningBox5.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.warningBox5.Name = "warningBox5"; - this.warningBox5.OptionsButtonVisible = false; - this.warningBox5.Size = new System.Drawing.Size(262, 32); - this.warningBox5.TabIndex = 31; - this.warningBox5.Text = "NOTE These tools can take a long time to run"; - // - // line3 - // - this.line3.BackColor = System.Drawing.Color.Transparent; - this.line3.Location = new System.Drawing.Point(6, 127); - this.line3.Name = "line3"; - this.line3.Size = new System.Drawing.Size(285, 12); - this.line3.TabIndex = 30; - this.line3.Text = "line3"; - // - // swUpdateROVals - // - // - // - // - this.swUpdateROVals.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.swUpdateROVals.Location = new System.Drawing.Point(10, 10); - this.swUpdateROVals.Name = "swUpdateROVals"; - this.swUpdateROVals.Size = new System.Drawing.Size(91, 22); - this.swUpdateROVals.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.swUpdateROVals, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("swUpdateROVals.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); - this.swUpdateROVals.SwitchClickTogglesValue = true; - this.swUpdateROVals.TabIndex = 29; - this.swUpdateROVals.Value = true; - this.swUpdateROVals.ValueObject = "Y"; - this.swUpdateROVals.ValueChanged += new System.EventHandler(this.swUpdateROVals_ValueChanged); - // - // swRefreshTrans - // - // - // - // - this.swRefreshTrans.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.swRefreshTrans.Location = new System.Drawing.Point(10, 38); - this.swRefreshTrans.Name = "swRefreshTrans"; - this.swRefreshTrans.Size = new System.Drawing.Size(91, 22); - this.swRefreshTrans.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.swRefreshTrans, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("swRefreshTrans.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(265, 175))); - this.swRefreshTrans.SwitchClickTogglesValue = true; - this.swRefreshTrans.TabIndex = 29; - this.swRefreshTrans.ValueChanged += new System.EventHandler(this.swRefreshTrans_ValueChanged); - // - // labelX11 - // - this.labelX11.BackColor = System.Drawing.Color.Transparent; - // - // - // - this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX11.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelX11.Location = new System.Drawing.Point(107, 10); - this.labelX11.Name = "labelX11"; - this.labelX11.Size = new System.Drawing.Size(186, 22); - this.superTooltip1.SetSuperTooltip(this.labelX11, new DevComponents.DotNetBar.SuperTooltipInfo("Update RO Values", "", resources.GetString("labelX11.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); - this.labelX11.TabIndex = 28; - this.labelX11.Text = "Update RO Values"; - // - // labelX6 - // - this.labelX6.BackColor = System.Drawing.Color.Transparent; - // - // - // - this.labelX6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX6.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelX6.Location = new System.Drawing.Point(107, 38); - this.labelX6.Name = "labelX6"; - this.labelX6.Size = new System.Drawing.Size(186, 22); - this.superTooltip1.SetSuperTooltip(this.labelX6, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("labelX6.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(256, 175))); - this.labelX6.TabIndex = 28; - this.labelX6.Text = "Refresh Transitions"; - // - // warningBox1 - // - this.warningBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249))))); - this.warningBox1.CloseButtonVisible = false; - this.warningBox1.Image = ((System.Drawing.Image)(resources.GetObject("warningBox1.Image"))); - this.warningBox1.Location = new System.Drawing.Point(17, 181); - this.warningBox1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.warningBox1.Name = "warningBox1"; - this.warningBox1.OptionsButtonVisible = false; - this.warningBox1.Size = new System.Drawing.Size(262, 43); - this.warningBox1.TabIndex = 7; - this.warningBox1.Text = " Be sure there is a current backup of the \r\n database prior to running these func" + - "tions"; - // - // btnFixLinks - // - this.btnFixLinks.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; - this.btnFixLinks.Checked = true; - this.btnFixLinks.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; - this.btnFixLinks.Location = new System.Drawing.Point(10, 98); - this.btnFixLinks.Name = "btnFixLinks"; - this.btnFixLinks.Size = new System.Drawing.Size(280, 23); - this.btnFixLinks.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.superTooltip1.SetSuperTooltip(this.btnFixLinks, new DevComponents.DotNetBar.SuperTooltipInfo("Process Links", "", "This will run the selected RO Links or Transitions Links tool.\r\n\r\nClick on the on" + - "/off switches to turn on/off each tool.\r\n\r\nNote that only one of these tools can" + - " be run at a time.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 130))); - this.btnFixLinks.TabIndex = 6; - this.btnFixLinks.Text = "Process Links"; - this.btnFixLinks.Click += new System.EventHandler(this.btnFixLinks_Click); - // // sideNavItem1 // this.sideNavItem1.IsSystemMenu = true; @@ -1324,9 +1336,9 @@ this.itemPanel1.ResumeLayout(false); this.itemPanel2.ResumeLayout(false); this.itemPanel3.ResumeLayout(false); - this.sideNavPanel2.ResumeLayout(false); - this.sideNavPanel4.ResumeLayout(false); this.sideNavPanel3.ResumeLayout(false); + this.sideNavPanel4.ResumeLayout(false); + this.sideNavPanel2.ResumeLayout(false); this.panelEx4.ResumeLayout(false); this.ResumeLayout(false); @@ -1335,7 +1347,8 @@ #endregion private System.Windows.Forms.TreeView myTV; - private System.Windows.Forms.SplitContainer splitContainer3; + private System.Windows.Forms.TreeView myTV_RO_DBs; + private System.Windows.Forms.SplitContainer splitContainer3; private DevComponents.DotNetBar.PanelEx panelEx3; private System.Windows.Forms.TextBox txtResults; private System.Windows.Forms.Panel panel1; diff --git a/PROMS/VEPROMS User Interface/frmBatchRefresh.cs b/PROMS/VEPROMS User Interface/frmBatchRefresh.cs index f5d38a7d..249ddb19 100644 --- a/PROMS/VEPROMS User Interface/frmBatchRefresh.cs +++ b/PROMS/VEPROMS User Interface/frmBatchRefresh.cs @@ -149,7 +149,28 @@ namespace VEPROMS return false; } - private void ResetTV(bool noProcs) + //C2026-002 Enhancements to new admin Tool for ROs not used. + private void ResetmyTV_RO_DBs() + { + this.Cursor = Cursors.WaitCursor; + myTV_RO_DBs.Nodes.Clear(); + + TreeNode tn = myTV_RO_DBs.Nodes.Add("Select All"); + tn.Tag = 0; + tn.Checked = true; + + foreach (DataRow rw in GeneralReports.GetRODBs().Rows) + { + TreeNode tn_db = tn.Nodes.Add(rw["dbiTitle"].ToString()); + tn_db.Tag = rw["dbiID"].ToString(); + tn_db.Checked = true; + } + tn.Expand(); + + this.Cursor = Cursors.Default; + } + + private void ResetTV(bool noProcs) { btnFixLinks.Enabled = false; this.Cursor = Cursors.WaitCursor; @@ -1071,6 +1092,24 @@ namespace VEPROMS } private void myTV_AfterCheck(object sender, TreeViewEventArgs e) + { + //B2025 - 013 Admin Tool Tree Behavior + //only want to perform this if + // not an unknown action + // aka is a mouse click + // if this is fire-ing because clicked a parent or a child of an item + // want this to only fire once - for the item clicked - not for parents/children + if (e.Action != TreeViewAction.Unknown) + { + TreeView_AfterCheck(sender, e); + + btnFixLinks.Enabled = btnDeleteItems.Enabled = AtLeastOneNodeChecked(((TreeView)sender).Nodes); // C2017-030 support for Refresh Transitions/Update RO Values + } + + } + + //C2026-002 Enhancements to new admin Tool for ROs not used. + private void TreeView_AfterCheck(object sender, TreeViewEventArgs e) { //B2025 - 013 Admin Tool Tree Behavior //only want to perform this if @@ -1092,12 +1131,9 @@ namespace VEPROMS DiselectParentNodes(e.Node.Parent); DiselectChildNodes(e.Node.Nodes); } - - btnFixLinks.Enabled = btnDeleteItems.Enabled = AtLeastOneNodeChecked(((TreeView)sender).Nodes); // C2017-030 support for Refresh Transitions/Update RO Values } } - private void DiselectParentNodes(TreeNode parent) { while (parent != null) @@ -1244,6 +1280,7 @@ namespace VEPROMS { AdminToolType = E_AdminToolType.Maintenance; setupProgessSteps1(); + ResetmyTV_RO_DBs(); //C2026-002 Enhancements to new admin Tool for ROs not used. //notify Set Admin user that only Full Admins can run maintenance tools if (!IsAdministratorUser) @@ -1798,8 +1835,21 @@ namespace VEPROMS txtResults.AppendText(statmsg); txtResults.AppendText(Environment.NewLine); - //Generate the data for ROs Not Used and save it to a TreeView - TreeView tv = TreeViewExtensions.GetROTree(GeneralReports.GetROsNotUsedInPROMS(), true); + //C2026-002 Enhancements to new admin Tool for ROs not used. + //Get the selected nodes + DataTable dtIDs = new DataTable(); + dtIDs.Columns.Add("ID"); + + foreach (TreeNode tn in myTV_RO_DBs.Nodes[0].Nodes) + if (tn.Checked) + { + DataRow dtrw = dtIDs.NewRow(); + dtrw["ID"] = int.Parse(tn.Tag.ToString()); + dtIDs.Rows.Add(dtrw); + } + + //Generate the data for ROs Not Used and save it to a TreeView + TreeView tv = TreeViewExtensions.GetROTree(GeneralReports.GetROsNotUsedInPROMS(dtIDs), true); //Output the TreeView as an Image if (tv.Nodes.Count != 0) tv.SaveTreeViewAsImage(sfd.FileName); diff --git a/PROMS/VEPROMS User Interface/frmBatchRefresh.resx b/PROMS/VEPROMS User Interface/frmBatchRefresh.resx index 9c07f025..e63d56a3 100644 --- a/PROMS/VEPROMS User Interface/frmBatchRefresh.resx +++ b/PROMS/VEPROMS User Interface/frmBatchRefresh.resx @@ -117,15 +117,6 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - This will perform Index Maintenance to realign indexes to optimize performance. -This function will cause no change to data or records in PROMS. -It should however be performed when other users are not in PROMS, as it could -cause slowdown or errors for other users while it is running. - - - 17, 17 - Purges all audit information and change history older than the above date. It is recommended that you perform a database backup before performing this action. @@ -167,10 +158,55 @@ Only Full PROMS Administrator Users can perform this action. dj38fYbVglHy1FGJt57uL9ZS10IN9cxfJPvXCzTgqSKH5xwNzVXSkFBBDsFKA4KV7IKVegQrda2e7j5N ud8AKwnMnBpmYFAAAAAASUVORK5CYII= + + + This will perform Index Maintenance to realign indexes to optimize performance. +This function will cause no change to data or records in PROMS. +It should however be performed when other users are not in PROMS, as it could +cause slowdown or errors for other users while it is running. 17, 17 + + This allows the user to remove folders and sub folders as well as their contents. + +Be sure a current backup of the database exists prior performing this function. + +It is recommended that this be done during off hours. + + + + + This allows the user to remove folders and sub folders as well as their contents. + +Be sure a current backup of the database exists prior performing this function. + +It is recommended that this be done during off hours. + + + + + This function will allow the user to remove annotations from the selected working drafts. + +Be sure a current backup of the database exists prior to running this function. + +If more than one working draft is selected, it is recommended that this be performed during off hours. + + + This function will allow the user to remove annotations from the selected working drafts. + +Be sure a current backup of the database exists prior to running this function. + +If more than one working draft is selected, it is recommended that this be performed during off hours. + + + This will allow for the deletion of groups of annotations and allow for deleting entire folders within PROMS. Use the tree nodes to select which items to delete. + +Click on the on/off switches to turn on/off each tool. + +Note that only one of these tools can be run at a time. + When Word attachments are modified and saved, PROMS will create a PDF of the attachment contents and save it in the database. When this is done, all the of the RO references are resolved as well as pagination of the attachment. This speeds up the overall printing of the procedure in that PROMS simply inserts the attachment contents. @@ -266,45 +302,6 @@ Should an item become orphaned (disconnected) from the rest of the data, it will Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible. This tool removes any orphaned items from the database. - - - This allows the user to remove folders and sub folders as well as their contents. - -Be sure a current backup of the database exists prior performing this function. - -It is recommended that this be done during off hours. - - - - - This allows the user to remove folders and sub folders as well as their contents. - -Be sure a current backup of the database exists prior performing this function. - -It is recommended that this be done during off hours. - - - - - This function will allow the user to remove annotations from the selected working drafts. - -Be sure a current backup of the database exists prior to running this function. - -If more than one working draft is selected, it is recommended that this be performed during off hours. - - - This function will allow the user to remove annotations from the selected working drafts. - -Be sure a current backup of the database exists prior to running this function. - -If more than one working draft is selected, it is recommended that this be performed during off hours. - - - This will allow for the deletion of groups of annotations and allow for deleting entire folders within PROMS. Use the tree nodes to select which items to delete. - -Click on the on/off switches to turn on/off each tool. - -Note that only one of these tools can be run at a time. This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. diff --git a/PROMS/VEPROMS.CSLA.Library/Minimal/GeneralReports.cs b/PROMS/VEPROMS.CSLA.Library/Minimal/GeneralReports.cs index ce4e9787..0eddc936 100644 --- a/PROMS/VEPROMS.CSLA.Library/Minimal/GeneralReports.cs +++ b/PROMS/VEPROMS.CSLA.Library/Minimal/GeneralReports.cs @@ -11,7 +11,7 @@ namespace VEPROMS.CSLA.Library #region Get General Reports //CSM - C2025-043 report RO's that are not used in any of the PROMS data. - public static DataTable GetROsNotUsedInPROMS() + public static DataTable GetROsNotUsedInPROMS(DataTable dtDBids) { try { @@ -22,6 +22,10 @@ namespace VEPROMS.CSLA.Library cm.CommandType = CommandType.StoredProcedure; cm.CommandText = "vesp_GetROsNotUsed"; cm.CommandTimeout = 0; + //Pass table Valued parameter to Store Procedure + SqlParameter sqlParam = cm.Parameters.AddWithValue("@dbIDs", dtDBids); + sqlParam.SqlDbType = SqlDbType.Structured; + using (SqlDataAdapter da = new SqlDataAdapter(cm)) { DataTable dt = new DataTable(); @@ -36,6 +40,36 @@ namespace VEPROMS.CSLA.Library throw new DbCslaException("Error in GetROsNotUsedInPROMS Report: retrieving data failed", ex); } } + + //C2026-002 Enhancements to new admin Tool for ROs not used. + //used to build checkboxes of dbs to include + public static DataTable GetRODBs() + { + try + { + using (SqlConnection cn = Database.VEPROMS_SqlConnection) + { + using (SqlCommand cm = cn.CreateCommand()) + { + cm.CommandType = CommandType.Text; + cm.CommandText = "select RofstDatabase.*, RODbID FROM RofstDatabase INNER JOIN (Select FSTID = max(RoFSTID), RODbID from ROFsts GROUP BY RODbID) fsts ON fsts.FSTID = RofstDatabase.RofstID ORDER BY RofstID, RODbID, dbiTitle"; + + cm.CommandTimeout = 0; + using (SqlDataAdapter da = new SqlDataAdapter(cm)) + { + DataTable dt = new DataTable(); + da.Fill(dt); + return dt; + } + } + } + } + catch (Exception ex) + { + throw new DbCslaException("Error in GetROsNotUsedInPROMS Report - GetRODBs: retrieving data failed", ex); + } + } + #endregion } -- 2.49.1 From e2382a403b12104cd141fe35444f3c965d5423f1 Mon Sep 17 00:00:00 2001 From: Paul Larsen Date: Mon, 19 Jan 2026 17:23:01 -0500 Subject: [PATCH 6/7] B2026-001-Sort-order--for-ROs-Wolf-Creek-4 --- PROMS/VEPROMS User Interface/PROMSFixes.Sql | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/PROMS/VEPROMS User Interface/PROMSFixes.Sql b/PROMS/VEPROMS User Interface/PROMSFixes.Sql index 5c0e796b..799f6769 100644 --- a/PROMS/VEPROMS User Interface/PROMSFixes.Sql +++ b/PROMS/VEPROMS User Interface/PROMSFixes.Sql @@ -19134,7 +19134,7 @@ GO rd.ParentID From vwRofstData_RofstDatabases rd Where rd.RofstID = @RofstID - Order By rd.dbiID Asc; + Order By rd.dbiTitle Asc; Return; End @@ -19320,7 +19320,7 @@ GO rc.AccPageID From RoParent rp inner join vwRofstData_RofstChildren rc on rc.RofstID = rp.RofstID and rc.dbiID = rp.dbiID and rc.ParentID = rp.ID - Order By rc.ID Asc; + Order By rc.title Asc; Return; @@ -24562,8 +24562,8 @@ BEGIN TRY -- Try Block DECLARE @RevDate varchar(255) DECLARE @RevDescription varchar(255) - set @RevDate = '1/16/2026 7:00 AM' - set @RevDescription = 'Added Method to get ROs that are not used in PROMS' + set @RevDate = '01/19/2026 5:00 PM' + set @RevDescription = 'Sync tree list Sort order between in RO Editor and PROMS' Select cast(@RevDate as datetime) RevDate, @RevDescription RevDescription PRINT 'SQL Code Revision ' + @RevDate + ' - ' + @RevDescription -- 2.49.1 From 622053085567d182018d64c41034158a4898fa7a Mon Sep 17 00:00:00 2001 From: John Jenko Date: Wed, 21 Jan 2026 14:30:44 -0500 Subject: [PATCH 7/7] =?UTF-8?q?C2026-003=20For=20Vogtle=20Units=203&4,=20a?= =?UTF-8?q?dded=20format=20variable=20to=20allow=20a=20high=20level=20RNO?= =?UTF-8?q?=20step=20be=20=E2=80=9Ctagged=E2=80=9D=20as=20a=20Continuous?= =?UTF-8?q?=20Action=20Step,=20when=20the=20parent=20AER=20step=20is=20not?= =?UTF-8?q?=20a=20continuous=20action=20step?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PROMS/Formats/fmtall/BASEall.xml | Bin 91196 -> 91366 bytes PROMS/Formats/fmtall/VEGP2all.xml | Bin 236670 -> 236850 bytes .../VEPROMS.CSLA.Library/Extension/ItemExt.cs | 13 +++++++ .../Format/PlantFormat.cs | 36 ++++++++++++++++++ PROMS/Volian.Controls.Library/DisplayTags.cs | 4 ++ 5 files changed, 53 insertions(+) diff --git a/PROMS/Formats/fmtall/BASEall.xml b/PROMS/Formats/fmtall/BASEall.xml index eec99ffad4e8cc94960595fd15097a50fdc68062..927b0a15852c52c3784d46e3704437481786da75 100644 GIT binary patch delta 155 zcmdmUg7w)+)(xuyPeJn{E!~G6XObF=T=b^#vN24CLiA bC@|PEC;_1YL<@r}(11*sg`0a{tgi+D^@b(j delta 32 qcmV+*0N?-S$pyT~1+c16li)oDmrNM}7PBx>(3g{N$Uw7z>1KQU_zzS7 diff --git a/PROMS/Formats/fmtall/VEGP2all.xml b/PROMS/Formats/fmtall/VEGP2all.xml index 7fcb87469afd0ba7c6a462c9d920866b6beaa763..e654d1af25960b9dca0ab26b0925c61a332516b9 100644 GIT binary patch delta 191 zcmeyjgKyI=z6~t;kqQis3@Je9%#hEJ$4~;~B?HM2hD3&RAeqnL!H@}LWia?Kq%xEN zaSlTegCB!GLpV?@6{y1#h?9Y$r9d-Mf!H6&cLtggJUwwMqvGTQ1HNVz{p~9HjF0+F z!Qu=73`IaQL3a59ZAk|5@);BuY#Edosu>i4dM$yl7RXb8nzR2nqxf`|6O4ZCA^RD( KhwNw4x(fgmnJfGN delta 42 zcmV+_0M-Apx(@!h4zL6-mxPl69FveR1cQt(w~Q|V;*Xc`!~sr+2*3fi2*3g=-H3V- A*Z=?k diff --git a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs index 8cd4a26b..a0340ed4 100644 --- a/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs +++ b/PROMS/VEPROMS.CSLA.Library/Extension/ItemExt.cs @@ -4745,6 +4745,19 @@ namespace VEPROMS.CSLA.Library { _MyTab.Text = _MyTab.Text.Substring(1); } + // C2026-003 Vogtle Continuous Action high level RNO (AER is not continuous action) + if (ActiveFormat.MyStepSectionLayoutData.AddContActTagToHighLevelRNOWhenIncludedOnCAS && + IsInRNO && !MyParent.IsInRNO && FormatStepData.TabData.CASPrintMacro != null) + { + StepConfig sc = MyConfig as StepConfig; + if (sc != null && sc.Step_CAS == "True") + { + if (FormatStepData.TabData.CASPrintMacro != null) + _MyTab.Text = FormatStepData.TabData.CASPrintMacro + _MyTab.Text; + if (FormatStepData.TabData.CASEditTag != null) + _MyTab.CleanText = FormatStepData.TabData.CASEditTag + _MyTab.CleanText; + } + } _MyTab.RNOTabWidthAdjust = ((ItemInfo)ActiveParent).FormatStepData.TabData.RNOAdjustTabSize ?? 0; if (((ItemInfo)ActiveParent).MyTab.Offset != 0) _MyTab.Offset = ((ItemInfo)ActiveParent).MyTab.Offset; if (((ItemInfo)ActiveParent).FormatStepData.TabData.RNOExcludeMacros) diff --git a/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs b/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs index 282cc8f1..36631cf5 100644 --- a/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs +++ b/PROMS/VEPROMS.CSLA.Library/Format/PlantFormat.cs @@ -3814,6 +3814,18 @@ namespace VEPROMS.CSLA.Library } } + // C2026-003 (for Vogtle Units 3&4) Adds the continuous action tag to a high level RNO + // only when it as a tab and the parent is an AER step that is not tagged as a continuous action + // Use this with the setting of CASPrintMacro and CASEditTag on the RNO step type TabData definition + private LazyLoad _AddContActTagToHighLevelRNOWhenIncludedOnCAS; + public bool AddContActTagToHighLevelRNOWhenIncludedOnCAS + { + get + { + return LazyLoad(ref _AddContActTagToHighLevelRNOWhenIncludedOnCAS, "@AddContActTagToHighLevelRNOWhenIncludedOnCAS"); + } + } + // treat sub-sections and High Level Steps as if they are at the same procedure structure level. This is used with the TieTabToLevel flag private LazyLoad _SubSectAndHighSameLevel; public bool SubSectAndHighSameLevel @@ -5708,6 +5720,30 @@ public StepData Equation // equation has a parent of embedded object. return LazyLoad(ref _RNOIdentPrint, "TabData/@RNOIdent"); } } + // Adds a print macro for the high level RNO when the user want it to be a Continuous Action + // while the corresponding AER is not a continuous action + // C2026-003 used in RNO step definition for Vogtle 3&4 two column format + // use with AddContActTagToHighLevelRNOWhenIncludedOnCAS set to True in the format file's StpSectLayData + private LazyLoad _CASPrintMacro; + public string CASPrintMacro + { + get + { + return LazyLoad(ref _CASPrintMacro, "TabData/@CASPrintMacro"); + } + } + // Adds a character indicator in the step editor for the high level RNO when the user want it to be a Continuous Action + // while the corresponding AER is not a continuous action + // C2026-003 used in RNO step definition for Vogtle 3&4 two colmn format + // use with AddContActTagToHighLevelRNOWhenIncludedOnCAS set to True in the format file's StpSectLayData + private LazyLoad _CASEditTag; + public string CASEditTag + { + get + { + return LazyLoad(ref _CASEditTag, "TabData/@CASEditTag"); + } + } // don't use the defined macro when creating a step tab for the step type's RNO private LazyLoad _RNOExcludeMacros; diff --git a/PROMS/Volian.Controls.Library/DisplayTags.cs b/PROMS/Volian.Controls.Library/DisplayTags.cs index 7621c55c..4d5c12b1 100644 --- a/PROMS/Volian.Controls.Library/DisplayTags.cs +++ b/PROMS/Volian.Controls.Library/DisplayTags.cs @@ -647,6 +647,10 @@ namespace Volian.Controls.Library MyEditItem.ChangeBarForConfigItemChange = false; sc.Step_CAS = (cbCAS.Checked) ? "True" : "False"; MyEditItem.ChangeBarForConfigItemChange = true; + // C2026-003 (put in for Vogtle 3&4) refresh the RNO step tab if including it on the Continuous Action Summary + if (MyEditItem.MyItemInfo.ActiveFormat.MyStepSectionLayoutData.AddContActTagToHighLevelRNOWhenIncludedOnCAS && + MyEditItem.MyItemInfo.IsInRNO && !MyEditItem.MyItemInfo.MyParent.IsInRNO) + MyEditItem.RefreshTab(); } private void cbTCAS_CheckedChanged(object sender, EventArgs e) { -- 2.49.1