diff --git a/SacsCoreWeb/Web/Components/SaModel.cs b/SacsCoreWeb/Web/Components/SaModel.cs
index 82ced31..bfbd0f5 100644
--- a/SacsCoreWeb/Web/Components/SaModel.cs
+++ b/SacsCoreWeb/Web/Components/SaModel.cs
@@ -1,9 +1,12 @@
-using Sarand.Net.Standard.Base.App;
+using Microsoft.AspNetCore.Mvc.Rendering;
+using Sarand.Net.Standard.Base.App;
+using Sarand.Net.Standard.Base.CodeTypes;
using Sarand.Net.Standard.Base.Core;
using Sarand.Net.Standard.Base.Dbas;
using Sarand.Net.Standard.Base.Utils;
using System;
using System.Collections.Generic;
+using System.Linq;
namespace Sacs.Web.Components
{
@@ -24,16 +27,16 @@ namespace Sacs.Web.Components
{
}
- protected override void Dispose(bool disposing)
- {
+ protected override void Dispose(bool disposing)
+ {
if (disposing)
{
}
- }
+ }
- //---------------------------------------------------------------
- // Properties.
- public bool DebugMode { get; } = SacsSystem.DebugMode;
+ //---------------------------------------------------------------
+ // Properties.
+ public bool DebugMode { get; } = SacsSystem.DebugMode;
public bool OK { get { return !HasMessages(); } }
public virtual bool ProhibitCache { get; set; } = true;
public String PageCaption { get; set; }
@@ -119,6 +122,15 @@ namespace Sacs.Web.Components
Paging.PopulatePagingTo(resultsPaging);
}
+ //-------------------------------------------------------------------
+ // View data.
+
+ /// Empty list of values for dropdown.
+ public IEnumerable GetEmptyListForSelect()
+ {
+ return new SelectList(Enumerable.Empty());
+ }
+
//-------------------------------------------------------------------
// Messages.
//-------------------------------------------------------------------
@@ -148,7 +160,7 @@ namespace Sacs.Web.Components
errorMessages.Add(message);
}
- //---------------------------------------------------------------
- }
+ //---------------------------------------------------------------
+ }
//=======================================================================
}
diff --git a/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs b/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs
index 149181d..f9c1e78 100644
--- a/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs
+++ b/SacsStandardBase/Base/ReferenceData/SaUnitMeasure.cs
@@ -212,7 +212,7 @@ namespace Sarand.Net.Standard.Base.ReferenceData
/// UOM caption - Multiple label is specified, otherwise Single label.
public String GetCaption()
{
- return StringUtil.OnBlank(Multiple, Single, Abbr, Code);
+ return StringUtil.OnBlank(Single, Multiple, Abbr, Code);
}
//-------------------------------------------------------------------
diff --git a/SacsStandardDbas/Dbas/Data/SacsDatabaseOdbc.cs b/SacsStandardDbas/Dbas/Data/SacsDatabaseOdbc.cs
index 4d1d5c9..c0ab582 100644
--- a/SacsStandardDbas/Dbas/Data/SacsDatabaseOdbc.cs
+++ b/SacsStandardDbas/Dbas/Data/SacsDatabaseOdbc.cs
@@ -12,6 +12,7 @@ using Sarand.Net.Standard.Base.Dbas;
using Sarand.Net.Standard.Dbas.Base;
using Sarand.Net.Standard.Base.Utils;
using System.Diagnostics;
+using Sarand.Net.Standard.Base.Security;
namespace Sarand.Net.Standard.Dbas.Data
{
@@ -149,7 +150,7 @@ namespace Sarand.Net.Standard.Dbas.Data
}
public override int GetNextIdFromTable(String objectName, String idColumn = "Id")
{
- DataValue maxId = GetRowValue(objectName, "Max(" + idColumn + ")", "");
+ DataValue maxId = GetRowValue(SaSecurityDbDfn.DelimitReservedWord(objectName), "Max(" + idColumn + ")", "");
if (maxId != null && maxId.GetDataType() != DataValue.DataType.Unknown)
return Math.Max(0, (int)maxId.AsLong()) + 1;
return 1;