|
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Text;
using System.Windows.Forms;
namespace JGCreateDataClasses
{
internal class JAccessProvider
{
private int m_RecordNumber;
private string m_LastUpdated;
private Int32 m_PType;
private String m_ConstantName;
private Int32 m_TypeID;
// Bare constructor
internal JAccessProvider()
{
this.m_RecordNumber = 0;
}
// Constructor from key field number
internal JAccessProvider(int recordNumber)
{
JAccessProviderUpdater.GetRecord(recordNumber, this);
}
#region Public Properties
internal int RecordNumber
{
get { return this.m_RecordNumber; }
set { this.m_RecordNumber = value; }
}
internal string LastUpdated
{
get { return this.m_LastUpdated; }
set { this.m_LastUpdated = value; }
}
internal Int32 PType
{
get { return this.m_PType; }
set { this.m_PType = value; }
}
internal String ConstantName
{
get { return this.m_ConstantName; }
set { this.m_ConstantName = value; }
}
internal Int32 TypeID
{
get { return this.m_TypeID; }
set { this.m_TypeID = value; }
}
#endregion
#region Additional Fields
// Calculated Fields - NB These are not saved in the database
#endregion
}
#region Updater Class
// Steers calls to appropriate updater
static class JAccessProviderUpdater
{
// AddRecord
internal static int AddRecord(JAccessProvider accessProvider)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.AddRecord(accessProvider);
else
return JAccessProviderUDSQLite.AddRecord(accessProvider);
}
// Returns all records in a List
internal static List<JAccessProvider> AllRecords()
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.AllRecords();
else
return JAccessProviderUDSQLite.AllRecords();
}
// Returns all records in a List
internal static List<JAccessProvider> AllRecords(string sortField)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.AllRecords(sortField);
else
return JAccessProviderUDSQLite.AllRecords(sortField);
}
// DeleteRecord
internal static bool DeleteRecord(JAccessProvider accessProvider)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.DeleteRecord(accessProvider);
else
return JAccessProviderUDSQLite.DeleteRecord(accessProvider);
}
// GetField
internal static object GetField(int recordNumber, string fieldName)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.GetField(recordNumber, fieldName);
else
return JAccessProviderUDSQLite.GetField(recordNumber, fieldName);
}
// GetRecord (From Key Field)
internal static void GetRecord(int recordNumber, JAccessProvider accessProvider)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
JAccessProviderUDAC.GetRecord(recordNumber, accessProvider);
else
JAccessProviderUDSQLite.GetRecord(recordNumber, accessProvider);
}
// UpdateField
internal static bool UpdateField(int recordNumber, string fieldName, object value)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.UpdateField(recordNumber, fieldName, value);
else
return JAccessProviderUDSQLite.UpdateField(recordNumber, fieldName, value);
}
internal static bool UpdateRecord(JAccessProvider accessProvider)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderUDAC.UpdateRecord(accessProvider);
else
return JAccessProviderUDSQLite.UpdateRecord(accessProvider);
}
}
#endregion
#region Additional Functions Class
static class JAccessProviderFunctions
{
internal static JAccessProvider GetRecordByAccessProvider(string accessProvider)
{
if (JCommon.ProjectDataType == JCommon.ClassDataTypes.ADONET)
return JAccessProviderFunctionsAC.GetRecordByAccessProvider(accessProvider);
else
return JAccessProviderFunctionsSQlite.GetRecordByAccessProvider(accessProvider);
}
}
#endregion
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I have been a keen hobbyist programmer since getting my first computer - a Vic 20 (you had to be able to write programs then since few programs were available and all were expensive).
Retired and now living in Pewsey, Wiltshire, where I spend (far too much of) my time writing computer programs to keep my mind active.