Compare commits

..
Author SHA1 Message Date
plarsen 70f132540f B2026-056-Syntax-problem-in-XY-plot 2026-08-07 12:15:52 -04:00
plarsen cd9eaaaba1 B2026-056-Syntac-problem-in-XY-Plot 2026-08-05 21:42:44 -04:00
plarsen 70aa1f4024 B2026-056-Syntax-problem-in-XY-plot 2026-08-05 17:23:13 -04:00
plarsen 1d634d96fe Merge branch 'Development' of https://git.volian.com/Volian/SourceCode into Development 2026-08-05 17:15:54 -04:00
jjenko 4eb5254d96 Merge pull request 'B2026-070 –Barakah Word Section with less than sign' (#800) from B2026-070 into Development
good for testing
2026-08-04 09:14:05 -04:00
mschill 6c2eee0cbc B2026-070 –Barakah Word Section with less than sign 2026-08-04 07:57:01 -04:00
plarsen 3c5265cecf Merge branch 'Development' of https://git.volian.com/Volian/SourceCode into Development 2026-08-03 10:31:24 -04:00
mschill 478d35890d Merge pull request 'C2026-047 Improved the efficiency of retrieving Alarm Point Table information.' (#799) from C2026-047_AlarmPointTableProcessing into Development
Looks Good - Ready for QA.
2026-08-03 05:36:26 -04:00
jjenko 1b9b63412c C2026-047 Improved the efficiency of retrieving Alarm Point Table information. 2026-07-31 13:44:19 -04:00
mschill 3bb8fff3a1 Merge pull request 'B2026 053 find unlinked values of selected' (#795) from B2026-053-Find-Unlinked-Values-of-Selected into Development
Looks Good. Ready For QA.
FYI - Branch was out of date so I updated it.

Would be sure to test both Searches that changed.
2026-07-30 15:29:18 -04:00
mschill 694bc0ead4 Merge branch 'Development' into B2026-053-Find-Unlinked-Values-of-Selected 2026-07-30 15:27:52 -04:00
plarsen cfc324d31e B2026-053-Find-Unlinked-Values-of-Selected 2026-07-30 15:22:32 -04:00
plarsen 43b63e2843 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-30 12:51:24 -04:00
jjenko f2ec510a70 Merge pull request 'B2026-069 – Updated Messaging related to Checking out working Drafts when ROs are being checked if they need updated.' (#798) from B2026-069 into Development
good for testing
2026-07-30 10:54:23 -04:00
mschill 453edbb28e B2026-069 – Updated Messaging related to Checking out working Drafts when ROs are being checked if they need updated. 2026-07-30 10:54:24 -04:00
plarsen bc9407f52f B2026-053-Find-Unlinked-Values-of-Selected 2026-07-29 13:48:05 -04:00
plarsen 954cc5918f B2026-053-Find-Unlinked-Values-of-Selected 2026-07-29 12:34:20 -04:00
plarsen 4ef16e7856 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-28 15:46:43 -04:00
plarsen 1eb3c3e725 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-28 15:39:17 -04:00
plarsen a89c2d3d22 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-28 15:37:37 -04:00
plarsen 914837a5a2 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-28 10:57:55 -04:00
plarsen 9643a71ba5 Merge branch 'Development' of https://git.volian.com/Volian/SourceCode into Development 2026-07-28 08:35:53 -04:00
mschill aa7e0528f8 Merge branch 'Development' into B2026-053-Find-Unlinked-Values-of-Selected 2026-07-28 06:34:08 -04:00
plarsen 57bd8d569e B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 13:45:20 -04:00
plarsen b49d8871a2 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 12:25:46 -04:00
plarsen b90d419bc5 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 12:14:55 -04:00
jjenko 1f48d498e1 Merge pull request 'B2026-067 – Corrected specific instance where a crash would occur when multiple Word Sections open and were closed in a specific order.' (#797) from B2026-067 into Development
good for testing
2026-07-27 11:54:21 -04:00
mschill da6139c932 B2026-067 – Corrected specific instance where a crash would occur when multiple Word Sections open and were closed in a specific order. 2026-07-27 11:47:36 -04:00
plarsen be744b40a3 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 11:35:42 -04:00
plarsen 780ce657ca B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 11:28:40 -04:00
plarsen 464be0f803 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 11:22:49 -04:00
plarsen 58a6cb9a24 Development 2026-07-27 11:19:47 -04:00
plarsen 9bf7b2ffde B2026-053-Find-Unlinked-Values-of-Selected 2026-07-27 11:14:19 -04:00
mschill cde1f28215 Merge pull request 'B2026-066 Fixed issue of the Update RO Values button and Working Draft context menu item, not being disabled after Updating RO Values.' (#796) from B2026-066_UpdateROsButtonFix into Development
Looks Good. Ready for QA.
2026-07-27 11:09:42 -04:00
jjenko db198cb7d0 B2026-066 Fixed issue of the Update RO Values button and Working Draft context menu item, not being disabled after Updating RO Values. 2026-07-27 11:08:35 -04:00
plarsen 99fe567e78 Development 2026-07-27 09:13:34 -04:00
plarsen 2261c8f0f5 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-24 10:47:25 -04:00
plarsen f93b16fc52 B2026-053-Find-Unlinked-Values-of-Selected 2026-07-23 09:21:09 -04:00
plarsen 7c3a43749c B2026-053-Find-Unlinked-Values-of-Selected 2026-07-23 09:09:22 -04:00
plarsen ecec7b9f1a Merge branch 'Development' of https://git.volian.com/Volian/SourceCode into Development 2026-07-23 08:17:55 -04:00
plarsen 1aca7335f7 Development 2026-07-23 08:15:18 -04:00
plarsen ba5aee6640 Development 2026-07-21 11:33:58 -04:00
jjenko abaf55e9b1 Merge pull request 'C2026-046 - Decrease check if need to update ROs.' (#793) from C2026-046 into Development
good for testing
2026-07-21 10:32:30 -04:00
mschill 3a2dd0b0aa C2026-046 - Decrease check if need to update ROs. 2026-07-21 10:24:46 -04:00
jjenko 0fed1acfd8 Merge pull request 'F2026-017 Blank line was sometimes missing after the Note and Caution text. This was a 64-bit build difference that affected the text width calculations.' (#792) from F2026-017_SummerCautionNoteAdj into Development
Format only change - good for testing phase
2026-07-17 10:11:25 -04:00
plarsen 7a3a07b0da Merge branch 'Development' of https://git.volian.com/Volian/SourceCode into Development 2026-07-16 08:25:16 -04:00
plarsen 05ab48cdc5 Merge branch 'Development' of https://git.volian.com/Volian/SourceCode into Development 2026-06-24 09:49:07 -04:00
plarsen fd51c209a3 Development 2026-06-15 15:18:03 -04:00
15 changed files with 198 additions and 88 deletions
+1
View File
@@ -402,3 +402,4 @@ FodyWeavers.xsd
/fmtall /fmtall
/genmacall /genmacall
*AssemblyInfo.cs *AssemblyInfo.cs
/PROMS/Baseline/Baseline.sln
+3 -2
View File
@@ -2148,7 +2148,7 @@ namespace VEPROMS
//C2019-036 View Only mode work with Checked Out Procedures //C2019-036 View Only mode work with Checked Out Procedures
// View Only Mode is no longer checked out, so no longer has an OwnerID // View Only Mode is no longer checked out, so no longer has an OwnerID
// This will keep those tabs from auto-closing based on the timer // This will keep those tabs from auto-closing based on the timer
if (!myList.Contains(dti.OwnerID) && dti.MyStepTabPanel.MyStepPanel.VwMode != E_ViewMode.View) if (!myList.Contains(dti.OwnerID) && dti?.MyStepTabPanel?.MyStepPanel?.VwMode != E_ViewMode.View)
{ {
MyCloseTabList.PushDTI(dti); MyCloseTabList.PushDTI(dti);
} }
@@ -3578,6 +3578,7 @@ namespace VEPROMS
{ {
if (parameter.StartsWith("/P=")) if (parameter.StartsWith("/P="))
{ {
BaseLnSettings.blBaseLine = true;
MSWordToPDF.Automatic = true; MSWordToPDF.Automatic = true;
PromsPrinter.BaselineTesting = true;// Set Baseline Testing property for PROMsPrinter PromsPrinter.BaselineTesting = true;// Set Baseline Testing property for PROMsPrinter
string[] dvstrs = parameter.Substring(3).Split(",".ToCharArray()); string[] dvstrs = parameter.Substring(3).Split(",".ToCharArray());
@@ -3623,7 +3624,7 @@ namespace VEPROMS
} }
ranAuto = true; ranAuto = true;
} }
BaseLnSettings.blBaseLine = false;
if (ranAuto) if (ranAuto)
{ {
this.Close(); this.Close();
@@ -2163,9 +2163,13 @@ namespace VEPROMS.CSLA.Library
// move past that text and try the Word Find function again. // move past that text and try the Word Find function again.
// B2022-088: [JPR] Find Doc Ro button not working in Word Sections // B2022-088: [JPR] Find Doc Ro button not working in Word Sections
// B2022-098: [JPR] ROs not being resolved in Word Sections // B2022-098: [JPR] ROs not being resolved in Word Sections
// B2026-070: When there is a less-then sign (<) followed by a numeric value in a Word attachment (inside of a table), PROMS thinks the user put in an RO token will generate an RO not found error in the following table row who's text contains <U-Name>.
if (executeResult && !string.IsNullOrEmpty(sel.Text) && !sel.Text.StartsWith("<") && !sel.Text.EndsWith(">")) if (executeResult && !string.IsNullOrEmpty(sel.Text) && !sel.Text.StartsWith("<") && !sel.Text.EndsWith(">"))
{ {
sel.MoveStart(LBWdUnits.wdCharacter, sel.Text.Length - 1); int location = sel.Start + sel.Text.Length - 1; //do not do this inline - this needs captured before WholeStory
sel.WholeStory();
sel.MoveStart(LBWdUnits.wdCharacter, location);
tryagain = true; tryagain = true;
} }
} while (tryagain); } while (tryagain);
@@ -262,8 +262,10 @@ namespace VEPROMS.CSLA.Library
if (dvi.DocVersionAssociations[0].MyROFst.ROFstID != newfstid) if (dvi.DocVersionAssociations[0].MyROFst.ROFstID != newfstid)
{ {
dv.DocVersionAssociations[0].MyROFst = localROFst.GetJustROFst(); dv.DocVersionAssociations[0].MyROFst = localROFst.GetJustROFst();
SetAssociationLastCompleted(dv, DateTime.Now.ToString());
} }
// B2026-066 moved this out of if statement above
// - was not resetting the datetime and thus not disabling the Update RO Values button and menu item
SetAssociationLastCompleted(dv, DateTime.Now.ToString());
} }
} }
@@ -326,6 +328,8 @@ namespace VEPROMS.CSLA.Library
// all of the calls aways set the flags to not update the RO values // all of the calls aways set the flags to not update the RO values
public static ROFst UpdateRoFst(RODbInfo rdi, DocVersion docver, ROFstInfo origROFst, ROFstInfoProgressBarRefresh myProgressBarRefresh) public static ROFst UpdateRoFst(RODbInfo rdi, DocVersion docver, ROFstInfo origROFst, ROFstInfoProgressBarRefresh myProgressBarRefresh)
{ {
ROWorkingDraftAsk.ClearWorkingDrafts();
if (myProgressBarRefresh != null) myProgressBarRefresh(0, 100, "Starting Update"); if (myProgressBarRefresh != null) myProgressBarRefresh(0, 100, "Starting Update");
int origFSTid = origROFst.ROFstID; int origFSTid = origROFst.ROFstID;
@@ -0,0 +1,18 @@

using System.Collections.Generic;
namespace VEPROMS.CSLA.Library
{
public static class ROWorkingDraftAsk
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE0044:Add readonly modifier", Justification = "Keeping Collections Not ReadOnly")]
private static List<int> WorkingDrafts = new List<int>();
public static void AddWorkingDrafts(int wd) => WorkingDrafts.Add(wd);
public static void ClearWorkingDrafts() => WorkingDrafts.Clear();
public static bool ContainsWorkingDraft(int wd) => WorkingDrafts.Contains(wd);
}
}
@@ -396,6 +396,7 @@
<Compile Include="Minimal\UserReports.cs" /> <Compile Include="Minimal\UserReports.cs" />
<Compile Include="Minimal\UserSettings.cs" /> <Compile Include="Minimal\UserSettings.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Session\ROWorkingDraftAsk.cs" />
<Compile Include="VEObjects\VEDrillDown.cs" /> <Compile Include="VEObjects\VEDrillDown.cs" />
<Compile Include="VEObjects\VETreeNode.cs" /> <Compile Include="VEObjects\VETreeNode.cs" />
</ItemGroup> </ItemGroup>
@@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Volian.Base.Library
{
public static class BaseLnSettings
{
private static bool _blBaseLine = false;
public static bool blBaseLine
{
get { return _blBaseLine; }
set { _blBaseLine = value; }
}
}
}
@@ -90,6 +90,7 @@
<Reference Include="System.Xml" /> <Reference Include="System.Xml" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Include="BaseLnSettings.cs" />
<Compile Include="BigNum.cs" /> <Compile Include="BigNum.cs" />
<Compile Include="ByteArrayCompare.cs" /> <Compile Include="ByteArrayCompare.cs" />
<Compile Include="DebugPrint.cs" /> <Compile Include="DebugPrint.cs" />
@@ -613,8 +613,16 @@ namespace Volian.Controls.Library
_In_DSOTabPanel_Enter = false; _In_DSOTabPanel_Enter = false;
_MyDisplayTabControl.SelectedDisplayTabItem = MyDisplayTabItem; _MyDisplayTabControl.SelectedDisplayTabItem = MyDisplayTabItem;
// B2018-070 Position the text cursor - Activate MS Word Panel // B2018-070 Position the text cursor - Activate MS Word Panel
try
{
_MyEdWord.GotoItem(EDWordLib.WdGoToItem.wdGoToObject, EDWordLib.WdGoToDirection.wdGoToNext, 0, null); _MyEdWord.GotoItem(EDWordLib.WdGoToItem.wdGoToObject, EDWordLib.WdGoToDirection.wdGoToNext, 0, null);
} }
catch
{
//B2026-067 - Do nothing if cannot Position cursor
}
}
#endregion #endregion
#region Public Methods #region Public Methods
private bool _IsBeingDeleted = false; private bool _IsBeingDeleted = false;
+7 -5
View File
@@ -643,16 +643,15 @@ namespace Volian.Controls.Library
if (_docVersionInfo != null && fstid != -1 && fstid != MyROFSTLookup.RofstID) if (_docVersionInfo != null && fstid != -1 && fstid != MyROFSTLookup.RofstID)
{ {
string message = string.Empty; string message = string.Empty;
if (_progressBar?.Text != "Cannot check-out Working Draft" && !MySessionInfo.CanCheckOutItem(_docVersionInfo.VersionID, CheckOutType.DocVersion, ref message)) if (_progressBar?.Text != "RO Check Paused - Other Users In Set" && !MySessionInfo.CanCheckOutItem(_docVersionInfo.VersionID, CheckOutType.DocVersion, ref message))
{ {
FlexibleMessageBox.Show(this, message, "Working Draft Has Items Already Checked Out", MessageBoxButtons.OK, MessageBoxIcon.Warning); FinalProgressBarMessage = "RO Check Paused - Other Users In Set";
FinalProgressBarMessage = "Cannot check-out Working Draft";
} }
else if (!MySessionInfo.CanCheckOutItem(_docVersionInfo.VersionID, CheckOutType.DocVersion, ref message)) else if (!MySessionInfo.CanCheckOutItem(_docVersionInfo.VersionID, CheckOutType.DocVersion, ref message))
{ {
//do nothing - is still checked out //do nothing - is still checked out
} }
else if (changedDocVersion && !askedAboutchangedDocVersion) else if (changedDocVersion && !askedAboutchangedDocVersion && !ROWorkingDraftAsk.ContainsWorkingDraft(_docVersionInfo.VersionID))
{ {
if (MessageBox.Show($"There exists a newer ROFST for this RO database that was loaded for other sets.\r\n\r\nDo you want to update this set's ROs to be consistent/use the latest loaded ROFST?", "Load ROs", MessageBoxButtons.YesNo) == DialogResult.Yes) if (MessageBox.Show($"There exists a newer ROFST for this RO database that was loaded for other sets.\r\n\r\nDo you want to update this set's ROs to be consistent/use the latest loaded ROFST?", "Load ROs", MessageBoxButtons.YesNo) == DialogResult.Yes)
{ {
@@ -671,10 +670,13 @@ namespace Volian.Controls.Library
updatedROs = true; updatedROs = true;
askedAboutchangedDocVersion = false; askedAboutchangedDocVersion = false;
ROWorkingDraftAsk.ClearWorkingDrafts();
} }
else else
{ {
askedAboutchangedDocVersion = true; askedAboutchangedDocVersion = true;
if (!ROWorkingDraftAsk.ContainsWorkingDraft(_docVersionInfo.VersionID))
ROWorkingDraftAsk.AddWorkingDrafts(_docVersionInfo.VersionID);
} }
} }
@@ -716,7 +718,7 @@ namespace Volian.Controls.Library
if (tmpROID != null) ExpandNode(ROFSTLookup.FormatRoidKey(tmpROID, true)); if (tmpROID != null) ExpandNode(ROFSTLookup.FormatRoidKey(tmpROID, true));
//doc version would have updated (if needed) so reset flag //doc version would have updated (if needed) so reset flag
if (_progressBar?.Text != "Cannot check-out Working Draft") if (_progressBar?.Text != "RO Check Paused - Other Users In Set")
{ {
changedDocVersion = false; changedDocVersion = false;
} }
+51 -25
View File
@@ -2016,35 +2016,16 @@ namespace Volian.Controls.Library
{ {
ReportTitle = string.Format("Search for '{0}'", TextSearchString); ReportTitle = string.Format("Search for '{0}'", TextSearchString);
// C2020-009: Search - Allow search 'By Word'.
string byWordPrefix = string.Empty; string byWordPrefix = string.Empty;
string byWordSuffix = string.Empty; string byWordSuffix = string.Empty;
if (cbxByWord.Checked) if (cbxByWord.Checked)
{ {
// Generate a prefix & suffix to be used in the sql query around the search string. byWordPrefix = GetByWordSettings(TextSearchString, true);
// If the search string starts (prefix)/ends(suffix) with a number, then use an expression that byWordSuffix = GetByWordSettings(TextSearchString, false);
// does not allow the preceding/following text to have a number, '.', letter or other rtf
// commands. If the search string starts/ends with a letter, then use an expression that does not
// find the preceding/following text that is text, i.e. a letter.
if (Regex.IsMatch(TextSearchString, @"^[\d\.]")) // starts with a number or '.' decimal pt
{
byWordPrefix = @"[^0-9a-zA-Z.vbpi:\\-]";
}
else if (Regex.IsMatch(TextSearchString, @"^[a-zA-Z]")) // starts with a letter
{
byWordPrefix = @"[^a-zA-Z]";
}
if (Regex.IsMatch(TextSearchString, @"[\d\.]$")) // ends with a number or decimal
{
byWordSuffix = @"[^0-9a-zA-Z.vbpi:\\-]";
}
else if (Regex.IsMatch(TextSearchString, @"[a-zA-Z]$")) // ends with a letter
{
byWordSuffix = @"[^a-zA-Z]";
}
} }
SearchString = TextSearchString; SearchString = TextSearchString;
// B2022-031 - added a cbxProcSectSrch to filter out procedure and section titles from global search results.
SearchResults = ItemInfoList.GetListFromTextSearch(DVISearchList, TypeSearchList, TextSearchString /*.Replace(@"\",@"\u9586?")*/, cbxBooleanTxtSrch.Checked ? 2 : cbxCaseSensitive.Checked ? 1 : 0, cbxProcSectSrch.Checked ? 1 : 0, cbxIncROTextSrch.Checked ? ItemSearchIncludeLinks.Value : ItemSearchIncludeLinks.Nothing, includeRTFformat, includeSpecialChars, unitPrefix, byWordPrefix, byWordSuffix); SearchResults = ItemInfoList.GetListFromTextSearch(DVISearchList, TypeSearchList, TextSearchString /*.Replace(@"\",@"\u9586?")*/, cbxBooleanTxtSrch.Checked ? 2 : cbxCaseSensitive.Checked ? 1 : 0, cbxProcSectSrch.Checked ? 1 : 0, cbxIncROTextSrch.Checked ? ItemSearchIncludeLinks.Value : ItemSearchIncludeLinks.Nothing, includeRTFformat, includeSpecialChars, unitPrefix, byWordPrefix, byWordSuffix);
cmbResultsStyleIndex = 3; // display step text in results cmbResultsStyleIndex = 3; // display step text in results
@@ -2078,8 +2059,8 @@ namespace Volian.Controls.Library
if (cbxFndUnLnkROVals.Enabled && cbxFndUnLnkROVals.Checked) if (cbxFndUnLnkROVals.Enabled && cbxFndUnLnkROVals.Checked)
{ {
// B2022-031 - added a cbxProcSectSrch to filter out procedure and section titles from global search results.
SearchResults = ItemInfoList.GetListFromTextSearch(DVISearchList, TypeSearchList, ROSearchList, cbxBooleanTxtSrch.Checked ? 2 : cbxCaseSensitive.Checked ? 1 : 0, cbxProcSectSrch.Checked ? 1 : 0, ItemSearchIncludeLinks.Nothing, includeRTFformat, includeSpecialChars, unitPrefix, string.Empty, string.Empty); SearchResults = ItemInfoList.GetListFromTextSearch(DVISearchList, TypeSearchList, ROSearchList, cbxBooleanTxtSrch.Checked ? 2 : cbxCaseSensitive.Checked ? 1 : 0, cbxProcSectSrch.Checked ? 1 : 0, ItemSearchIncludeLinks.Nothing, includeRTFformat, includeSpecialChars, unitPrefix, GetByWordSettings(ROSearchList, true), GetByWordSettings(ROSearchList, false));
cmbResultsStyleIndex = 3; // display step text in results cmbResultsStyleIndex = 3; // display step text in results
} }
else else
@@ -2189,7 +2170,52 @@ namespace Volian.Controls.Library
} }
OnSearchComplete(new DisplaySearchEventArgs(TimeSpan.FromTicks(DateTime.Now.Ticks - start.Ticks))); OnSearchComplete(new DisplaySearchEventArgs(TimeSpan.FromTicks(DateTime.Now.Ticks - start.Ticks)));
} }
private string GetByWordSettings(string ss, bool checkstart)
{
// C2020-009: Search - Allow search 'By Word'.
// // Generate a prefix & suffix to be used in the sql query around the search string.
// // If the search string starts (prefix)/ends(suffix) with a number, then use an expression that
// // does not allow the preceding/following text to have a number, '.', letter or other rtf
// // commands. If the search string starts/ends with a letter, then use an expression that does not
// // find the preceding/following text that is text, i.e. a letter.
if (ss.Length > 0)
{
//checking start
if (checkstart)
{
// starts with a number or '.' decimal pt
if (char.IsNumber(ss, 0) || ss[0] == '.')
{
return @"[^0-9a-zA-Z.vbpi:\\-]";
}
// starts with a letter
else if (char.IsLetter(ss, 0))
{
return @"[^a-zA-Z]";
}
}
//checking end
else
{
// ends with a number or '.' decimal pt
if (char.IsNumber(ss, ss.Length - 1) || ss[ss.Length - 1] == '.')
{
return @"[^0-9a-zA-Z.vbpi:\\-]";
}
// ends with a letter
else if (char.IsLetter(ss, ss.Length - 1))
{
return @"[^a-zA-Z]";
}
}
}
//default
return string.Empty;
}
private void ClearResults() // B2021-103 if no results when RNO only, clear results list. (moved from btnSearch_Click) private void ClearResults() // B2021-103 if no results when RNO only, clear results list. (moved from btnSearch_Click)
{ {
if (tabSearchTypes.SelectedTab != tabSearchTypes.Tabs[4]) if (tabSearchTypes.SelectedTab != tabSearchTypes.Tabs[4])
+4 -5
View File
@@ -3684,15 +3684,14 @@ namespace Volian.Controls.Library
{ {
ROFSTLookup myLookup = MySection.MyDocVersion.DocVersionAssociations[0].MyROFst.GetROFSTLookup(MySection.MyDocVersion, null); ROFSTLookup myLookup = MySection.MyDocVersion.DocVersionAssociations[0].MyROFst.GetROFSTLookup(MySection.MyDocVersion, null);
string accpgid = accpageid;
//B2022-083: Support Conditional RO Values //B2022-083: Support Conditional RO Values
ROFSTLookup.rochild roc = myLookup.GetROChildByAccPageID(string.Format("<{0}.{1}>", accpgid, multiid), MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix); //C2026-047 first try the RO Lookup with the ascii dash character in the accpageid. If not found, try again with the unicode dash
ROFSTLookup.rochild roc = myLookup.GetROChildByAccPageID(string.Format("<{0}.{1}>", accpageid.Replace(@"\u8209?", "-"), multiid), MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix);
if (roc.value == null) if (roc.value == null)
{ {
accpgid = accpgid.Replace(@"\u8209?", "-"); // try again but this time with the unicode dash
roc = myLookup.GetROChildByAccPageID(string.Format("<{0}.{1}>", accpgid, multiid), MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix); roc = myLookup.GetROChildByAccPageID(string.Format("<{0}.{1}>", accpageid, multiid), MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix);
} }
if (!deflt.StartsWith("[") && !string.IsNullOrEmpty(roc.value) && roc.value.Trim().Length > 0) // don't return val if it's an empty or blank string - jsj 01-28-2019 if (!deflt.StartsWith("[") && !string.IsNullOrEmpty(roc.value) && roc.value.Trim().Length > 0) // don't return val if it's an empty or blank string - jsj 01-28-2019
@@ -1660,13 +1660,13 @@ i = 0;
{ {
ROFSTLookup myLookup = MySection.MyDocVersion.DocVersionAssociations[0].MyROFst.GetROFSTLookup(MySection.MyDocVersion, overrideChild); ROFSTLookup myLookup = MySection.MyDocVersion.DocVersionAssociations[0].MyROFst.GetROFSTLookup(MySection.MyDocVersion, overrideChild);
string accpgid = accpageid; //C2026-047 first try the RO Lookup with the ascii dash character in the accpageid. If not found, try again with the unicode dash
ROFSTLookup.rochild roc = myLookup.GetROChildByAccPageID("<" + accpgid + "." + multiid + ">", MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix); ROFSTLookup.rochild roc = myLookup.GetROChildByAccPageID("<" + accpageid.Replace(@"\u8209?", "-") + "." + multiid + ">", MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix);
if (roc.value == null) if (roc.value == null)
{ {
accpgid = accpgid.Replace(@"\u8209?", "-"); // try again but this time with the unicode dash
roc = myLookup.GetROChildByAccPageID("<" + accpgid + "." + multiid + ">", MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix); roc = myLookup.GetROChildByAccPageID("<" + accpageid + "." + multiid + ">", MySection.MyDocVersion.DocVersionConfig.RODefaults_setpointprefix, MySection.MyDocVersion.DocVersionConfig.RODefaults_graphicsprefix);
} }
if (!deflt.StartsWith("[") && !string.IsNullOrEmpty(roc.value) && roc.value.Trim().Length > 0) // don't return val if it's an empty or blank string - jsj 01-28-2019 if (!deflt.StartsWith("[") && !string.IsNullOrEmpty(roc.value) && roc.value.Trim().Length > 0) // don't return val if it's an empty or blank string - jsj 01-28-2019
+24 -1
View File
@@ -6,6 +6,7 @@ using System.Windows.Forms;
using System.Text; using System.Text;
using System.Drawing; using System.Drawing;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using Volian.Base.Library;
using VG; using VG;
namespace XYPlots namespace XYPlots
@@ -281,22 +282,28 @@ namespace XYPlots
private bool LoadBuff(string FileName) private bool LoadBuff(string FileName)
{ {
if (!File.Exists(FileName)) if (!File.Exists(FileName))
{
if (!BaseLnSettings.blBaseLine) // B2026-056 suppress messages when running baseline.
{ {
// File does not exist, show error message // File does not exist, show error message
MessageBox.Show(String.Format("X/Y Plot File {0} Does Not Exist", FileName), "Error Opening X/Y Plot File"); MessageBox.Show(String.Format("X/Y Plot File {0} Does Not Exist", FileName), "Error Opening X/Y Plot File");
return false; return false;
} }
}
// Open the X/Y Plot file // Open the X/Y Plot file
try try
{ {
XYPlotFile = File.OpenRead(FileName); XYPlotFile = File.OpenRead(FileName);
} }
catch (Exception e) catch (Exception e)
{
if (!BaseLnSettings.blBaseLine) // B2026-056 suppress messages when running baseline.
{ {
// cannot open the x/y plot file // cannot open the x/y plot file
MessageBox.Show(e.Message, String.Format("Error Opening {0} for Reading", FileName)); MessageBox.Show(e.Message, String.Format("Error Opening {0} for Reading", FileName));
return false; return false;
} }
}
int blen = (int)XYPlotFile.Length; int blen = (int)XYPlotFile.Length;
int bread = 0; int bread = 0;
// initialize a byte array to read into // initialize a byte array to read into
@@ -308,19 +315,25 @@ namespace XYPlots
bread = XYPlotFile.Read(bbuf, 0, blen); bread = XYPlotFile.Read(bbuf, 0, blen);
} }
catch (Exception e) catch (Exception e)
{
if (!BaseLnSettings.blBaseLine) // B2026-056 suppress messages when running baseline.
{ {
MessageBox.Show(e.Message, String.Format("Error Reading {0}", FileName)); MessageBox.Show(e.Message, String.Format("Error Reading {0}", FileName));
return false; return false;
} }
}
try try
{ {
XYPlotFile.Close(); XYPlotFile.Close();
} }
catch (Exception e) catch (Exception e)
{
if (!BaseLnSettings.blBaseLine) // B2026-056 suppress messages when running baseline.
{ {
MessageBox.Show(e.Message, String.Format("Error Closing {0}", FileName)); MessageBox.Show(e.Message, String.Format("Error Closing {0}", FileName));
return false; return false;
} }
}
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
for (int i = 0; i < bbuf.Length; i++) for (int i = 0; i < bbuf.Length; i++)
{ {
@@ -446,7 +459,7 @@ namespace XYPlots
char retval; char retval;
StringBuilder Lbuff = new StringBuilder(); StringBuilder Lbuff = new StringBuilder();
retval = NextChar(); retval = NextChar();
if (retval != '"' && retval != '\x1C') // open double quote if (retval != '"' && retval != '\x1C' && !BaseLnSettings.blBaseLine) // open double quote
MessageBox.Show("Double Quote not found", "Syntax problem in XY Plot"); MessageBox.Show("Double Quote not found", "Syntax problem in XY Plot");
retval = NextChar(); retval = NextChar();
while (retval != 0 && retval != '\n') while (retval != 0 && retval != '\n')
@@ -1439,9 +1452,12 @@ namespace XYPlots
} }
} }
private void PrintStackError(string relation, int limit) private void PrintStackError(string relation, int limit)
{
if (!BaseLnSettings.blBaseLine) // B2026-056 suppress messages when running baseline.
{ {
MessageBox.Show(String.Format("Position Stack Pointer {0} {1}", relation, limit.ToString()), "Print Stack Error"); MessageBox.Show(String.Format("Position Stack Pointer {0} {1}", relation, limit.ToString()), "Print Stack Error");
} }
}
private void SavePosition() private void SavePosition()
{ {
if (stack >= MAX_XY_STACK) PrintStackError(">=", MAX_XY_STACK); if (stack >= MAX_XY_STACK) PrintStackError(">=", MAX_XY_STACK);
@@ -1657,10 +1673,13 @@ namespace XYPlots
maximum[flag] = newmaximum; maximum[flag] = newmaximum;
} }
private void err_exit(string msg, string msg2) private void err_exit(string msg, string msg2)
{
if (!BaseLnSettings.blBaseLine) // B2026-056 suppress messages when running baseline.
{ {
MessageBox.Show(msg + "\n" + msg2 + "\n\n This p=Process Will Terminate", "\n## ERROR ## - "); MessageBox.Show(msg + "\n" + msg2 + "\n\n This p=Process Will Terminate", "\n## ERROR ## - ");
Environment.Exit(255); Environment.Exit(255);
} }
}
private void FindBoxesinArea(int ptval, int flag) private void FindBoxesinArea(int ptval, int flag)
{ {
XyBox cptr; XyBox cptr;
@@ -1991,12 +2010,16 @@ namespace XYPlots
AxisLabel[1] = getint(); AxisLabel[1] = getint();
break; break;
default: default:
if (BaseLnSettings.blBaseLine == false) // B2026-056 suppress messages when running baseline.
{
if (PrevCommand.Equals(null)) if (PrevCommand.Equals(null))
MessageBox.Show("Check the first line of the X/Y Plot definition.", "Unrecognized Graph Command"); MessageBox.Show("Check the first line of the X/Y Plot definition.", "Unrecognized Graph Command");
else else
MessageBox.Show(string.Format("Problem with the X/Y Plot Command after {0}", PrevCommand.ToString()), "Unrecognized Graph Command"); MessageBox.Show(string.Format("Problem with the X/Y Plot Command after {0}", PrevCommand.ToString()), "Unrecognized Graph Command");
break; break;
} }
break;
}
PrevCommand = Command; PrevCommand = Command;
} }
} }
+4
View File
@@ -176,6 +176,10 @@
<Project>{52D74078-3822-410E-889B-464BD21AAB9E}</Project> <Project>{52D74078-3822-410E-889B-464BD21AAB9E}</Project>
<Name>VG</Name> <Name>VG</Name>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\Volian.Base.Library\Volian.Base.Library.csproj">
<Project>{aeee9fd1-6892-45e2-a67e-418c06d46ff9}</Project>
<Name>Volian.Base.Library</Name>
</ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Folder Include="Properties\" /> <Folder Include="Properties\" />