Add project files.
This commit is contained in:
@@ -0,0 +1,265 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Sarand.Net.Standard.Base.Core;
|
||||
using Sarand.Net.Standard.Base.Bus;
|
||||
using Sarand.Net.Standard.Base.Dbas;
|
||||
using Sarand.Net.Standard.Base.UpdateLog;
|
||||
|
||||
namespace Sarand.Net.Standard.Base.ReferenceData
|
||||
{
|
||||
//=====================================================================
|
||||
// R e f e r e n c e D a t a
|
||||
//=====================================================================
|
||||
// Reference data item types.
|
||||
public enum ReferenceDataItemType
|
||||
{
|
||||
Unknown = 0,
|
||||
Language,
|
||||
Region,
|
||||
Currency,
|
||||
TaxCode,
|
||||
UnitMeasure,
|
||||
}
|
||||
//-------------------------------------------------------------------
|
||||
// Reference data code types.
|
||||
public enum ReferenceDataSystemCode
|
||||
{
|
||||
RegionType,
|
||||
CurrencyCode,
|
||||
TaxCodeType,
|
||||
TaxCodeColumn,
|
||||
UnitMeasureCategory,
|
||||
UnitMeasureType,
|
||||
}
|
||||
//-------------------------------------------------------------------
|
||||
// Region types.
|
||||
public enum SaRegionType
|
||||
{
|
||||
Unknown = 0,
|
||||
Continent, // 'CON'
|
||||
Country, // 'COU'
|
||||
Province, // 'PRO'
|
||||
Town, // 'TWN'
|
||||
};
|
||||
//-------------------------------------------------------------------
|
||||
// Currency code.
|
||||
public enum SaCurrencyCode
|
||||
{
|
||||
Unknown = 0,
|
||||
Sterling,
|
||||
Euro,
|
||||
};
|
||||
//-------------------------------------------------------------------
|
||||
// Tax code - with Sage equivalent.
|
||||
public enum SaTaxCodeType
|
||||
{
|
||||
Zero, // 'T0'
|
||||
Std, // 'T1'
|
||||
Exempt, // 'T2' or 'T3'
|
||||
};
|
||||
//-------------------------------------------------------------------
|
||||
// Tax code column.
|
||||
public enum SaTaxCodeColumn
|
||||
{
|
||||
Unknown = 0,
|
||||
Code = 10,
|
||||
CodeAlt1,
|
||||
CodeAlt2,
|
||||
};
|
||||
//-------------------------------------------------------------------
|
||||
// NB Do not change these values - they are tied to the database.
|
||||
public enum SaUomCategory
|
||||
{
|
||||
/// <summary>Allows all UOM categories, eg. in combobox.</summary>
|
||||
Any = -1,
|
||||
/// <summary>UOM category is not defined. Allows any in filters, but none in combobox.</summary>
|
||||
Unknown = 0,
|
||||
Time = 1,
|
||||
Pack = 2,
|
||||
Weight = 3,
|
||||
Length = 4,
|
||||
Area = 5,
|
||||
Volume = 6,
|
||||
Density = 7,
|
||||
/// <summary>'BOX' - types of container, eg. box, pallet.</summary>
|
||||
Box = 8,
|
||||
};
|
||||
//-------------------------------------------------------------------
|
||||
// NB Do not change these values - they are tied to the database.
|
||||
public enum SaUomType
|
||||
{
|
||||
Any = -1,
|
||||
Unknown = 0,
|
||||
// Time units.
|
||||
Time_Second = 100,
|
||||
Time_Minute = 101,
|
||||
Time_Hour = 102,
|
||||
Time_Day = 110,
|
||||
Time_WorkingDay = 111,
|
||||
Time_Week = 120,
|
||||
Time_WorkingWeek = 121,
|
||||
Time_Fortnight = 122,
|
||||
Time_Month = 140,
|
||||
Time_Quarter = 141,
|
||||
Time_Year = 142,
|
||||
// Pack units.
|
||||
Pack_Each = 200,
|
||||
Pack_Set = 201,
|
||||
// Weight units.
|
||||
Weight_Gram = 300,
|
||||
Weight_Kilogram = 301,
|
||||
Weight_Tonne = 302,
|
||||
// Length units.
|
||||
Length_Metre = 400,
|
||||
Length_Kilometre = 401,
|
||||
// Area units.
|
||||
Length_SquareMetre = 500,
|
||||
Length_Hectare = 501,
|
||||
Length_Acre = 590,
|
||||
// Volume units.
|
||||
Volume_Litre = 600,
|
||||
Volume_CubicMetre = 601,
|
||||
// Density units.
|
||||
Density_KilogramsPerCubicMetre = 700,
|
||||
Density_GramsPerCubicCentimeter = 701,
|
||||
// Box units.
|
||||
Box_Box = 800,
|
||||
Box_Carton = 801,
|
||||
Box_Pallet = 802,
|
||||
};
|
||||
|
||||
//=======================================================================
|
||||
public abstract partial class SaReferenceDataConsole : SaErrorStateItem
|
||||
{
|
||||
//-------------------------------------------------------------------
|
||||
// Definitions.
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Data members.
|
||||
private static List<TypeCodeDesc> regionTypes;
|
||||
private static List<TypeCodeDesc> currencyCodes;
|
||||
private static List<TypeCodeDesc> taxCodeTypes;
|
||||
private static List<TypeCodeDesc> taxCodeColumns;
|
||||
private static List<TypeCodeDesc> unitMeasureCategories;
|
||||
private static List<TypeCodeDesc> unitMeasureTypes;
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Static initialisation.
|
||||
static SaReferenceDataConsole ()
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Construction.
|
||||
protected SaReferenceDataConsole ()
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Properties.
|
||||
public abstract SaUpdateLogConsole UpdateLogConsole { get; }
|
||||
// Database.
|
||||
public abstract bool CanUpdateDatabase { get; }
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Manage reference data - displays dialog.
|
||||
public abstract bool ManageReferenceData (bool userCanManageReferenceData, DbUpdateInfo dbUpdateInfo);
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Reference data codes.
|
||||
public static List<TypeCodeDesc> GetReferenceDataCodes (ReferenceDataSystemCode systemCode)
|
||||
{
|
||||
switch (systemCode)
|
||||
{
|
||||
case ReferenceDataSystemCode.RegionType:
|
||||
if (regionTypes == null)
|
||||
{
|
||||
regionTypes = new List<TypeCodeDesc>();
|
||||
regionTypes.Add(SaRegionType.Continent, "CON", "Continent");
|
||||
regionTypes.Add(SaRegionType.Country, "COU", "Country");
|
||||
regionTypes.Add(SaRegionType.Province, "PRO", "Province");
|
||||
regionTypes.Add(SaRegionType.Town, "TWN", "Town");
|
||||
}
|
||||
return new List<TypeCodeDesc>(regionTypes);
|
||||
case ReferenceDataSystemCode.CurrencyCode:
|
||||
if (currencyCodes == null)
|
||||
{
|
||||
currencyCodes = new List<TypeCodeDesc>();
|
||||
currencyCodes.Add(SaCurrencyCode.Sterling, "GBP", "GBP");
|
||||
currencyCodes.Add(SaCurrencyCode.Euro, "EUR", "EUR");
|
||||
}
|
||||
return new List<TypeCodeDesc>(currencyCodes);
|
||||
case ReferenceDataSystemCode.TaxCodeType:
|
||||
if (taxCodeTypes == null)
|
||||
{
|
||||
taxCodeTypes = new List<TypeCodeDesc>();
|
||||
taxCodeTypes.Add(SaTaxCodeType.Zero, "ZERO", "Zero");
|
||||
taxCodeTypes.Add(SaTaxCodeType.Std, "STD", "Standard");
|
||||
taxCodeTypes.Add(SaTaxCodeType.Exempt, "EXEMPT", "Exempt");
|
||||
}
|
||||
return new List<TypeCodeDesc>(taxCodeTypes);
|
||||
case ReferenceDataSystemCode.TaxCodeColumn:
|
||||
if (taxCodeColumns == null)
|
||||
{
|
||||
taxCodeColumns = new List<TypeCodeDesc>();
|
||||
taxCodeColumns.Add(SaTaxCodeColumn.Code, SaReferenceDataDbDfn.GetColumnName(SaReferenceDataDbDfn.ColumnIdx.TaxCode_Code, false), "Tax code");
|
||||
taxCodeColumns.Add(SaTaxCodeColumn.CodeAlt1, SaReferenceDataDbDfn.GetColumnName(SaReferenceDataDbDfn.ColumnIdx.TaxCode_CodeAlt1, false), "Alt. tax code 1");
|
||||
taxCodeColumns.Add(SaTaxCodeColumn.CodeAlt2, SaReferenceDataDbDfn.GetColumnName(SaReferenceDataDbDfn.ColumnIdx.TaxCode_CodeAlt2, false), "Alt. tax code 2");
|
||||
}
|
||||
return new List<TypeCodeDesc>(taxCodeColumns);
|
||||
case ReferenceDataSystemCode.UnitMeasureCategory:
|
||||
if (unitMeasureCategories == null)
|
||||
{
|
||||
unitMeasureCategories = new List<TypeCodeDesc>();
|
||||
unitMeasureCategories.Add(SaUomCategory.Time, "TIM", "Time");
|
||||
unitMeasureCategories.Add(SaUomCategory.Pack, "PCK", "Pack");
|
||||
unitMeasureCategories.Add(SaUomCategory.Weight, "WEI", "Weight");
|
||||
unitMeasureCategories.Add(SaUomCategory.Length, "LEN", "Length");
|
||||
unitMeasureCategories.Add(SaUomCategory.Area, "ARE", "Area");
|
||||
unitMeasureCategories.Add(SaUomCategory.Volume, "VOL", "Volume");
|
||||
unitMeasureCategories.Add(SaUomCategory.Density, "DEN", "Density");
|
||||
unitMeasureCategories.Add(SaUomCategory.Box, "BOX", "Box (container)");
|
||||
}
|
||||
return new List<TypeCodeDesc>(unitMeasureCategories);
|
||||
case ReferenceDataSystemCode.UnitMeasureType:
|
||||
if (unitMeasureTypes == null)
|
||||
{
|
||||
unitMeasureTypes = new List<TypeCodeDesc>();
|
||||
unitMeasureTypes.Add(SaUomType.Time_Second, "SEC", "Second");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Minute, "MIN", "Minute");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Hour, "HR", "Hour");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Day, "DAY", "Day");
|
||||
unitMeasureTypes.Add(SaUomType.Time_WorkingDay, "WDAY", "Working day");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Week, "WK", "Week");
|
||||
unitMeasureTypes.Add(SaUomType.Time_WorkingWeek, "WWK", "Working week");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Fortnight, "FNT", "Fortnight");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Month, "MTH", "Month");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Quarter, "QTR", "Quarter");
|
||||
unitMeasureTypes.Add(SaUomType.Time_Year, "YR", "Year");
|
||||
unitMeasureTypes.Add(SaUomType.Pack_Each, "EACH", "Each");
|
||||
unitMeasureTypes.Add(SaUomType.Pack_Set, "SET", "Set");
|
||||
unitMeasureTypes.Add(SaUomType.Weight_Gram, "GRM", "Gram");
|
||||
unitMeasureTypes.Add(SaUomType.Weight_Kilogram, "KG", "Kilogram");
|
||||
unitMeasureTypes.Add(SaUomType.Weight_Tonne, "TON", "Tonne");
|
||||
unitMeasureTypes.Add(SaUomType.Length_Metre, "METRE", "Metre");
|
||||
unitMeasureTypes.Add(SaUomType.Length_Kilometre, "KMET", "Kilometre");
|
||||
unitMeasureTypes.Add(SaUomType.Length_SquareMetre, "SQMET", "Square metre");
|
||||
unitMeasureTypes.Add(SaUomType.Length_Hectare, "HECT", "Hectare");
|
||||
unitMeasureTypes.Add(SaUomType.Length_Acre, "ACRE", "Acre");
|
||||
unitMeasureTypes.Add(SaUomType.Volume_Litre, "LITRE", "Litre");
|
||||
unitMeasureTypes.Add(SaUomType.Volume_CubicMetre, "CUBMET", "Cubic metre");
|
||||
unitMeasureTypes.Add(SaUomType.Density_KilogramsPerCubicMetre, "KPCMET", "Kg/m3");
|
||||
unitMeasureTypes.Add(SaUomType.Density_GramsPerCubicCentimeter, "GPCCMET", "g/cm3");
|
||||
unitMeasureTypes.Add(SaUomType.Box_Box, "BOX", "Box");
|
||||
unitMeasureTypes.Add(SaUomType.Box_Carton, "CARTON", "Carton");
|
||||
unitMeasureTypes.Add(SaUomType.Box_Pallet, "PALLET", "Pallet");
|
||||
}
|
||||
return new List<TypeCodeDesc>(unitMeasureTypes);
|
||||
}
|
||||
throw new NotSupportedException(typeof(SaReferenceDataConsole).Name + ".GetReferenceDataCodes Invalid code type specified: " + systemCode.ToString());
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
}
|
||||
//=======================================================================
|
||||
}
|
||||
Reference in New Issue
Block a user