1.2.11.10 Golf Courses
This commit is contained in:
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Core
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
@@ -23,6 +23,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public ColumnDataString _CountryCode { get; } = new ColumnDataString("CountryCode");
|
||||
public ColumnDataString _CountryName { get; } = new ColumnDataString("CountryName");
|
||||
public ColumnDataString _EntCountryCode { get; } = new ColumnDataString("EntCountryCode");
|
||||
public ColumnDataDateTimeNullable _ProvincesUpdateAt { get; } = new ColumnDataDateTimeNullable("ProvincesUpdateAt");
|
||||
public ColumnDataString _Notes { get; } = new ColumnDataString("Notes");
|
||||
public ColumnDataInt16 _Flags { get; } = new ColumnDataInt16("Flags");
|
||||
public ColumnDataString _Status { get; } = new ColumnDataString("Status");
|
||||
@@ -42,6 +43,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
"CountryCode",
|
||||
"CountryName",
|
||||
"EntCountryCode",
|
||||
"ProvincesUpdateAt",
|
||||
"Notes",
|
||||
"Flags",
|
||||
"Status",
|
||||
@@ -63,6 +65,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
protected static List<String> fieldsNullable { get; } = new List<String>()
|
||||
{
|
||||
"EntCountryCode",
|
||||
"ProvincesUpdateAt",
|
||||
};
|
||||
protected static List<String> fieldsIgnoreOnUpdate { get; } = new List<String>()
|
||||
{
|
||||
@@ -91,6 +94,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public String _CountryCode { get { return Cols._CountryCode.Value; } set { Cols._CountryCode.Value = value; } }
|
||||
public String _CountryName { get { return Cols._CountryName.Value; } set { Cols._CountryName.Value = value; } }
|
||||
public String _EntCountryCode { get { return Cols._EntCountryCode.Value; } set { Cols._EntCountryCode.Value = value; } }
|
||||
public DateTime? _ProvincesUpdateAt { get { return Cols._ProvincesUpdateAt.Value; } set { Cols._ProvincesUpdateAt.Value = value; } }
|
||||
public String _Notes { get { return Cols._Notes.Value; } set { Cols._Notes.Value = value; } }
|
||||
public Int16 _Flags { get { return Cols._Flags.Value; } set { Cols._Flags.Value = value; } }
|
||||
public String _Status { get { return Cols._Status.Value; } set { Cols._Status.Value = value; } }
|
||||
@@ -125,6 +129,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
_CountryCode = GetFieldString(dbDataReader, "CountryCode", _CountryCode);
|
||||
_CountryName = GetFieldString(dbDataReader, "CountryName", _CountryName);
|
||||
_EntCountryCode = GetFieldString(dbDataReader, "EntCountryCode", _EntCountryCode);
|
||||
_ProvincesUpdateAt = GetFieldDateTimeNullable(dbDataReader, "ProvincesUpdateAt", _ProvincesUpdateAt);
|
||||
_Notes = GetFieldString(dbDataReader, "Notes", _Notes);
|
||||
_Flags = GetFieldInt16(dbDataReader, "Flags", _Flags);
|
||||
_Status = GetFieldString(dbDataReader, "Status", _Status);
|
||||
@@ -158,6 +163,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
if (columnNames.ContainsCI("CountryCode")) AddCommandParameter(dbCommand, "@CountryCode", _CountryCode);
|
||||
if (columnNames.ContainsCI("CountryName")) AddCommandParameter(dbCommand, "@CountryName", _CountryName);
|
||||
if (columnNames.ContainsCI("EntCountryCode")) AddCommandParameter(dbCommand, "@EntCountryCode", _EntCountryCode);
|
||||
if (columnNames.ContainsCI("ProvincesUpdateAt")) AddCommandParameter(dbCommand, "@ProvincesUpdateAt", _ProvincesUpdateAt);
|
||||
if (columnNames.ContainsCI("Notes")) AddCommandParameter(dbCommand, "@Notes", _Notes);
|
||||
if (columnNames.ContainsCI("Flags")) AddCommandParameter(dbCommand, "@Flags", _Flags);
|
||||
if (columnNames.ContainsCI("Status")) AddCommandParameter(dbCommand, "@Status", _Status);
|
||||
@@ -206,6 +212,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
if (columnNames.ContainsCI("CountryCode")) AddCommandParameter(dbCommand, "@CountryCode", _CountryCode);
|
||||
if (columnNames.ContainsCI("CountryName")) AddCommandParameter(dbCommand, "@CountryName", _CountryName);
|
||||
if (columnNames.ContainsCI("EntCountryCode")) AddCommandParameter(dbCommand, "@EntCountryCode", _EntCountryCode);
|
||||
if (columnNames.ContainsCI("ProvincesUpdateAt")) AddCommandParameter(dbCommand, "@ProvincesUpdateAt", _ProvincesUpdateAt);
|
||||
if (columnNames.ContainsCI("Notes")) AddCommandParameter(dbCommand, "@Notes", _Notes);
|
||||
if (columnNames.ContainsCI("Flags")) AddCommandParameter(dbCommand, "@Flags", _Flags);
|
||||
if (columnNames.ContainsCI("Status")) AddCommandParameter(dbCommand, "@Status", _Status);
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
@@ -21,7 +21,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
public ColumnDataInt64 _Id { get; } = new ColumnDataInt64("Id", true);
|
||||
public ColumnDataInt64 _FacilityId { get; } = new ColumnDataInt64("FacilityId");
|
||||
public ColumnDataInt64 _CourseId { get; } = new ColumnDataInt64("CourseId");
|
||||
public ColumnDataInt64 _UsgaCourseId { get; } = new ColumnDataInt64("UsgaCourseId");
|
||||
public ColumnDataInt64 _LegacyCrpCourseId { get; } = new ColumnDataInt64("LegacyCrpCourseId");
|
||||
public ColumnDataString _Caption { get; } = new ColumnDataString("Caption");
|
||||
public ColumnDataString _CourseName { get; } = new ColumnDataString("CourseName");
|
||||
@@ -34,6 +34,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public ColumnDataDecimalNullable _Longitude { get; } = new ColumnDataDecimalNullable("Longitude");
|
||||
public ColumnDataString _Email { get; } = new ColumnDataString("Email");
|
||||
public ColumnDataString _Telephone { get; } = new ColumnDataString("Telephone");
|
||||
public ColumnDataDateTimeNullable _MarkersUpdateAt { get; } = new ColumnDataDateTimeNullable("MarkersUpdateAt");
|
||||
public ColumnDataString _MarkersData { get; } = new ColumnDataString("MarkersData");
|
||||
public ColumnDataString _Notes { get; } = new ColumnDataString("Notes");
|
||||
public ColumnDataInt16 _Flags { get; } = new ColumnDataInt16("Flags");
|
||||
@@ -52,7 +53,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
"Id",
|
||||
"FacilityId",
|
||||
"CourseId",
|
||||
"UsgaCourseId",
|
||||
"LegacyCrpCourseId",
|
||||
"Caption",
|
||||
"CourseName",
|
||||
@@ -65,6 +66,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
"Longitude",
|
||||
"Email",
|
||||
"Telephone",
|
||||
"MarkersUpdateAt",
|
||||
"MarkersData",
|
||||
"Notes",
|
||||
"Flags",
|
||||
@@ -88,6 +90,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
"Latitude",
|
||||
"Longitude",
|
||||
"MarkersUpdateAt",
|
||||
};
|
||||
protected static List<String> fieldsIgnoreOnUpdate { get; } = new List<String>()
|
||||
{
|
||||
@@ -114,7 +117,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public ColumnsData Cols { get; } = new ColumnsData();
|
||||
public Int64 _Id { get { return Cols._Id.Value; } set { Cols._Id.Value = value; } }
|
||||
public Int64 _FacilityId { get { return Cols._FacilityId.Value; } set { Cols._FacilityId.Value = value; } }
|
||||
public Int64 _CourseId { get { return Cols._CourseId.Value; } set { Cols._CourseId.Value = value; } }
|
||||
public Int64 _UsgaCourseId { get { return Cols._UsgaCourseId.Value; } set { Cols._UsgaCourseId.Value = value; } }
|
||||
public Int64 _LegacyCrpCourseId { get { return Cols._LegacyCrpCourseId.Value; } set { Cols._LegacyCrpCourseId.Value = value; } }
|
||||
public String _Caption { get { return Cols._Caption.Value; } set { Cols._Caption.Value = value; } }
|
||||
public String _CourseName { get { return Cols._CourseName.Value; } set { Cols._CourseName.Value = value; } }
|
||||
@@ -127,6 +130,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public Decimal? _Longitude { get { return Cols._Longitude.Value; } set { Cols._Longitude.Value = value; } }
|
||||
public String _Email { get { return Cols._Email.Value; } set { Cols._Email.Value = value; } }
|
||||
public String _Telephone { get { return Cols._Telephone.Value; } set { Cols._Telephone.Value = value; } }
|
||||
public DateTime? _MarkersUpdateAt { get { return Cols._MarkersUpdateAt.Value; } set { Cols._MarkersUpdateAt.Value = value; } }
|
||||
public String _MarkersData { get { return Cols._MarkersData.Value; } set { Cols._MarkersData.Value = value; } }
|
||||
public String _Notes { get { return Cols._Notes.Value; } set { Cols._Notes.Value = value; } }
|
||||
public Int16 _Flags { get { return Cols._Flags.Value; } set { Cols._Flags.Value = value; } }
|
||||
@@ -160,7 +164,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
_Id = GetFieldInt64(dbDataReader, "Id", _Id);
|
||||
_FacilityId = GetFieldInt64(dbDataReader, "FacilityId", _FacilityId);
|
||||
_CourseId = GetFieldInt64(dbDataReader, "CourseId", _CourseId);
|
||||
_UsgaCourseId = GetFieldInt64(dbDataReader, "UsgaCourseId", _UsgaCourseId);
|
||||
_LegacyCrpCourseId = GetFieldInt64(dbDataReader, "LegacyCrpCourseId", _LegacyCrpCourseId);
|
||||
_Caption = GetFieldString(dbDataReader, "Caption", _Caption);
|
||||
_CourseName = GetFieldString(dbDataReader, "CourseName", _CourseName);
|
||||
@@ -173,6 +177,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
_Longitude = GetFieldDecimalNullable(dbDataReader, "Longitude", _Longitude);
|
||||
_Email = GetFieldString(dbDataReader, "Email", _Email);
|
||||
_Telephone = GetFieldString(dbDataReader, "Telephone", _Telephone);
|
||||
_MarkersUpdateAt = GetFieldDateTimeNullable(dbDataReader, "MarkersUpdateAt", _MarkersUpdateAt);
|
||||
_MarkersData = GetFieldString(dbDataReader, "MarkersData", _MarkersData);
|
||||
_Notes = GetFieldString(dbDataReader, "Notes", _Notes);
|
||||
_Flags = GetFieldInt16(dbDataReader, "Flags", _Flags);
|
||||
@@ -205,7 +210,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
// Populate parameters.
|
||||
dbCommand.Parameters.Clear();
|
||||
if (columnNames.ContainsCI("FacilityId")) AddCommandParameter(dbCommand, "@FacilityId", _FacilityId);
|
||||
if (columnNames.ContainsCI("CourseId")) AddCommandParameter(dbCommand, "@CourseId", _CourseId);
|
||||
if (columnNames.ContainsCI("UsgaCourseId")) AddCommandParameter(dbCommand, "@UsgaCourseId", _UsgaCourseId);
|
||||
if (columnNames.ContainsCI("LegacyCrpCourseId")) AddCommandParameter(dbCommand, "@LegacyCrpCourseId", _LegacyCrpCourseId);
|
||||
if (columnNames.ContainsCI("Caption")) AddCommandParameter(dbCommand, "@Caption", _Caption);
|
||||
if (columnNames.ContainsCI("CourseName")) AddCommandParameter(dbCommand, "@CourseName", _CourseName);
|
||||
@@ -218,6 +223,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
if (columnNames.ContainsCI("Longitude")) AddCommandParameter(dbCommand, "@Longitude", _Longitude);
|
||||
if (columnNames.ContainsCI("Email")) AddCommandParameter(dbCommand, "@Email", _Email);
|
||||
if (columnNames.ContainsCI("Telephone")) AddCommandParameter(dbCommand, "@Telephone", _Telephone);
|
||||
if (columnNames.ContainsCI("MarkersUpdateAt")) AddCommandParameter(dbCommand, "@MarkersUpdateAt", _MarkersUpdateAt);
|
||||
if (columnNames.ContainsCI("MarkersData")) AddCommandParameter(dbCommand, "@MarkersData", _MarkersData);
|
||||
if (columnNames.ContainsCI("Notes")) AddCommandParameter(dbCommand, "@Notes", _Notes);
|
||||
if (columnNames.ContainsCI("Flags")) AddCommandParameter(dbCommand, "@Flags", _Flags);
|
||||
@@ -265,7 +271,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
// Populate parameters.
|
||||
dbCommand.Parameters.Clear();
|
||||
if (columnNames.ContainsCI("FacilityId")) AddCommandParameter(dbCommand, "@FacilityId", _FacilityId);
|
||||
if (columnNames.ContainsCI("CourseId")) AddCommandParameter(dbCommand, "@CourseId", _CourseId);
|
||||
if (columnNames.ContainsCI("UsgaCourseId")) AddCommandParameter(dbCommand, "@UsgaCourseId", _UsgaCourseId);
|
||||
if (columnNames.ContainsCI("LegacyCrpCourseId")) AddCommandParameter(dbCommand, "@LegacyCrpCourseId", _LegacyCrpCourseId);
|
||||
if (columnNames.ContainsCI("Caption")) AddCommandParameter(dbCommand, "@Caption", _Caption);
|
||||
if (columnNames.ContainsCI("CourseName")) AddCommandParameter(dbCommand, "@CourseName", _CourseName);
|
||||
@@ -278,6 +284,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
if (columnNames.ContainsCI("Longitude")) AddCommandParameter(dbCommand, "@Longitude", _Longitude);
|
||||
if (columnNames.ContainsCI("Email")) AddCommandParameter(dbCommand, "@Email", _Email);
|
||||
if (columnNames.ContainsCI("Telephone")) AddCommandParameter(dbCommand, "@Telephone", _Telephone);
|
||||
if (columnNames.ContainsCI("MarkersUpdateAt")) AddCommandParameter(dbCommand, "@MarkersUpdateAt", _MarkersUpdateAt);
|
||||
if (columnNames.ContainsCI("MarkersData")) AddCommandParameter(dbCommand, "@MarkersData", _MarkersData);
|
||||
if (columnNames.ContainsCI("Notes")) AddCommandParameter(dbCommand, "@Notes", _Notes);
|
||||
if (columnNames.ContainsCI("Flags")) AddCommandParameter(dbCommand, "@Flags", _Flags);
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
@@ -21,7 +21,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
public ColumnDataInt64 _Id { get; } = new ColumnDataInt64("Id", true);
|
||||
public ColumnDataInt64 _ProvinceId { get; } = new ColumnDataInt64("ProvinceId");
|
||||
public ColumnDataInt64 _FacilityId { get; } = new ColumnDataInt64("FacilityId");
|
||||
public ColumnDataInt64 _UsgaFacilityId { get; } = new ColumnDataInt64("UsgaFacilityId");
|
||||
public ColumnDataString _FacilityName { get; } = new ColumnDataString("FacilityName");
|
||||
public ColumnDataString _Address1 { get; } = new ColumnDataString("Address1");
|
||||
public ColumnDataString _Address2 { get; } = new ColumnDataString("Address2");
|
||||
@@ -48,7 +48,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
"Id",
|
||||
"ProvinceId",
|
||||
"FacilityId",
|
||||
"UsgaFacilityId",
|
||||
"FacilityName",
|
||||
"Address1",
|
||||
"Address2",
|
||||
@@ -106,7 +106,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public ColumnsData Cols { get; } = new ColumnsData();
|
||||
public Int64 _Id { get { return Cols._Id.Value; } set { Cols._Id.Value = value; } }
|
||||
public Int64 _ProvinceId { get { return Cols._ProvinceId.Value; } set { Cols._ProvinceId.Value = value; } }
|
||||
public Int64 _FacilityId { get { return Cols._FacilityId.Value; } set { Cols._FacilityId.Value = value; } }
|
||||
public Int64 _UsgaFacilityId { get { return Cols._UsgaFacilityId.Value; } set { Cols._UsgaFacilityId.Value = value; } }
|
||||
public String _FacilityName { get { return Cols._FacilityName.Value; } set { Cols._FacilityName.Value = value; } }
|
||||
public String _Address1 { get { return Cols._Address1.Value; } set { Cols._Address1.Value = value; } }
|
||||
public String _Address2 { get { return Cols._Address2.Value; } set { Cols._Address2.Value = value; } }
|
||||
@@ -148,7 +148,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
_Id = GetFieldInt64(dbDataReader, "Id", _Id);
|
||||
_ProvinceId = GetFieldInt64(dbDataReader, "ProvinceId", _ProvinceId);
|
||||
_FacilityId = GetFieldInt64(dbDataReader, "FacilityId", _FacilityId);
|
||||
_UsgaFacilityId = GetFieldInt64(dbDataReader, "UsgaFacilityId", _UsgaFacilityId);
|
||||
_FacilityName = GetFieldString(dbDataReader, "FacilityName", _FacilityName);
|
||||
_Address1 = GetFieldString(dbDataReader, "Address1", _Address1);
|
||||
_Address2 = GetFieldString(dbDataReader, "Address2", _Address2);
|
||||
@@ -189,7 +189,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
// Populate parameters.
|
||||
dbCommand.Parameters.Clear();
|
||||
if (columnNames.ContainsCI("ProvinceId")) AddCommandParameter(dbCommand, "@ProvinceId", _ProvinceId);
|
||||
if (columnNames.ContainsCI("FacilityId")) AddCommandParameter(dbCommand, "@FacilityId", _FacilityId);
|
||||
if (columnNames.ContainsCI("UsgaFacilityId")) AddCommandParameter(dbCommand, "@UsgaFacilityId", _UsgaFacilityId);
|
||||
if (columnNames.ContainsCI("FacilityName")) AddCommandParameter(dbCommand, "@FacilityName", _FacilityName);
|
||||
if (columnNames.ContainsCI("Address1")) AddCommandParameter(dbCommand, "@Address1", _Address1);
|
||||
if (columnNames.ContainsCI("Address2")) AddCommandParameter(dbCommand, "@Address2", _Address2);
|
||||
@@ -245,7 +245,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
// Populate parameters.
|
||||
dbCommand.Parameters.Clear();
|
||||
if (columnNames.ContainsCI("ProvinceId")) AddCommandParameter(dbCommand, "@ProvinceId", _ProvinceId);
|
||||
if (columnNames.ContainsCI("FacilityId")) AddCommandParameter(dbCommand, "@FacilityId", _FacilityId);
|
||||
if (columnNames.ContainsCI("UsgaFacilityId")) AddCommandParameter(dbCommand, "@UsgaFacilityId", _UsgaFacilityId);
|
||||
if (columnNames.ContainsCI("FacilityName")) AddCommandParameter(dbCommand, "@FacilityName", _FacilityName);
|
||||
if (columnNames.ContainsCI("Address1")) AddCommandParameter(dbCommand, "@Address1", _Address1);
|
||||
if (columnNames.ContainsCI("Address2")) AddCommandParameter(dbCommand, "@Address2", _Address2);
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
@@ -21,7 +21,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
public ColumnDataInt64 _Id { get; } = new ColumnDataInt64("Id", true);
|
||||
public ColumnDataInt64 _CourseId { get; } = new ColumnDataInt64("CourseId");
|
||||
public ColumnDataInt64 _MarkerId { get; } = new ColumnDataInt64("MarkerId");
|
||||
public ColumnDataInt64 _UsgaMarkerId { get; } = new ColumnDataInt64("UsgaMarkerId");
|
||||
public ColumnDataString _Caption { get; } = new ColumnDataString("Caption");
|
||||
public ColumnDataInt16 _Holes { get; } = new ColumnDataInt16("Holes");
|
||||
public ColumnDataString _HolesCaption { get; } = new ColumnDataString("HolesCaption");
|
||||
@@ -49,7 +49,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
"Id",
|
||||
"CourseId",
|
||||
"MarkerId",
|
||||
"UsgaMarkerId",
|
||||
"Caption",
|
||||
"Holes",
|
||||
"HolesCaption",
|
||||
@@ -106,7 +106,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public ColumnsData Cols { get; } = new ColumnsData();
|
||||
public Int64 _Id { get { return Cols._Id.Value; } set { Cols._Id.Value = value; } }
|
||||
public Int64 _CourseId { get { return Cols._CourseId.Value; } set { Cols._CourseId.Value = value; } }
|
||||
public Int64 _MarkerId { get { return Cols._MarkerId.Value; } set { Cols._MarkerId.Value = value; } }
|
||||
public Int64 _UsgaMarkerId { get { return Cols._UsgaMarkerId.Value; } set { Cols._UsgaMarkerId.Value = value; } }
|
||||
public String _Caption { get { return Cols._Caption.Value; } set { Cols._Caption.Value = value; } }
|
||||
public Int16 _Holes { get { return Cols._Holes.Value; } set { Cols._Holes.Value = value; } }
|
||||
public String _HolesCaption { get { return Cols._HolesCaption.Value; } set { Cols._HolesCaption.Value = value; } }
|
||||
@@ -149,7 +149,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
_Id = GetFieldInt64(dbDataReader, "Id", _Id);
|
||||
_CourseId = GetFieldInt64(dbDataReader, "CourseId", _CourseId);
|
||||
_MarkerId = GetFieldInt64(dbDataReader, "MarkerId", _MarkerId);
|
||||
_UsgaMarkerId = GetFieldInt64(dbDataReader, "UsgaMarkerId", _UsgaMarkerId);
|
||||
_Caption = GetFieldString(dbDataReader, "Caption", _Caption);
|
||||
_Holes = GetFieldInt16(dbDataReader, "Holes", _Holes);
|
||||
_HolesCaption = GetFieldString(dbDataReader, "HolesCaption", _HolesCaption);
|
||||
@@ -191,7 +191,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
// Populate parameters.
|
||||
dbCommand.Parameters.Clear();
|
||||
if (columnNames.ContainsCI("CourseId")) AddCommandParameter(dbCommand, "@CourseId", _CourseId);
|
||||
if (columnNames.ContainsCI("MarkerId")) AddCommandParameter(dbCommand, "@MarkerId", _MarkerId);
|
||||
if (columnNames.ContainsCI("UsgaMarkerId")) AddCommandParameter(dbCommand, "@UsgaMarkerId", _UsgaMarkerId);
|
||||
if (columnNames.ContainsCI("Caption")) AddCommandParameter(dbCommand, "@Caption", _Caption);
|
||||
if (columnNames.ContainsCI("Holes")) AddCommandParameter(dbCommand, "@Holes", _Holes);
|
||||
if (columnNames.ContainsCI("HolesCaption")) AddCommandParameter(dbCommand, "@HolesCaption", _HolesCaption);
|
||||
@@ -248,7 +248,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
// Populate parameters.
|
||||
dbCommand.Parameters.Clear();
|
||||
if (columnNames.ContainsCI("CourseId")) AddCommandParameter(dbCommand, "@CourseId", _CourseId);
|
||||
if (columnNames.ContainsCI("MarkerId")) AddCommandParameter(dbCommand, "@MarkerId", _MarkerId);
|
||||
if (columnNames.ContainsCI("UsgaMarkerId")) AddCommandParameter(dbCommand, "@UsgaMarkerId", _UsgaMarkerId);
|
||||
if (columnNames.ContainsCI("Caption")) AddCommandParameter(dbCommand, "@Caption", _Caption);
|
||||
if (columnNames.ContainsCI("Holes")) AddCommandParameter(dbCommand, "@Holes", _Holes);
|
||||
if (columnNames.ContainsCI("HolesCaption")) AddCommandParameter(dbCommand, "@HolesCaption", _HolesCaption);
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:29
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
{
|
||||
@@ -24,6 +24,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public ColumnDataString _ProvinceCode { get; } = new ColumnDataString("ProvinceCode");
|
||||
public ColumnDataString _EntProvinceCode { get; } = new ColumnDataString("EntProvinceCode");
|
||||
public ColumnDataString _ProvinceName { get; } = new ColumnDataString("ProvinceName");
|
||||
public ColumnDataDateTimeNullable _CoursesUpdateAt { get; } = new ColumnDataDateTimeNullable("CoursesUpdateAt");
|
||||
public ColumnDataString _Notes { get; } = new ColumnDataString("Notes");
|
||||
public ColumnDataInt16 _Flags { get; } = new ColumnDataInt16("Flags");
|
||||
public ColumnDataString _Status { get; } = new ColumnDataString("Status");
|
||||
@@ -44,6 +45,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
"ProvinceCode",
|
||||
"EntProvinceCode",
|
||||
"ProvinceName",
|
||||
"CoursesUpdateAt",
|
||||
"Notes",
|
||||
"Flags",
|
||||
"Status",
|
||||
@@ -64,6 +66,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
};
|
||||
protected static List<String> fieldsNullable { get; } = new List<String>()
|
||||
{
|
||||
"CoursesUpdateAt",
|
||||
};
|
||||
protected static List<String> fieldsIgnoreOnUpdate { get; } = new List<String>()
|
||||
{
|
||||
@@ -93,6 +96,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
public String _ProvinceCode { get { return Cols._ProvinceCode.Value; } set { Cols._ProvinceCode.Value = value; } }
|
||||
public String _EntProvinceCode { get { return Cols._EntProvinceCode.Value; } set { Cols._EntProvinceCode.Value = value; } }
|
||||
public String _ProvinceName { get { return Cols._ProvinceName.Value; } set { Cols._ProvinceName.Value = value; } }
|
||||
public DateTime? _CoursesUpdateAt { get { return Cols._CoursesUpdateAt.Value; } set { Cols._CoursesUpdateAt.Value = value; } }
|
||||
public String _Notes { get { return Cols._Notes.Value; } set { Cols._Notes.Value = value; } }
|
||||
public Int16 _Flags { get { return Cols._Flags.Value; } set { Cols._Flags.Value = value; } }
|
||||
public String _Status { get { return Cols._Status.Value; } set { Cols._Status.Value = value; } }
|
||||
@@ -128,6 +132,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
_ProvinceCode = GetFieldString(dbDataReader, "ProvinceCode", _ProvinceCode);
|
||||
_EntProvinceCode = GetFieldString(dbDataReader, "EntProvinceCode", _EntProvinceCode);
|
||||
_ProvinceName = GetFieldString(dbDataReader, "ProvinceName", _ProvinceName);
|
||||
_CoursesUpdateAt = GetFieldDateTimeNullable(dbDataReader, "CoursesUpdateAt", _CoursesUpdateAt);
|
||||
_Notes = GetFieldString(dbDataReader, "Notes", _Notes);
|
||||
_Flags = GetFieldInt16(dbDataReader, "Flags", _Flags);
|
||||
_Status = GetFieldString(dbDataReader, "Status", _Status);
|
||||
@@ -162,6 +167,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
if (columnNames.ContainsCI("ProvinceCode")) AddCommandParameter(dbCommand, "@ProvinceCode", _ProvinceCode);
|
||||
if (columnNames.ContainsCI("EntProvinceCode")) AddCommandParameter(dbCommand, "@EntProvinceCode", _EntProvinceCode);
|
||||
if (columnNames.ContainsCI("ProvinceName")) AddCommandParameter(dbCommand, "@ProvinceName", _ProvinceName);
|
||||
if (columnNames.ContainsCI("CoursesUpdateAt")) AddCommandParameter(dbCommand, "@CoursesUpdateAt", _CoursesUpdateAt);
|
||||
if (columnNames.ContainsCI("Notes")) AddCommandParameter(dbCommand, "@Notes", _Notes);
|
||||
if (columnNames.ContainsCI("Flags")) AddCommandParameter(dbCommand, "@Flags", _Flags);
|
||||
if (columnNames.ContainsCI("Status")) AddCommandParameter(dbCommand, "@Status", _Status);
|
||||
@@ -211,6 +217,7 @@ namespace Saxonite.Net.Standard.Dbas.Internal.Reference
|
||||
if (columnNames.ContainsCI("ProvinceCode")) AddCommandParameter(dbCommand, "@ProvinceCode", _ProvinceCode);
|
||||
if (columnNames.ContainsCI("EntProvinceCode")) AddCommandParameter(dbCommand, "@EntProvinceCode", _EntProvinceCode);
|
||||
if (columnNames.ContainsCI("ProvinceName")) AddCommandParameter(dbCommand, "@ProvinceName", _ProvinceName);
|
||||
if (columnNames.ContainsCI("CoursesUpdateAt")) AddCommandParameter(dbCommand, "@CoursesUpdateAt", _CoursesUpdateAt);
|
||||
if (columnNames.ContainsCI("Notes")) AddCommandParameter(dbCommand, "@Notes", _Notes);
|
||||
if (columnNames.ContainsCI("Flags")) AddCommandParameter(dbCommand, "@Flags", _Flags);
|
||||
if (columnNames.ContainsCI("Status")) AddCommandParameter(dbCommand, "@Status", _Status);
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:30
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Support
|
||||
{
|
||||
|
||||
@@ -9,7 +9,7 @@ using System.Data.Common;
|
||||
using System.Linq;
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// Code generated by Sarand Database Utilities Thu 13-Jun-2024 12:44:40
|
||||
// Code generated by Sarand Database Utilities Tue 18-Jun-2024 10:19:30
|
||||
//---------------------------------------------------------------------------
|
||||
namespace Saxonite.Net.Standard.Dbas.Internal.Support
|
||||
{
|
||||
|
||||
@@ -215,6 +215,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
dbUsgaCountry._CountryCode = usgaCountry.CountryCode;
|
||||
dbUsgaCountry._EntCountryCode = usgaCountry.EntCountryCode;
|
||||
dbUsgaCountry._CountryName = usgaCountry.CountryName;
|
||||
dbUsgaCountry._ProvincesUpdateAt = usgaCountry.ProvincesUpdateAt;
|
||||
// Common.
|
||||
dbUsgaCountry._Notes = usgaCountry.Notes;
|
||||
dbUsgaCountry._Status = SacsSystem.GetStatusCode(usgaCountry.Status);
|
||||
@@ -235,6 +236,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
usgaCountry.CountryCode = dbUsgaCountry._CountryCode;
|
||||
usgaCountry.EntCountryCode = dbUsgaCountry._EntCountryCode;
|
||||
usgaCountry.CountryName = dbUsgaCountry._CountryName;
|
||||
usgaCountry.ProvincesUpdateAt = dbUsgaCountry._ProvincesUpdateAt;
|
||||
// Common.
|
||||
usgaCountry.Notes = dbUsgaCountry._Notes;
|
||||
usgaCountry.Status = SacsSystem.GetStatusForCode(dbUsgaCountry._Status);
|
||||
@@ -272,7 +274,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
List<String> query = new List<string>();
|
||||
query.Add($"Declare @statusActive VarChar(3) = '{SacsSystem.GetStatusCode(SaxGolfUsgaCountry.DefaultStatus)}';");
|
||||
query.Add($"Declare @updateOn DateTime = GetUtcDate();");
|
||||
query.Add($"Declare @updateOn DateTime = GetDate();");
|
||||
query.Add($"Declare @updateBy Int = {SysId.ToLong(dbUpdateInfo.UserId)};");
|
||||
query.Add($"Declare @updateHost VarChar(100) = '{DbQuery.FormatForCondition(dbUpdateInfo.Host)}';");
|
||||
query.Add("Merge");
|
||||
@@ -284,7 +286,9 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Add($"Union Select '{DbQuery.FormatForCondition(country.CountryCode)}', " + (country.EntCountryCode != null ? $"'{DbQuery.FormatForCondition(country.EntCountryCode)}'" : "Null") + ", " + (country.CountryName != null ? $"'{DbQuery.FormatForCondition(country.CountryName)}'" : "Null"));
|
||||
query.Add(") dCty");
|
||||
query.Add("On uCty.CountryCode=dCty.CountryCode");
|
||||
query.Add("When Matched And ((dCty.EntCountryCode Is Not Null And uCty.EntCountryCode!=dCty.EntCountryCode) Or (dCty.CountryName Is Not Null And uCty.CountryName!=dCty.CountryName) Or uCty.Status!=@statusActive)");
|
||||
// Always update countries so that they are time stamped.
|
||||
// Was: query.Add("When Matched And ((dCty.EntCountryCode Is Not Null And uCty.EntCountryCode!=dCty.EntCountryCode) Or (dCty.CountryName Is Not Null And uCty.CountryName!=dCty.CountryName) Or uCty.Status!=@statusActive)");
|
||||
query.Add("When Matched");
|
||||
query.Add("Then Update Set");
|
||||
query.Add(" EntCountryCode=Coalesce(dCty.EntCountryCode,uCty.EntCountryCode),");
|
||||
query.Add(" CountryName=Coalesce(dCty.CountryName,uCty.CountryName),");
|
||||
@@ -321,6 +325,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
private static readonly String colCountry_Province_Active_Count = "Cty_Prv_Act_Count";
|
||||
private static readonly String colCountry_Facility_Count = "Cty_Fty_Count";
|
||||
private static readonly String colCountry_Facility_Active_Count = "Cty_Fty_Act_Count";
|
||||
private static readonly String colCountry_Courses_Percent = "Cty_Crs_Perc";
|
||||
private void SetUsgaCountryColDfn
|
||||
(ColumnDfn col, String caption, int width, SaxDbDfn_Reference.ColumnIdx dbCol,
|
||||
ColumnAlignment align = ColumnAlignment.Default, DataValue.DataType dataType = DataValue.DataType.String,
|
||||
@@ -358,6 +363,10 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
SetUsgaCountryColDfn(columnDfn, "Name", 120, SaxDbDfn_Reference.ColumnIdx.UsgaCountry_CountryName, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCountry.Column.ProvincesUpdateAt_Date:
|
||||
SetUsgaCountryColDfn(columnDfn, "Provinces updated", 120, SaxDbDfn_Reference.ColumnIdx.UsgaCountry_ProvincesUpdateAt, ColumnAlignment.Center, DataValue.DataType.Date);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
|
||||
//-----------------------------------------------------------
|
||||
// Derived properties.
|
||||
@@ -378,6 +387,11 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
columnDfn.DataName = colCountry_Facility_Active_Count;
|
||||
break;
|
||||
|
||||
case SaxGolfUsgaCountry.Column.FacilityPercent:
|
||||
SetUsgaCountryColDfn(columnDfn, "Courses %", 60, SaxDbDfn_Reference.ColumnIdx.Unknown, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.DataName = colCountry_Courses_Percent;
|
||||
break;
|
||||
|
||||
//-----------------------------------------------------------
|
||||
// Common properties.
|
||||
case SaxGolfUsgaCountry.Column.Notes:
|
||||
@@ -589,6 +603,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_CountryCode, aliasUsgaCountry));
|
||||
if (columns.HasId(SaxGolfUsgaCountry.Column.CountryName))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_CountryName, aliasUsgaCountry));
|
||||
if (columns.HasId(SaxGolfUsgaCountry.Column.ProvincesUpdateAt_Date))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_ProvincesUpdateAt, aliasUsgaCountry));
|
||||
// Common properties.
|
||||
if (columns.HasId(SaxGolfUsgaCountry.Column.Notes))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_Notes, aliasUsgaCountry));
|
||||
@@ -651,18 +667,45 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
DbQuery queryProvince = new DbQuery(CoreDatabase.DbmsType);
|
||||
queryProvince.Tables.Add(SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaProvince), aliasProvince);
|
||||
queryProvince.Columns.Add("Count(*)");
|
||||
queryProvince.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_CountryId, aliasProvince) + "=" + SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_Id, aliasUsgaCountry));
|
||||
queryProvince.Filters.Add($"{SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_CountryId, aliasProvince)}={SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_Id, aliasUsgaCountry)}");
|
||||
queryProvince.Filters.Add($"{SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_Status, aliasProvince)}='{SacsSystem.GetStatusCode(SaStatus.Active)}'");
|
||||
// Join to Facility.
|
||||
String aliasFacility = "aCtyFty_Count_Fty";
|
||||
DbQueryJoin joinFacility = new DbQueryJoin(DbJoinType.Inner);
|
||||
joinFacility.Table = new StringPair(SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaFacility), aliasFacility);
|
||||
joinFacility.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_ProvinceId, aliasFacility) + "=" + SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_Id, aliasProvince));
|
||||
joinFacility.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_Status, aliasFacility) + "='" + SacsSystem.GetStatusCode(SaStatus.Active) + "'");
|
||||
joinFacility.Filters.Add($"{SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_ProvinceId, aliasFacility)}={SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_Id, aliasProvince)}");
|
||||
joinFacility.Filters.Add($"{SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_Status, aliasFacility)}='{SacsSystem.GetStatusCode(SaStatus.Active)}'");
|
||||
queryProvince.Joins.Add(joinFacility);
|
||||
// Construct sub-query.
|
||||
query.Columns.Add("(" + queryProvince.BuildQuery() + ")", colCountry_Facility_Active_Count);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// Facility population %.
|
||||
if (columns.HasId(SaxGolfUsgaCountry.Column.FacilityPercent))
|
||||
{
|
||||
// Sub query to count provinces & provinces with facilities, and work out the percent with facilities.
|
||||
String alias_Province = "prv";
|
||||
String alias_Facility = "fty";
|
||||
String table_Province = $"{SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaProvince)} {alias_Province}";
|
||||
String table_Facility = $"{SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaFacility)} {alias_Facility}";
|
||||
String col_Country_Id = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCountry_Id, aliasUsgaCountry);
|
||||
String col_Province_Id = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_Id, alias_Province);
|
||||
String col_Province_CountryId = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_CountryId, alias_Province);
|
||||
String col_Facility_ProvinceId = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_ProvinceId, alias_Facility);
|
||||
String name_ProvinceCount = "ProvinceCount";
|
||||
String name_ProvincesWithFacilities= "ProvincesWithFacilities";
|
||||
List<String> subQuery = new List<String>();
|
||||
subQuery.Add($"Select Convert (decimal(9,2), Case When {name_ProvinceCount} > 0 Then 100.0 * (1.0 * {name_ProvincesWithFacilities} / {name_ProvinceCount}) Else 0 End)");
|
||||
subQuery.Add($"From");
|
||||
subQuery.Add($"(");
|
||||
subQuery.Add($"Select");
|
||||
subQuery.Add($"{name_ProvinceCount} = (select Count(*) From {table_Province} Where {col_Province_CountryId}={col_Country_Id}),");
|
||||
subQuery.Add($"{name_ProvincesWithFacilities} = (select Count(*) From {table_Province} Where {col_Province_CountryId}={col_Country_Id} and {col_Province_Id} in (Select {col_Facility_ProvinceId} from {table_Facility}))");
|
||||
subQuery.Add($") dat");
|
||||
query.Columns.Add($"({subQuery.Concat(" ")})", colCountry_Courses_Percent);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// Populate filter.
|
||||
query.Filters.AddRange(GetUsgaCountryQueryFilter(prm));
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
new StringPair("Id",SysId.ToString(usgaCourse.Id)),
|
||||
new StringPair("FacilityId",SysId.ToString(usgaCourse.FacilityId)),
|
||||
new StringPair("CourseId",SysId.ToString(usgaCourse.CourseId)),
|
||||
new StringPair("UsgaCourseId",SysId.ToString(usgaCourse.UsgaCourseId)),
|
||||
new StringPair("Caption ",usgaCourse.Caption),
|
||||
new StringPair("Status",usgaCourse.StatusCode)
|
||||
};
|
||||
@@ -215,7 +215,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
dbUsgaCourse._Id = SysId.ToLong(usgaCourse.Id);
|
||||
dbUsgaCourse._FacilityId = SysId.ToInt(usgaCourse.FacilityId);
|
||||
dbUsgaCourse._CourseId = SysId.ToInt(usgaCourse.CourseId);
|
||||
dbUsgaCourse._UsgaCourseId = SysId.ToInt(usgaCourse.UsgaCourseId);
|
||||
dbUsgaCourse._LegacyCrpCourseId = SysId.ToInt(usgaCourse.LegacyCrpCourseId);
|
||||
dbUsgaCourse._Caption = usgaCourse.Caption;
|
||||
dbUsgaCourse._CourseName = usgaCourse.CourseName;
|
||||
@@ -228,6 +228,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
dbUsgaCourse._Longitude = usgaCourse.Longitude;
|
||||
dbUsgaCourse._Email = usgaCourse.Email;
|
||||
dbUsgaCourse._Telephone = usgaCourse.Telephone;
|
||||
dbUsgaCourse._MarkersUpdateAt = usgaCourse.MarkersUpdateAt;
|
||||
dbUsgaCourse._MarkersData = usgaCourse.MarkersData;
|
||||
// Common.
|
||||
dbUsgaCourse._Notes = usgaCourse.Notes;
|
||||
@@ -247,7 +248,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
//usgaCourse.Id = new SysId(dbUsgaCourse._Id);
|
||||
usgaCourse.FacilityId = new SysId(dbUsgaCourse._FacilityId);
|
||||
usgaCourse.CourseId = new SysId(dbUsgaCourse._CourseId);
|
||||
usgaCourse.UsgaCourseId = new SysId(dbUsgaCourse._UsgaCourseId);
|
||||
usgaCourse.LegacyCrpCourseId = new SysId(dbUsgaCourse._LegacyCrpCourseId);
|
||||
usgaCourse.Caption = dbUsgaCourse._Caption;
|
||||
usgaCourse.CourseName = dbUsgaCourse._CourseName;
|
||||
@@ -260,6 +261,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
usgaCourse.Longitude = dbUsgaCourse._Longitude;
|
||||
usgaCourse.Email = dbUsgaCourse._Email;
|
||||
usgaCourse.Telephone = dbUsgaCourse._Telephone;
|
||||
usgaCourse.MarkersUpdateAt = dbUsgaCourse._MarkersUpdateAt;
|
||||
usgaCourse.MarkersData = dbUsgaCourse._MarkersData;
|
||||
// Common.
|
||||
usgaCourse.Notes = dbUsgaCourse._Notes;
|
||||
@@ -288,8 +290,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
// Validate course properties.
|
||||
// Facility and Course Codes are mandatory, other values only validated if non-null.
|
||||
if (!SysId.IsValid(course.FacilityId)) return SetErrorState("Facility Id must be supplied");
|
||||
if (!SysId.IsValid(course.CourseId)) return SetErrorState("Course Id must be supplied");
|
||||
if (!SysId.IsValid(course.UsgaFacilityId)) return SetErrorState("Facility Id must be supplied");
|
||||
if (!SysId.IsValid(course.UsgaCourseId)) return SetErrorState("USGA Course Id must be supplied");
|
||||
if (course.Caption != null && !IsValidValue(course.Caption, "caption", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Caption), true)) return false;
|
||||
if (course.CourseName != null && !IsValidValue(course.CourseName, "name", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CourseName))) return false;
|
||||
if (course.FullName != null && !IsValidValue(course.FullName, "full name", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_FullName))) return false;
|
||||
@@ -306,19 +308,19 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
List<String> query = new List<string>();
|
||||
query.Add($"Declare @statusActive VarChar(3) = '{SacsSystem.GetStatusCode(SaxGolfUsgaCourse.DefaultStatus)}';");
|
||||
query.Add($"Declare @updateOn DateTime = GetUtcDate();");
|
||||
query.Add($"Declare @updateOn DateTime = GetDate();");
|
||||
query.Add($"Declare @updateBy Int = {SysId.ToLong(dbUpdateInfo.UserId)};");
|
||||
query.Add($"Declare @updateHost VarChar(100) = '{DbQuery.FormatForCondition(dbUpdateInfo.Host)}';");
|
||||
query.Add("Merge");
|
||||
query.Add($"Into {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaCourse)} uCrs");
|
||||
query.Add("Using");
|
||||
query.Add("(");
|
||||
query.Add("Select dFty.Id FacilityId, dCrs.CourseId, dCrs.LegacyCrpCourseId, dCrs.Caption, dCrs.CourseName, dCrs.FullName, dCrs.Address1, dCrs.Address2, dCrs.City, dCrs.PostalCode, dCrs.Email, dCrs.Telephone");
|
||||
query.Add("Select dFty.Id FacilityId, dCrs.UsgaFacilityId, dCrs.UsgaCourseId, dCrs.LegacyCrpCourseId, dCrs.Caption, dCrs.CourseName, dCrs.FullName, dCrs.Address1, dCrs.Address2, dCrs.City, dCrs.PostalCode, dCrs.Email, dCrs.Telephone");
|
||||
query.Add("From");
|
||||
query.Add("(");
|
||||
query.Add("Select 0 FacilityId, 0 CourseId, 0 LegacyCrpCourseId, '' Caption, '' CourseName, '' FullName, '' Address1, '' Address2, '' City, '' PostalCode, '' Email, '' Telephone");
|
||||
query.Add("Select 0 UsgaFacilityId, 0 UsgaCourseId, 0 LegacyCrpCourseId, '' Caption, '' CourseName, '' FullName, '' Address1, '' Address2, '' City, '' PostalCode, '' Email, '' Telephone");
|
||||
foreach (UsgaCourseData course in coursesToUpdate.ExtractRange(0, batchSize))
|
||||
query.Add($"Union Select {course.FacilityId}, {course.CourseId}, " +
|
||||
query.Add($"Union Select {course.UsgaFacilityId}, {course.UsgaCourseId}, " +
|
||||
(SysId.IsValid(course.LegacyCrpCourseId) ? $"{course.LegacyCrpCourseId}" : "Null") + "," +
|
||||
(course.Caption != null ? $"'{DbQuery.FormatForCondition(course.Caption)}'" : "Null") + "," +
|
||||
(course.CourseName != null ? $"'{DbQuery.FormatForCondition(course.CourseName)}'" : "Null") + "," +
|
||||
@@ -330,9 +332,9 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
(course.Email != null ? $"'{DbQuery.FormatForCondition(course.Email)}'" : "Null") + "," +
|
||||
(course.Telephone != null ? $"'{DbQuery.FormatForCondition(course.Telephone)}'" : "Null"));
|
||||
query.Add(") dCrs");
|
||||
query.Add($"Inner Join {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaFacility)} dFty On dFty.FacilityId=dCrs.FacilityId");
|
||||
query.Add($"Inner Join {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaFacility)} dFty On dFty.UsgaFacilityId=dCrs.UsgaFacilityId");
|
||||
query.Add(") dCrs");
|
||||
query.Add("On uCrs.FacilityId=dCrs.FacilityId And uCrs.CourseId=dCrs.CourseId");
|
||||
query.Add("On uCrs.FacilityId=dCrs.FacilityId And uCrs.UsgaCourseId=dCrs.UsgaCourseId");
|
||||
query.Add("When Matched And ((dCrs.LegacyCrpCourseId Is Not Null And uCrs.LegacyCrpCourseId!=dCrs.LegacyCrpCourseId) Or (dCrs.Caption Is Not Null And uCrs.Caption!=dCrs.Caption) Or (dCrs.CourseName Is Not Null And uCrs.CourseName!=dCrs.CourseName) Or (dCrs.FullName Is Not Null And uCrs.FullName!=dCrs.FullName) Or (dCrs.Address1 Is Not Null And uCrs.Address1!=dCrs.Address1) Or (dCrs.Address2 Is Not Null And uCrs.Address2!=dCrs.Address2) Or (dCrs.City Is Not Null And uCrs.City!=dCrs.City) Or (dCrs.PostalCode Is Not Null And uCrs.PostalCode!=dCrs.PostalCode) Or (dCrs.Email Is Not Null And uCrs.Email!=dCrs.Email) Or (dCrs.Telephone Is Not Null And uCrs.Telephone!=dCrs.Telephone) Or uCrs.Status!=@statusActive)");
|
||||
query.Add("Then Update Set");
|
||||
query.Add(" LegacyCrpCourseId=Coalesce(dCrs.LegacyCrpCourseId,uCrs.LegacyCrpCourseId),");
|
||||
@@ -350,8 +352,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Add(" UpdateBy=@updateBy,");
|
||||
query.Add(" UpdateHost=@updateHost");
|
||||
query.Add("When Not Matched And Len(Coalesce(dCrs.Caption,''))>0");
|
||||
query.Add("Then Insert (FacilityId,CourseId,LegacyCrpCourseId,Caption,CourseName,FullName,Address1,Address2,City,PostalCode,Email,Telephone,MarkersData,Notes,Flags,Status,CreateOn,CreateBy,CreateHost,UpdateOn,UpdateBy,UpdateHost)");
|
||||
query.Add($"Values (dCrs.FacilityId,dCrs.CourseId,Coalesce(dCrs.LegacyCrpCourseId,0),dCrs.Caption,Coalesce(dCrs.CourseName,''),Coalesce(dCrs.FullName,''),Coalesce(dCrs.Address1,''),Coalesce(dCrs.Address2,''),Coalesce(dCrs.City,''),Coalesce(dCrs.PostalCode,''),Coalesce(dCrs.Email,''),Coalesce(dCrs.Telephone,''),'','',0,@statusActive,@updateOn,@updateBy,@updateHost,@updateOn,@updateBy,@updateHost)");
|
||||
query.Add("Then Insert (FacilityId,UsgaCourseId,LegacyCrpCourseId,Caption,CourseName,FullName,Address1,Address2,City,PostalCode,Email,Telephone,MarkersData,Notes,Flags,Status,CreateOn,CreateBy,CreateHost,UpdateOn,UpdateBy,UpdateHost)");
|
||||
query.Add($"Values (dCrs.FacilityId,dCrs.UsgaCourseId,Coalesce(dCrs.LegacyCrpCourseId,0),dCrs.Caption,Coalesce(dCrs.CourseName,''),Coalesce(dCrs.FullName,''),Coalesce(dCrs.Address1,''),Coalesce(dCrs.Address2,''),Coalesce(dCrs.City,''),Coalesce(dCrs.PostalCode,''),Coalesce(dCrs.Email,''),Coalesce(dCrs.Telephone,''),'','',0,@statusActive,@updateOn,@updateBy,@updateHost,@updateOn,@updateBy,@updateHost)");
|
||||
query.Add(";");
|
||||
//SaLogger.Info($"{SysUtil.Fn} Bulk USGA Course update query:\n\t{query.Concat("\n\t")}");
|
||||
|
||||
@@ -374,6 +376,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
private static readonly String aliasUsgaCourse = "UsgCrs";
|
||||
private static readonly String aliasUsgaCourse_Facility = "UsgCrs_Cty";
|
||||
private static readonly String prefixUsgaCourse_Facility = aliasUsgaCourse_Facility + "_";
|
||||
private static readonly String colCourse_Marker_Count = "Crs_Mkr_Count";
|
||||
private static readonly String colCourse_Marker_Active_Count = "Crs_Mkr_Act_Count";
|
||||
private void SetUsgaCourseColDfn
|
||||
(ColumnDfn col, String caption, int width, SaxDbDfn_Reference.ColumnIdx dbCol,
|
||||
ColumnAlignment align = ColumnAlignment.Default, DataValue.DataType dataType = DataValue.DataType.String,
|
||||
@@ -413,14 +417,18 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
break;
|
||||
|
||||
//-------------------------------------------------------
|
||||
case SaxGolfUsgaCourse.Column.CourseId:
|
||||
SetUsgaCourseColDfn(columnDfn, "Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CourseId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
case SaxGolfUsgaCourse.Column.UsgaCourseId:
|
||||
SetUsgaCourseColDfn(columnDfn, "Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_UsgaCourseId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.LegacyCrpCourseId:
|
||||
SetUsgaCourseColDfn(columnDfn, "CRP Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_LegacyCrpCourseId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.Caption:
|
||||
SetUsgaCourseColDfn(columnDfn, "Caption", 120, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Caption, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.CourseName:
|
||||
SetUsgaCourseColDfn(columnDfn, "Name", 120, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CourseName, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
@@ -449,9 +457,21 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
SetUsgaCourseColDfn(columnDfn, "Telephone", 120, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Telephone, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.MarkersUpdateOn_Date:
|
||||
SetUsgaCourseColDfn(columnDfn, "Markers updated", 120, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_MarkersUpdateAt, ColumnAlignment.Center, DataValue.DataType.Date);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
|
||||
//-----------------------------------------------------------
|
||||
// Derived properties.
|
||||
case SaxGolfUsgaCourse.Column.MarkerCount_All:
|
||||
SetUsgaProvinceColDfn(columnDfn, "Markers", 60, SaxDbDfn_Reference.ColumnIdx.Unknown, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.DataName = colCourse_Marker_Count;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.MarkerCount_Active:
|
||||
SetUsgaProvinceColDfn(columnDfn, "Markers (act)", 60, SaxDbDfn_Reference.ColumnIdx.Unknown, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.DataName = colCourse_Marker_Active_Count;
|
||||
break;
|
||||
|
||||
//-----------------------------------------------------------
|
||||
// Common properties.
|
||||
@@ -460,16 +480,20 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.Flags:
|
||||
SetUsgaCourseColDfn(columnDfn, "Flags", 60, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Flags, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.Status:
|
||||
SetUsgaCourseColDfn(columnDfn, "Status", 80, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Status, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.Status_Desc:
|
||||
SetUsgaCourseColDfn(columnDfn, "Status", 90, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Status, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.Status_Ind:
|
||||
SetUsgaCourseColDfn(columnDfn, "Status", 80, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Status, ColumnAlignment.Center, DataValue.DataType.TriState);
|
||||
columnDfn.TriStateFormat = ColumnTriStateFormat.Lights;
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaCourse.Column.CreateOn_Date:
|
||||
SetUsgaCourseColDfn(columnDfn, "Created", 80, SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CreateOn, ColumnAlignment.Center, DataValue.DataType.Date);
|
||||
@@ -517,9 +541,9 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
if (prm.FacilityIdsIncluded.HasValidIds())
|
||||
filter.Add($"{col_FacilityId} IN ({prm.FacilityIdsIncluded.Concat(",")})");
|
||||
|
||||
// Course Ids.
|
||||
if (prm.CourseIdsIncluded.HasValidIds())
|
||||
filter.Add($"{SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CourseId, aliasUsgaCourse)} IN ({prm.CourseIdsIncluded.Concat(",")})");
|
||||
// USGA Course Ids.
|
||||
if (prm.UsgaCourseIdsIncluded.HasValidIds())
|
||||
filter.Add($"{SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_UsgaCourseId, aliasUsgaCourse)} IN ({prm.UsgaCourseIdsIncluded.Concat(",")})");
|
||||
|
||||
if (!StringUtil.IsBlank(prm.CourseFilter))
|
||||
{
|
||||
@@ -557,9 +581,9 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
filter.Add(DbQuery.BuildBitMappedFilter(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Flags, aliasUsgaCourse), SaxGolfUsgaCourse.Flag_Priority, prm.PriorityFlagState == SacsHierarchyItem.Params.FlagState.True));
|
||||
|
||||
// Associated data.
|
||||
if (prm.HasMarkers!= SacsHierarchyItem.Params.BoolState.Either)
|
||||
if (prm.HasMarkers != SacsHierarchyItem.Params.BoolState.Either)
|
||||
{
|
||||
String existsPrefix = (prm.HasMarkers== SacsHierarchyItem.Params.BoolState.True ? "" : "Not ");
|
||||
String existsPrefix = (prm.HasMarkers == SacsHierarchyItem.Params.BoolState.True ? "" : "Not ");
|
||||
filter.Add($"{existsPrefix} Exists (Select 1 From {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaMarker)} Where {SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_CourseId)}={col_Id})");
|
||||
}
|
||||
|
||||
@@ -689,10 +713,12 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
bool hasFacilityCols = (columns.HasId(SaxGolfUsgaCourse.Column.Facility_Name));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.FacilityId) || hasFacilityCols)
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_FacilityId, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.CourseId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CourseId, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.UsgaCourseId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_UsgaCourseId, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.LegacyCrpCourseId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_LegacyCrpCourseId, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.Caption))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Caption, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.CourseName))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_CourseName, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.FullName))
|
||||
@@ -707,6 +733,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Email, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.Telephone))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Telephone, aliasUsgaCourse));
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.MarkersUpdateOn_Date))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_MarkersUpdateAt, aliasUsgaCourse));
|
||||
// Common properties.
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.Notes))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Notes, aliasUsgaCourse));
|
||||
@@ -728,12 +756,37 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
joinFacility.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_Id, aliasUsgaCourse_Facility) + "=" + SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_FacilityId, aliasUsgaCourse));
|
||||
query.Joins.Add(joinFacility);
|
||||
List<SaxDbDfn_Reference.ColumnIdx> cols = new List<SaxDbDfn_Reference.ColumnIdx>();
|
||||
cols.Add(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_UsgaFacilityId);
|
||||
cols.Add(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_FacilityName);
|
||||
foreach (var col in cols)
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(col, aliasUsgaCourse_Facility), prefixUsgaCourse_Facility + SaxDbDfn_Reference.GetColumnName(col, false));
|
||||
prm.Alias_Facility = aliasUsgaCourse_Facility;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// Marker count.
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.MarkerCount_All))
|
||||
{
|
||||
String aliasMarker = "aCrsMkr_Count";
|
||||
DbQuery queryMarker = new DbQuery(CoreDatabase.DbmsType);
|
||||
queryMarker.Tables.Add(SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaMarker), aliasMarker);
|
||||
queryMarker.Columns.Add("Count(*)");
|
||||
queryMarker.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_CourseId, aliasMarker) + "=" + SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Id, aliasUsgaCourse));
|
||||
query.Columns.Add("(" + queryMarker.BuildQuery() + ")", colCourse_Marker_Count);
|
||||
}
|
||||
|
||||
// Active Marker count.
|
||||
if (columns.HasId(SaxGolfUsgaCourse.Column.MarkerCount_Active))
|
||||
{
|
||||
String aliasMarker = "aCrsMkrAct_Count";
|
||||
DbQuery queryMarker = new DbQuery(CoreDatabase.DbmsType);
|
||||
queryMarker.Tables.Add(SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaMarker), aliasMarker);
|
||||
queryMarker.Columns.Add("Count(*)");
|
||||
queryMarker.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_CourseId, aliasMarker) + "=" + SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Id, aliasUsgaCourse));
|
||||
queryMarker.Filters.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_Status, aliasMarker) + "='" + SacsSystem.GetStatusCode(SaStatus.Active) + "'");
|
||||
query.Columns.Add("(" + queryMarker.BuildQuery() + ")", colCourse_Marker_Active_Count);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// Populate filter.
|
||||
query.Filters.AddRange(GetUsgaCourseQueryFilter(prm));
|
||||
|
||||
@@ -30,7 +30,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
new StringPair("Id",SysId.ToString(usgaFacility.Id)),
|
||||
new StringPair("ProvinceId",SysId.ToString(usgaFacility.ProvinceId)),
|
||||
new StringPair("FacilityId",SysId.ToString(usgaFacility.FacilityId)),
|
||||
new StringPair("UsgaFacilityId",SysId.ToString(usgaFacility.UsgaFacilityId)),
|
||||
new StringPair("FacilityName",usgaFacility.FacilityName),
|
||||
new StringPair("Status",usgaFacility.StatusCode)
|
||||
};
|
||||
@@ -214,7 +214,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
dbUsgaFacility._Id = SysId.ToLong(usgaFacility.Id);
|
||||
dbUsgaFacility._ProvinceId = SysId.ToInt(usgaFacility.ProvinceId);
|
||||
dbUsgaFacility._FacilityId = SysId.ToLong(usgaFacility.FacilityId);
|
||||
dbUsgaFacility._UsgaFacilityId = SysId.ToLong(usgaFacility.UsgaFacilityId);
|
||||
dbUsgaFacility._FacilityName = usgaFacility.FacilityName;
|
||||
dbUsgaFacility._Address1 = usgaFacility.Address1;
|
||||
dbUsgaFacility._Address2 = usgaFacility.Address2;
|
||||
@@ -242,7 +242,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
//usgaFacility.Id = new SysId(dbUsgaFacility._Id);
|
||||
usgaFacility.ProvinceId = new SysId(dbUsgaFacility._ProvinceId);
|
||||
usgaFacility.FacilityId = new SysId(dbUsgaFacility._FacilityId);
|
||||
usgaFacility.UsgaFacilityId = new SysId(dbUsgaFacility._UsgaFacilityId);
|
||||
usgaFacility.FacilityName = dbUsgaFacility._FacilityName;
|
||||
usgaFacility.Address1 = dbUsgaFacility._Address1;
|
||||
usgaFacility.Address2 = dbUsgaFacility._Address2;
|
||||
@@ -280,7 +280,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
// Validate facility properties.
|
||||
// Province and Facility Codes are mandatory, other values only validated if non-null.
|
||||
if (!IsValidValue(facility.ProvinceCode, "province", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_ProvinceCode), true)) return false;
|
||||
if (!SysId.IsValid(facility.FacilityId)) return SetErrorState("Facility Id must be supplied");
|
||||
if (!SysId.IsValid(facility.UsgaFacilityId)) return SetErrorState("USGA Facility Id must be supplied");
|
||||
if (facility.FacilityName != null && !IsValidValue(facility.FacilityName, "name", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_FacilityName))) return false;
|
||||
if (facility.Address1 != null && !IsValidValue(facility.Address1, "address 1", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_Address1))) return false;
|
||||
if (facility.Address2 != null && !IsValidValue(facility.Address2, "address 2", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_Address2))) return false;
|
||||
@@ -295,19 +295,19 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
List<String> query = new List<string>();
|
||||
query.Add($"Declare @statusActive VarChar(3) = '{SacsSystem.GetStatusCode(SaxGolfUsgaFacility.DefaultStatus)}';");
|
||||
query.Add($"Declare @updateOn DateTime = GetUtcDate();");
|
||||
query.Add($"Declare @updateOn DateTime = GetDate();");
|
||||
query.Add($"Declare @updateBy Int = {SysId.ToLong(dbUpdateInfo.UserId)};");
|
||||
query.Add($"Declare @updateHost VarChar(100) = '{DbQuery.FormatForCondition(dbUpdateInfo.Host)}';");
|
||||
query.Add("Merge");
|
||||
query.Add($"Into {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaFacility)} uFty");
|
||||
query.Add("Using");
|
||||
query.Add("(");
|
||||
query.Add("Select dPrv.Id ProvinceId, dFty.ProvinceCode, dFty.FacilityId, dFty.FacilityName, dFty.Address1, dFty.Address2, dFty.City, dFty.PostalCode, dFty.Email, dFty.Telephone");
|
||||
query.Add("Select dPrv.Id ProvinceId, dFty.ProvinceCode, dFty.UsgaFacilityId, dFty.FacilityName, dFty.Address1, dFty.Address2, dFty.City, dFty.PostalCode, dFty.Email, dFty.Telephone");
|
||||
query.Add("From");
|
||||
query.Add("(");
|
||||
query.Add("Select '' ProvinceCode, '' FacilityId, '' FacilityName, '' Address1, '' Address2, '' City, '' PostalCode, '' Email, '' Telephone");
|
||||
query.Add("Select '' ProvinceCode, 0 UsgaFacilityId, '' FacilityName, '' Address1, '' Address2, '' City, '' PostalCode, '' Email, '' Telephone");
|
||||
foreach (UsgaFacilityData facility in facilitiesToUpdate.ExtractRange(0, batchSize))
|
||||
query.Add($"Union Select '{DbQuery.FormatForCondition(facility.ProvinceCode)}', {SysId.ToString(facility.FacilityId)}, " +
|
||||
query.Add($"Union Select '{DbQuery.FormatForCondition(facility.ProvinceCode)}', {SysId.ToString(facility.UsgaFacilityId)}, " +
|
||||
(facility.FacilityName != null ? $"'{DbQuery.FormatForCondition(facility.FacilityName)}'" : "Null") + "," +
|
||||
(facility.Address1 != null ? $"'{DbQuery.FormatForCondition(facility.Address1)}'" : "Null") + "," +
|
||||
(facility.Address2 != null ? $"'{DbQuery.FormatForCondition(facility.Address2)}'" : "Null") + "," +
|
||||
@@ -318,7 +318,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Add(") dFty");
|
||||
query.Add($"Inner Join {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaProvince)} dPrv On dPrv.ProvinceCode=dFty.ProvinceCode");
|
||||
query.Add(") dFty");
|
||||
query.Add("On uFty.ProvinceId=dFty.ProvinceId And uFty.FacilityId=dFty.FacilityId");
|
||||
query.Add("On uFty.ProvinceId=dFty.ProvinceId And uFty.UsgaFacilityId=dFty.UsgaFacilityId");
|
||||
query.Add("When Matched And ((dFty.FacilityName Is Not Null And uFty.FacilityName!=dFty.FacilityName) Or (dFty.Address1 Is Not Null And uFty.Address1!=dFty.Address1) Or (dFty.Address2 Is Not Null And uFty.Address2!=dFty.Address2) Or (dFty.City Is Not Null And uFty.City!=dFty.City) Or (dFty.PostalCode Is Not Null And uFty.PostalCode!=dFty.PostalCode) Or (dFty.Email Is Not Null And uFty.Email!=dFty.Email) Or (dFty.Telephone Is Not Null And uFty.Telephone!=dFty.Telephone) Or uFty.Status!=@statusActive)");
|
||||
query.Add("Then Update Set");
|
||||
query.Add(" FacilityName=Coalesce(dFty.FacilityName,uFty.FacilityName),");
|
||||
@@ -333,8 +333,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Add(" UpdateBy=@updateBy,");
|
||||
query.Add(" UpdateHost=@updateHost");
|
||||
query.Add("When Not Matched And Len(IsNull(dFty.FacilityName,''))>0");
|
||||
query.Add("Then Insert (ProvinceId,FacilityId,FacilityName,Address1,Address2,City,PostalCode,Email,Telephone,Notes,Flags,Status,CreateOn,CreateBy,CreateHost,UpdateOn,UpdateBy,UpdateHost)");
|
||||
query.Add($"Values (dFty.ProvinceId,dFty.FacilityId,dFty.FacilityName,Coalesce(dFty.Address1,''),Coalesce(dFty.Address2,''),Coalesce(dFty.City,''),Coalesce(dFty.PostalCode,''),Coalesce(dFty.Email,''),Coalesce(dFty.Telephone,''),'',0,@statusActive,@updateOn,@updateBy,@updateHost,@updateOn,@updateBy,@updateHost)");
|
||||
query.Add("Then Insert (ProvinceId,UsgaFacilityId,FacilityName,Address1,Address2,City,PostalCode,Email,Telephone,Notes,Flags,Status,CreateOn,CreateBy,CreateHost,UpdateOn,UpdateBy,UpdateHost)");
|
||||
query.Add($"Values (dFty.ProvinceId,dFty.UsgaFacilityId,dFty.FacilityName,Coalesce(dFty.Address1,''),Coalesce(dFty.Address2,''),Coalesce(dFty.City,''),Coalesce(dFty.PostalCode,''),Coalesce(dFty.Email,''),Coalesce(dFty.Telephone,''),'',0,@statusActive,@updateOn,@updateBy,@updateHost,@updateOn,@updateBy,@updateHost)");
|
||||
query.Add(";");
|
||||
//SaLogger.Info($"{SysUtil.Fn} Bulk USGA Facility update query:\n\t{query.Concat("\n\t")}");
|
||||
|
||||
@@ -396,8 +396,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
break;
|
||||
|
||||
//-------------------------------------------------------
|
||||
case SaxGolfUsgaFacility.Column.FacilityId:
|
||||
SetUsgaFacilityColDfn(columnDfn, "Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaFacility_FacilityId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
case SaxGolfUsgaFacility.Column.UsgaFacilityId:
|
||||
SetUsgaFacilityColDfn(columnDfn, "USGA Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaFacility_UsgaFacilityId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaFacility.Column.FacilityName:
|
||||
@@ -613,8 +613,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
bool hasProvinceCols = (columns.HasId(SaxGolfUsgaFacility.Column.Province_Name));
|
||||
if (columns.HasId(SaxGolfUsgaFacility.Column.ProvinceId) || hasProvinceCols)
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_ProvinceId, aliasUsgaFacility));
|
||||
if (columns.HasId(SaxGolfUsgaFacility.Column.FacilityId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_FacilityId, aliasUsgaFacility));
|
||||
if (columns.HasId(SaxGolfUsgaFacility.Column.UsgaFacilityId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_UsgaFacilityId, aliasUsgaFacility));
|
||||
if (columns.HasId(SaxGolfUsgaFacility.Column.FacilityName))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_FacilityName, aliasUsgaFacility));
|
||||
// Common properties.
|
||||
|
||||
@@ -30,7 +30,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
new StringPair("Id",SysId.ToString(usgaMarker.Id)),
|
||||
new StringPair("CourseId",SysId.ToString(usgaMarker.CourseId)),
|
||||
new StringPair("MarkerId",SysId.ToString(usgaMarker.MarkerId)),
|
||||
new StringPair("UsgaMarkerId",SysId.ToString(usgaMarker.UsgaMarkerId)),
|
||||
new StringPair("Caption",usgaMarker.Caption),
|
||||
new StringPair("Status",usgaMarker.StatusCode)
|
||||
};
|
||||
@@ -214,7 +214,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
dbUsgaMarker._Id = SysId.ToLong(usgaMarker.Id);
|
||||
dbUsgaMarker._CourseId = SysId.ToInt(usgaMarker.CourseId);
|
||||
dbUsgaMarker._MarkerId = SysId.ToInt(usgaMarker.MarkerId);
|
||||
dbUsgaMarker._UsgaMarkerId = SysId.ToInt(usgaMarker.UsgaMarkerId);
|
||||
dbUsgaMarker._Caption = usgaMarker.Caption;
|
||||
dbUsgaMarker._Holes = usgaMarker.Holes;
|
||||
dbUsgaMarker._HolesCaption = usgaMarker.HolesCaption;
|
||||
@@ -243,7 +243,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
//usgaMarker.Id = new SysId(dbUsgaMarker._Id);
|
||||
usgaMarker.CourseId = new SysId(dbUsgaMarker._CourseId);
|
||||
usgaMarker.MarkerId = new SysId(dbUsgaMarker._MarkerId);
|
||||
usgaMarker.UsgaMarkerId = new SysId(dbUsgaMarker._UsgaMarkerId);
|
||||
usgaMarker.Caption = dbUsgaMarker._Caption;
|
||||
usgaMarker.Holes = dbUsgaMarker._Holes;
|
||||
usgaMarker.HolesCaption = dbUsgaMarker._HolesCaption;
|
||||
@@ -281,12 +281,12 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
// Validate marker properties.
|
||||
// Course and Marker Codes are mandatory, other values only validated if non-null.
|
||||
if (!SysId.IsValid(marker.CourseId)) return SetErrorState("Course Id must be supplied");
|
||||
// 9 hole markers missing Id: if (!SysId.IsValid(marker.MarkerId)) return SetErrorState("Marker Id must be supplied");
|
||||
if (!SysId.IsValid(marker.UsgaCourseId)) return SetErrorState("USGA Course Id must be supplied");
|
||||
// 9 hole markers missing Id: if (!SysId.IsValid(marker.UsgaMarkerId)) return SetErrorState("USGA Marker Id must be supplied");
|
||||
if (marker.Caption != null && !IsValidValue(marker.HolesCaption, "caption", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_HolesCaption))) return false;
|
||||
if (marker.Holes < 1) return SetErrorState("Holes must be supplied");
|
||||
if (marker.HolesCaption != null && !IsValidValue(marker.HolesCaption, "full name", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_HolesCaption))) return false;
|
||||
if (marker.Tee != null && !IsValidValue(marker.Tee, "tee", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_Tee))) return false;
|
||||
if (marker.HolesCaption != null && !IsValidValue(marker.HolesCaption, "holes caption", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_HolesCaption), true)) return false;
|
||||
if (marker.Tee != null && !IsValidValue(marker.Tee, "tee", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_Tee), true)) return false;
|
||||
if (marker.Gender != null && !IsValidValue(marker.Gender, "gender", (long)SaxDbDfn_Reference.GetColTextLen(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_Gender))) return false;
|
||||
if (marker.SlopeRating < 1) return SetErrorState("Slope rating must be supplied");
|
||||
if (marker.Par < 1) return SetErrorState("Par must be supplied");
|
||||
@@ -299,19 +299,19 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
List<String> query = new List<string>();
|
||||
query.Add($"Declare @statusActive VarChar(3) = '{SacsSystem.GetStatusCode(SaxGolfUsgaMarker.DefaultStatus)}';");
|
||||
query.Add($"Declare @updateOn DateTime = GetUtcDate();");
|
||||
query.Add($"Declare @updateOn DateTime = GetDate();");
|
||||
query.Add($"Declare @updateBy Int = {SysId.ToLong(dbUpdateInfo.UserId)};");
|
||||
query.Add($"Declare @updateHost VarChar(100) = '{DbQuery.FormatForCondition(dbUpdateInfo.Host)}';");
|
||||
query.Add("Merge");
|
||||
query.Add($"Into {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaMarker)} uMkr");
|
||||
query.Add("Using");
|
||||
query.Add("(");
|
||||
query.Add("Select dCrs.Id CourseId, dMkr.MarkerId, dMkr.Caption, dMkr.Holes, dMkr.HolesCaption, dMkr.Tee, dMkr.Gender, dMkr.SlopeRating, dMkr.Par, dMkr.CourseRating, dMkr.BogeyRating, dMkr.Length");
|
||||
query.Add("Select uCrs.Id CourseId, dMkr.UsgaCourseId, dMkr.UsgaMarkerId, dMkr.Caption, dMkr.Holes, dMkr.HolesCaption, dMkr.Tee, dMkr.Gender, dMkr.SlopeRating, dMkr.Par, dMkr.CourseRating, dMkr.BogeyRating, dMkr.Length");
|
||||
query.Add("From");
|
||||
query.Add("(");
|
||||
query.Add("Select 0 CourseId, 0 MarkerId, '' Caption, 0 Holes, '' HolesCaption, '' Tee, '' Gender, 0 SlopeRating, 0 Par, 0 CourseRating, 0 BogeyRating, 0 Length");
|
||||
query.Add("Select 0 UsgaCourseId, 0 UsgaMarkerId, '' Caption, 0 Holes, '' HolesCaption, '' Tee, '' Gender, 0 SlopeRating, 0 Par, 0 CourseRating, 0 BogeyRating, 0 Length");
|
||||
foreach (UsgaMarkerData marker in markersToUpdate.ExtractRange(0, batchSize))
|
||||
query.Add($"Union Select {marker.CourseId},{StringUtil.OnBlank(SysId.ToString(marker.MarkerId),"0")}," +
|
||||
query.Add($"Union Select {marker.UsgaCourseId},{StringUtil.OnBlank(SysId.ToString(marker.UsgaMarkerId),"0")}," +
|
||||
(marker.Caption != null ? $"'{DbQuery.FormatForCondition(marker.Caption)}'" : "Null") + "," +
|
||||
$"{marker.Holes}," +
|
||||
(marker.HolesCaption != null ? $"'{DbQuery.FormatForCondition(marker.HolesCaption)}'" : "Null") + "," +
|
||||
@@ -323,9 +323,12 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
(marker.BogeyRating > 0 ? $"{marker.BogeyRating}" : "Null") + "," +
|
||||
(marker.Length > 0 ? $"{marker.Length}" : "Null"));
|
||||
query.Add(") dMkr");
|
||||
query.Add($"Inner Join {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaCourse)} dCrs On dCrs.CourseId=dMkr.CourseId");
|
||||
query.Add($"Inner Join {SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaCourse)} uCrs On uCrs.UsgaCourseId=dMkr.UsgaCourseId");
|
||||
query.Add(") dMkr");
|
||||
query.Add("On uMkr.CourseId=dMkr.CourseId And uMkr.MarkerId=dMkr.MarkerId");
|
||||
// Want to use UsgaMarkerId to identify the Marker alongside the CourseId, but only 18 hole markers have an Id value.
|
||||
// Use alternative identifiers for now: Holes Caption, Tee and Gender.
|
||||
// Was: query.Add("On uMkr.CourseId=dMkr.CourseId And uMkr.UsgaMarkerId=dMkr.UsgaMarkerId");
|
||||
query.Add("On uMkr.CourseId=dMkr.CourseId And uMkr.HolesCaption=dMkr.HolesCaption And uMkr.Tee=dMkr.Tee And uMkr.Gender=Coalesce(dMkr.Gender,'')");
|
||||
query.Add("When Matched And ((dMkr.Caption Is Not Null And uMkr.Caption!=dMkr.Caption) Or (uMkr.Holes!=dMkr.Holes) Or (dMkr.HolesCaption Is Not Null And uMkr.HolesCaption!=dMkr.HolesCaption) Or (dMkr.Tee Is Not Null And uMkr.Tee!=dMkr.Tee) Or (dMkr.Gender Is Not Null And uMkr.Gender!=dMkr.Gender) Or (uMkr.SlopeRating!=dMkr.SlopeRating) Or (uMkr.Par!=dMkr.Par) Or (uMkr.CourseRating!=dMkr.CourseRating) Or (dMkr.BogeyRating Is Not Null And uMkr.BogeyRating!=dMkr.BogeyRating) Or (dMkr.Length Is Not Null And uMkr.Length!=dMkr.Length) Or uMkr.Status!=@statusActive)");
|
||||
query.Add("Then Update Set");
|
||||
query.Add(" Caption=Coalesce(dMkr.Caption,uMkr.Caption),");
|
||||
@@ -343,8 +346,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Add(" UpdateBy=@updateBy,");
|
||||
query.Add(" UpdateHost=@updateHost");
|
||||
query.Add("When Not Matched And Len(Coalesce(dMkr.Caption,''))>0 And dMkr.Holes>0 And dMkr.SlopeRating>0 And dMkr.Par>0 And dMkr.CourseRating>0");
|
||||
query.Add("Then Insert (CourseId,MarkerId,Caption,Holes,HolesCaption,Tee,Gender,SlopeRating,Par,CourseRating,BogeyRating,Length,Notes,Flags,Status,CreateOn,CreateBy,CreateHost,UpdateOn,UpdateBy,UpdateHost)");
|
||||
query.Add($"Values (dMkr.CourseId,dMkr.MarkerId,Coalesce(dMkr.Caption,''),dMkr.Holes,Coalesce(dMkr.HolesCaption,''),Coalesce(dMkr.Tee,''),Coalesce(dMkr.Gender,''),Coalesce(dMkr.SlopeRating,''),Coalesce(dMkr.Par,''),Coalesce(dMkr.CourseRating,''),Coalesce(dMkr.BogeyRating,''),Coalesce(dMkr.Length,''),'',0,@statusActive,@updateOn,@updateBy,@updateHost,@updateOn,@updateBy,@updateHost)");
|
||||
query.Add("Then Insert (CourseId,UsgaMarkerId,Caption,Holes,HolesCaption,Tee,Gender,SlopeRating,Par,CourseRating,BogeyRating,Length,Notes,Flags,Status,CreateOn,CreateBy,CreateHost,UpdateOn,UpdateBy,UpdateHost)");
|
||||
query.Add($"Values (dMkr.CourseId,dMkr.UsgaMarkerId,Coalesce(dMkr.Caption,''),dMkr.Holes,Coalesce(dMkr.HolesCaption,''),Coalesce(dMkr.Tee,''),Coalesce(dMkr.Gender,''),Coalesce(dMkr.SlopeRating,''),Coalesce(dMkr.Par,''),Coalesce(dMkr.CourseRating,''),Coalesce(dMkr.BogeyRating,''),Coalesce(dMkr.Length,''),'',0,@statusActive,@updateOn,@updateBy,@updateHost,@updateOn,@updateBy,@updateHost)");
|
||||
query.Add(";");
|
||||
//SaLogger.Info($"{SysUtil.Fn} Bulk USGA Marker update query:\n\t{query.Concat("\n\t")}");
|
||||
|
||||
@@ -406,8 +409,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
break;
|
||||
|
||||
//-------------------------------------------------------
|
||||
case SaxGolfUsgaMarker.Column.MarkerId:
|
||||
SetUsgaMarkerColDfn(columnDfn, "Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaMarker_MarkerId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
case SaxGolfUsgaMarker.Column.UsgaMarkerId:
|
||||
SetUsgaMarkerColDfn(columnDfn, "Id", 80, SaxDbDfn_Reference.ColumnIdx.UsgaMarker_UsgaMarkerId, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaMarker.Column.Caption:
|
||||
@@ -649,8 +652,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
bool hasCourseCols = (columns.HasId(SaxGolfUsgaMarker.Column.Course_Name));
|
||||
if (columns.HasId(SaxGolfUsgaMarker.Column.CourseId) || hasCourseCols)
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_CourseId, aliasUsgaMarker));
|
||||
if (columns.HasId(SaxGolfUsgaMarker.Column.MarkerId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_MarkerId, aliasUsgaMarker));
|
||||
if (columns.HasId(SaxGolfUsgaMarker.Column.UsgaMarkerId))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_UsgaMarkerId, aliasUsgaMarker));
|
||||
if (columns.HasId(SaxGolfUsgaMarker.Column.Caption))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_Caption, aliasUsgaMarker));
|
||||
if (columns.HasId(SaxGolfUsgaMarker.Column.Holes))
|
||||
|
||||
@@ -217,6 +217,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
dbUsgaProvince._ProvinceCode = usgaProvince.ProvinceCode;
|
||||
dbUsgaProvince._EntProvinceCode = usgaProvince.EntProvinceCode;
|
||||
dbUsgaProvince._ProvinceName = usgaProvince.ProvinceName;
|
||||
dbUsgaProvince._CoursesUpdateAt = usgaProvince.CoursesUpdateAt;
|
||||
// Common.
|
||||
dbUsgaProvince._Notes = usgaProvince.Notes;
|
||||
dbUsgaProvince._Status = SacsSystem.GetStatusCode(usgaProvince.Status);
|
||||
@@ -238,6 +239,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
usgaProvince.ProvinceCode = dbUsgaProvince._ProvinceCode;
|
||||
usgaProvince.EntProvinceCode = dbUsgaProvince._EntProvinceCode;
|
||||
usgaProvince.ProvinceName = dbUsgaProvince._ProvinceName;
|
||||
usgaProvince.CoursesUpdateAt = dbUsgaProvince._CoursesUpdateAt;
|
||||
// Common.
|
||||
usgaProvince.Notes = dbUsgaProvince._Notes;
|
||||
usgaProvince.Status = SacsSystem.GetStatusForCode(dbUsgaProvince._Status);
|
||||
@@ -277,7 +279,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
{
|
||||
List<String> query = new List<string>();
|
||||
query.Add($"Declare @statusActive VarChar(3) = '{SacsSystem.GetStatusCode(SaxGolfUsgaProvince.DefaultStatus)}';");
|
||||
query.Add($"Declare @updateOn DateTime = GetUtcDate();");
|
||||
query.Add($"Declare @updateOn DateTime = GetDate();");
|
||||
query.Add($"Declare @updateBy Int = {SysId.ToLong(dbUpdateInfo.UserId)};");
|
||||
query.Add($"Declare @updateHost VarChar(100) = '{DbQuery.FormatForCondition(dbUpdateInfo.Host)}';");
|
||||
query.Add("Merge");
|
||||
@@ -331,6 +333,7 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
private static readonly String colProvince_Facility_Active_Count = "Prv_Fty_Act_Count";
|
||||
private static readonly String colProvince_Course_Count = "Prv_Crs_Count";
|
||||
private static readonly String colProvince_Course_Active_Count = "Prv_Crs_Act_Count";
|
||||
private static readonly String colProvince_Markers_Percent = "Prv_Mkr_Perc";
|
||||
private void SetUsgaProvinceColDfn
|
||||
(ColumnDfn col, String caption, int width, SaxDbDfn_Reference.ColumnIdx dbCol,
|
||||
ColumnAlignment align = ColumnAlignment.Default, DataValue.DataType dataType = DataValue.DataType.String,
|
||||
@@ -378,6 +381,10 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
SetUsgaProvinceColDfn(columnDfn, "Name", 120, SaxDbDfn_Reference.ColumnIdx.UsgaProvince_ProvinceName, ColumnAlignment.Center);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
case SaxGolfUsgaProvince.Column.CoursesUpdateAt_Date:
|
||||
SetUsgaProvinceColDfn(columnDfn, "Courses updated", 120, SaxDbDfn_Reference.ColumnIdx.UsgaProvince_CoursesUpdateAt, ColumnAlignment.Center, DataValue.DataType.Date);
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
|
||||
//-----------------------------------------------------------
|
||||
// Derived properties.
|
||||
@@ -398,6 +405,11 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
columnDfn.DataName = colProvince_Course_Active_Count;
|
||||
break;
|
||||
|
||||
case SaxGolfUsgaProvince.Column.MarkerPercent:
|
||||
SetUsgaCountryColDfn(columnDfn, "Markers %", 60, SaxDbDfn_Reference.ColumnIdx.Unknown, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
columnDfn.DataName = colProvince_Markers_Percent;
|
||||
break;
|
||||
|
||||
//-----------------------------------------------------------
|
||||
// Common properties.
|
||||
case SaxGolfUsgaProvince.Column.Notes:
|
||||
@@ -616,6 +628,8 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_ProvinceCode, aliasUsgaProvince));
|
||||
if (columns.HasId(SaxGolfUsgaProvince.Column.ProvinceName))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_ProvinceName, aliasUsgaProvince));
|
||||
if (columns.HasId(SaxGolfUsgaProvince.Column.CoursesUpdateAt_Date))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_CoursesUpdateAt, aliasUsgaProvince));
|
||||
// Common properties.
|
||||
if (columns.HasId(SaxGolfUsgaProvince.Column.Notes))
|
||||
query.Columns.Add(SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_Notes, aliasUsgaProvince));
|
||||
@@ -705,6 +719,36 @@ namespace Saxonite.Net.Standard.Dbas.Mgr.Reference
|
||||
query.Columns.Add("(" + queryFacility.BuildQuery() + ")", colProvince_Course_Active_Count);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// Marker population %.
|
||||
if (columns.HasId(SaxGolfUsgaProvince.Column.MarkerPercent))
|
||||
{
|
||||
// Sub query to count facilities & privinces with markers, and work out the percent with markers.
|
||||
String alias_Facility = "prv";
|
||||
String alias_Course = "crs";
|
||||
String alias_Marker = "fty";
|
||||
String table_Facility = $"{SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaFacility)} {alias_Facility}";
|
||||
String table_Course = $"{SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaCourse)} {alias_Course}";
|
||||
String table_Marker = $"{SaxDbDfn_Reference.GetTableNameQual(SaxDbDfn_Reference.TableIdx.UsgaMarker)} {alias_Marker}";
|
||||
String col_Province_Id = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaProvince_Id, aliasUsgaProvince);
|
||||
String col_Facility_Id = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_Id, alias_Facility);
|
||||
String col_Facility_ProvinceId = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaFacility_ProvinceId, alias_Facility);
|
||||
String col_Course_Id = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_Id, alias_Course);
|
||||
String col_Course_FacilityId = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaCourse_FacilityId, alias_Course);
|
||||
String col_Marker_CourseId = SaxDbDfn_Reference.GetColumnNameQual(SaxDbDfn_Reference.ColumnIdx.UsgaMarker_CourseId, alias_Marker);
|
||||
String name_CourseCount = "CourseCount";
|
||||
String name_CoursesWithMarkers = "CoursesWithMarkers";
|
||||
List<String> subQuery = new List<String>();
|
||||
subQuery.Add($"Select Convert (decimal(9,2), Case When {name_CourseCount} > 0 Then 100.0 * (1.0 * {name_CoursesWithMarkers} / {name_CourseCount}) Else 0 End)");
|
||||
subQuery.Add($"From");
|
||||
subQuery.Add($"(");
|
||||
subQuery.Add($"Select");
|
||||
subQuery.Add($"{name_CourseCount} = (select Count(*) From {table_Course} Where {col_Course_FacilityId} In (Select {col_Facility_Id} From {table_Facility} Where {col_Facility_ProvinceId}={col_Province_Id})),");
|
||||
subQuery.Add($"{name_CoursesWithMarkers} = (select Count(*) From {table_Course} Where {col_Course_FacilityId} In (Select {col_Facility_Id} From {table_Facility} Where {col_Facility_ProvinceId}={col_Province_Id}) And {col_Course_Id} in (Select {col_Marker_CourseId} from {table_Marker}))");
|
||||
subQuery.Add($") dat");
|
||||
query.Columns.Add($"({subQuery.Concat(" ")})", colProvince_Markers_Percent);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// Populate filter.
|
||||
query.Filters.AddRange(GetUsgaProvinceQueryFilter(prm));
|
||||
|
||||
Reference in New Issue
Block a user