Saxonite 1.2.11.5, BusinessMgr.

This commit is contained in:
Andy Howard
2024-06-13 14:30:50 +01:00
parent ba5801b4dc
commit 14102d5164
44 changed files with 645 additions and 411 deletions
@@ -14,8 +14,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData
{
//-------------------------------------------------------------------
// Data members.
//private static string messageBoxTitle = "Sarand ReferenceData Module database definition generator";
//private static String dbConnectionString = "Driver={SQL Server Native Client 11.0};Server=Sarand106\\SQL2014;Database=SaStockTracker_Solent_STN;Trusted_Connection=Yes;MARS_Connection=yes;";
private static string className = nameof(SaReferenceDataDbDfnGenerator);
//-------------------------------------------------------------------
/// <summary>
@@ -23,7 +22,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData
/// </summary>
public static bool Generate(String connectionString)
{
String fn = nameof(SaReferenceDataDbDfnGenerator) + ".Generate";
String fn = className + ".Generate";
// Locate output folder:
String directory = GetOutputFolder();
@@ -42,7 +41,7 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData
}
catch (Exception exc)
{
SaLogger.Error(fn + " " + ExceptionUtil.GetLogMessage(exc));
SaLogger.Error($"{fn} {ExceptionUtil.GetLogMessage(exc, "generating database definition")}");
}
return false;
}
@@ -84,31 +83,29 @@ namespace Sarand.Net.Standard.Dbas.ReferenceData
//-------------------------------------------------------------------
private static String GetOutputFolder()
{
String fn = nameof(SaReferenceDataDbDfnGenerator) + ".GetOutputFolder";
String fn = className + ".GetOutputFolder";
String assemblyDirectory = FileUtil.GetParentDirectory((Assembly.GetAssembly(typeof(DatabaseDefinitionGenerator)).Location));
String directory = assemblyDirectory;
SaLogger.Debug(fn + " Assembly folder: " + directory);
SaLogger.Debug($"{fn} Assembly folder: {directory}");
// Locate the parent of the 'Workspace' solution root folder.
String projectFolder = "Workspace";
while (!String.IsNullOrEmpty(directory))
{
if (FileUtil.IsDirectory(directory + Path.DirectorySeparatorChar + projectFolder))
{
if (FileUtil.IsDirectory(Path.Combine(directory, projectFolder)))
break;
}
directory = FileUtil.GetParentDirectory(directory);
}
if (String.IsNullOrEmpty(directory))
{
SaLogger.Error(fn + " Failed to find '" + projectFolder + "' solution root folder in assembly path:\n\t" + assemblyDirectory);
SaLogger.Error($"{fn} Failed to find '{projectFolder}' solution root folder in assembly path: {assemblyDirectory}");
return String.Empty;
}
// Code files are generated to '..\Dbas\Generated\ReferenceData\' folder.
directory += Path.DirectorySeparatorChar + "Database" + Path.DirectorySeparatorChar + "Generated" + Path.DirectorySeparatorChar + "ReferenceData";
SaLogger.Debug(fn + " Output folder: " + directory);
directory = Path.Combine(directory, "Database", "Generated", "ReferenceData");
SaLogger.Debug($"{fn} Output folder: {directory}");
if (!FileUtil.ValidateDirectory(directory, true))
{
SaLogger.Error(fn + " Output folder not found:\n\n" + directory);
SaLogger.Error($"{fn} Output folder not found: {directory}");
return String.Empty;
}
return directory;