From 57e43fe5d70e62cd2b83a37b7b6b9813e3778b1b Mon Sep 17 00:00:00 2001 From: Paul Larsen Date: Thu, 30 Nov 2023 11:01:27 -0500 Subject: [PATCH] B2023-120 If the path to the ROMaster DB contains spaces the copy process fails when transfer RO data to SQL along the some house keeping chech ins. --- .../Exe/RefObj/CmpRpt/CmpRpt.cs | 22 ++++++- .../Exe/RefObj/CmpRpt/CmpRpt.sln | 31 +++++++++ .../Exe/RefObj/ROEditor/ROEditor.sln | 63 +++++++------------ .../Exe/RefObj/ROEditor/ROEditor.sln | 31 +++++++++ .../LibSource/RODBInterface/RODBInterface.sln | 31 +++++++++ PROMS/RoAccessToSql/RoAccessToSql.sln | 25 ++++++++ .../frmVersionsProperties.cs | 5 ++ .../Volian.Controls.Library/DisplayReports.cs | 2 +- 8 files changed, 167 insertions(+), 43 deletions(-) create mode 100644 PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.sln create mode 100644 PROMS/ReferencedObjects/Exe/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln create mode 100644 PROMS/ReferencedObjects/LibSource/RODBInterface/RODBInterface.sln create mode 100644 PROMS/RoAccessToSql/RoAccessToSql.sln diff --git a/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.cs b/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.cs index 821ddbca..5c642367 100644 --- a/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.cs +++ b/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.cs @@ -24,6 +24,7 @@ using System; using System.Drawing; using System.Collections; +using System.Collections.Generic; using System.ComponentModel; using System.Windows.Forms; using System.IO; @@ -140,11 +141,26 @@ namespace CmpRpt // for the Access database. string roIdArg = BuildROList(args); string[] roIDList = roIdArg.Split(','); - if (args.Length == 2 || args.Length == 3) - { + + // If the args array contains more than 3 elements remove the extra ones. The fourth argument (PC=...) is handled in the BuildROList + // method above. If the args array contains more than 3 elements the working dir will not be correctly be set and the report will fail. + // The calling code file (DisplayReports.cs) at this time will only send up to 4 args. + + //List args2 = new List(args); + //for (int i = 0; i < args2.Count; i++) + // { + // if (i > 2) { + // args2.RemoveAt(i); + // } + // } + ////args2.RemoveAt(3); + //args = args2.ToArray(); + + //if (args.Length == 2 || args.Length == 3) + //{ string path = args[0]; Directory.SetCurrentDirectory(path); - } + //} if (SqlConnectionStr != null) myrodb = new SqlRODB(Directory.GetCurrentDirectory(), SqlConnectionStr, false); else diff --git a/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.sln b/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.sln new file mode 100644 index 00000000..92a82df9 --- /dev/null +++ b/PROMS/ReferencedObjects/Exe/RefObj/CmpRpt/CmpRpt.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32901.82 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CmpRpt", "CmpRpt.csproj", "{C4293263-EA9C-11D6-8515-00A0CC271352}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {C4293263-EA9C-11D6-8515-00A0CC271352}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C4293263-EA9C-11D6-8515-00A0CC271352}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C4293263-EA9C-11D6-8515-00A0CC271352}.Debug|x86.ActiveCfg = Debug|x86 + {C4293263-EA9C-11D6-8515-00A0CC271352}.Debug|x86.Build.0 = Debug|x86 + {C4293263-EA9C-11D6-8515-00A0CC271352}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C4293263-EA9C-11D6-8515-00A0CC271352}.Release|Any CPU.Build.0 = Release|Any CPU + {C4293263-EA9C-11D6-8515-00A0CC271352}.Release|x86.ActiveCfg = Release|x86 + {C4293263-EA9C-11D6-8515-00A0CC271352}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {14F0328F-5103-43E9-AFED-8510A6098931} + EndGlobalSection +EndGlobal diff --git a/PROMS/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln b/PROMS/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln index a4ac6982..e4558b4d 100644 --- a/PROMS/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln +++ b/PROMS/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln @@ -1,6 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2013 -VisualStudioVersion = 12.0.30723.0 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32901.82 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ROEditor", "ROEditor.csproj", "{3A4A3543-2D44-11D6-8452-00A0CC271352}" ProjectSection(ProjectDependencies) = postProject @@ -38,43 +38,6 @@ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Utils", "..\..\..\LibSource\Utils\Utils.csproj", "{680054D3-49C4-40E7-92A5-67B97DCE6308}" EndProject Global - GlobalSection(SourceCodeControl) = preSolution - SccNumberOfProjects = 11 - SccProjectName0 = \u0022$/PROMS/ReferencedObjects/ROEditor\u0022,\u0020XSEAAAAA - SccLocalPath0 = ..\\..\\.. - SccProvider0 = MSSCCI:Microsoft\u0020Visual\u0020SourceSafe - SccProjectFilePathRelativizedFromConnection0 = Exe\\RefObj\\ROEditor\\ - SccProjectUniqueName1 = ROEditor.csproj - SccLocalPath1 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection1 = Exe\\RefObj\\ROEditor\\ - SccProjectUniqueName2 = ..\\..\\..\\LibSource\\ctlXMLEditLib\\ctlXMLEditLib.csproj - SccLocalPath2 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection2 = LibSource\\ctlXMLEditLib\\ - SccProjectUniqueName3 = ..\\..\\..\\LibSource\\DBEncapsulation\\DBEncapsulation.csproj - SccLocalPath3 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection3 = LibSource\\DBEncapsulation\\ - SccProjectUniqueName4 = ..\\..\\..\\LibSource\\Org.Mentalis.Files\\Org.Mentalis.Files.csproj - SccLocalPath4 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection4 = LibSource\\Org.Mentalis.Files\\ - SccProjectUniqueName5 = ..\\..\\..\\LibSource\\RODBInterface\\RODBInterface.csproj - SccLocalPath5 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection5 = LibSource\\RODBInterface\\ - SccProjectUniqueName6 = ..\\..\\..\\LibSource\\ROField\\ROFields.csproj - SccLocalPath6 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection6 = LibSource\\ROField\\ - SccProjectUniqueName7 = ..\\..\\..\\LibSource\\ROFST\\ROFST.csproj - SccLocalPath7 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection7 = LibSource\\ROFST\\ - SccProjectUniqueName8 = ..\\..\\..\\LibSource\\Utils\\Utils.csproj - SccLocalPath8 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection8 = LibSource\\Utils\\ - SccProjectUniqueName9 = ..\\..\\..\\LibSource\\VlnProfiler\\VlnProfiler.csproj - SccLocalPath9 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection9 = LibSource\\VlnProfiler\\ - SccProjectUniqueName10 = ..\\..\\..\\LibSource\\VlnStatus\\VlnStatus.csproj - SccLocalPath10 = ..\\..\\.. - SccProjectFilePathRelativizedFromConnection10 = LibSource\\VlnStatus\\ - EndGlobalSection GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Debug|Mixed Platforms = Debug|Mixed Platforms @@ -224,4 +187,26 @@ Global GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {4814B42F-2708-4185-8450-20347EB2FDF6} + EndGlobalSection + GlobalSection(SourceCodeControl) = preSolution + SccNumberOfProjects = 5 + SccProjectName0 = \u0022$/PROMS/ReferencedObjects/ROEditor\u0022,\u0020XSEAAAAA + SccLocalPath0 = ..\\..\\.. + SccProvider0 = MSSCCI:Microsoft\u0020Visual\u0020SourceSafe + SccProjectFilePathRelativizedFromConnection0 = Exe\\RefObj\\ROEditor\\ + SccProjectUniqueName1 = ..\\..\\..\\LibSource\\Org.Mentalis.Files\\Org.Mentalis.Files.csproj + SccLocalPath1 = ..\\..\\.. + SccProjectFilePathRelativizedFromConnection1 = LibSource\\Org.Mentalis.Files\\ + SccProjectUniqueName2 = ..\\..\\..\\LibSource\\ROFST\\ROFST.csproj + SccLocalPath2 = ..\\..\\.. + SccProjectFilePathRelativizedFromConnection2 = LibSource\\ROFST\\ + SccProjectUniqueName3 = ..\\..\\..\\LibSource\\Utils\\Utils.csproj + SccLocalPath3 = ..\\..\\.. + SccProjectFilePathRelativizedFromConnection3 = LibSource\\Utils\\ + SccProjectUniqueName4 = ..\\..\\..\\LibSource\\VlnProfiler\\VlnProfiler.csproj + SccLocalPath4 = ..\\..\\.. + SccProjectFilePathRelativizedFromConnection4 = LibSource\\VlnProfiler\\ + EndGlobalSection EndGlobal diff --git a/PROMS/ReferencedObjects/Exe/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln b/PROMS/ReferencedObjects/Exe/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln new file mode 100644 index 00000000..668302d8 --- /dev/null +++ b/PROMS/ReferencedObjects/Exe/ReferencedObjects/Exe/RefObj/ROEditor/ROEditor.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32901.82 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ROEditor", "ROEditor.csproj", "{3A4A3543-2D44-11D6-8452-00A0CC271352}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Debug|x86.ActiveCfg = Debug|x86 + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Debug|x86.Build.0 = Debug|x86 + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Release|Any CPU.Build.0 = Release|Any CPU + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Release|x86.ActiveCfg = Release|x86 + {3A4A3543-2D44-11D6-8452-00A0CC271352}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {7CEE041D-449C-4B54-B381-6845BD8E9B79} + EndGlobalSection +EndGlobal diff --git a/PROMS/ReferencedObjects/LibSource/RODBInterface/RODBInterface.sln b/PROMS/ReferencedObjects/LibSource/RODBInterface/RODBInterface.sln new file mode 100644 index 00000000..9f600430 --- /dev/null +++ b/PROMS/ReferencedObjects/LibSource/RODBInterface/RODBInterface.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32901.82 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RODBInterface", "RODBInterface.csproj", "{0C7825FD-AA05-11D6-84D1-00A0CC271352}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Debug|x86.ActiveCfg = Debug|x86 + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Debug|x86.Build.0 = Debug|x86 + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Release|Any CPU.Build.0 = Release|Any CPU + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Release|x86.ActiveCfg = Release|x86 + {0C7825FD-AA05-11D6-84D1-00A0CC271352}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {59F24713-865F-46BB-907B-46D78C3F7DA4} + EndGlobalSection +EndGlobal diff --git a/PROMS/RoAccessToSql/RoAccessToSql.sln b/PROMS/RoAccessToSql/RoAccessToSql.sln new file mode 100644 index 00000000..1abeef3b --- /dev/null +++ b/PROMS/RoAccessToSql/RoAccessToSql.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32901.82 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RoAccessToSql", "RoAccessToSql.csproj", "{1EC96BDA-01E7-4153-A95D-6A4A36FA278E}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {1EC96BDA-01E7-4153-A95D-6A4A36FA278E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1EC96BDA-01E7-4153-A95D-6A4A36FA278E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1EC96BDA-01E7-4153-A95D-6A4A36FA278E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1EC96BDA-01E7-4153-A95D-6A4A36FA278E}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {066122E2-5ED5-4DD3-B04E-C2350F0818B1} + EndGlobalSection +EndGlobal diff --git a/PROMS/VEPROMS User Interface/frmVersionsProperties.cs b/PROMS/VEPROMS User Interface/frmVersionsProperties.cs index b3e88c6f..599422b4 100644 --- a/PROMS/VEPROMS User Interface/frmVersionsProperties.cs +++ b/PROMS/VEPROMS User Interface/frmVersionsProperties.cs @@ -1389,6 +1389,11 @@ namespace VEPROMS exelocation = exelocation.Substring(0, exelocation.LastIndexOf("\\")) + @"\RoAccessToSql.exe"; int indx = tbRoDb.Text.IndexOf(" (") + 2; string accesspath = tbRoDb.Text.Substring(indx, tbRoDb.Text.Length - indx - 1); + if (accesspath.IndexOf(" ") > -1) // B2023-120 If there is a space in the path enclose path in double quotes. + { + accesspath = '"' + accesspath + '"'; + } + string sqldb = Database.ActiveDatabase; indx = Database.DBServer.IndexOf(" "); string server = Database.DBServer.Substring(0, indx); diff --git a/PROMS/Volian.Controls.Library/DisplayReports.cs b/PROMS/Volian.Controls.Library/DisplayReports.cs index 7bdf8f43..c0d9b015 100644 --- a/PROMS/Volian.Controls.Library/DisplayReports.cs +++ b/PROMS/Volian.Controls.Library/DisplayReports.cs @@ -442,7 +442,7 @@ namespace Volian.Controls.Library chld = ch.children; - rtnStr = _MyRODbID.ToString() + ":" + GetROChildren(rolkup).TrimEnd(','); + rtnStr = _MyRODbID.ToString() + ":" + GetROChildren(rolkup).TrimEnd(','); // GetROChildren(rolkup).TrimEnd(',') grabs the children of the selected item } ROList.Add(rtnStr); -- 2.47.2