Files
PatientMgr-CSharp/SaPatMgrCore/Core/App/SpmDbDfn.cs
T
2019-04-11 11:59:22 +01:00

1072 lines
36 KiB
C#

using Sarand.Core.Base;
using Sarand.Core.Dbas.Base;
using System;
using System.Collections.Generic;
using System.Linq;
//---------------------------------------------------------------------------
// Code generated by Sarand Database Utilities Tue 9-Apr-2019 17:58:35
//---------------------------------------------------------------------------
namespace Sarand.PatientMgr.Core.App
{
public class SpmDbDfn
{
//-------------------------------------------------------------------
// Table identifiers.
public enum TableIdx
{
Unknown = 0,
IndexDefragLog,
SaItemNamedValue,
SwmAdmission,
SwmAdmissionAction,
SwmAdmissionData,
SwmAdmissionRole,
SwmDepartment,
SwmDepartmentCode,
SwmEmployee,
SwmEmployeeRole,
SwmFacility,
SwmFacilitySession,
SwmFacilityTemplate,
SwmInstitution,
SwmOperation,
SwmPatient,
SwmProcedure,
SwmTemplateData,
}
//-------------------------------------------------------------------
// Column identifiers.
public enum ColumnIdx
{
Unknown = 0,
IndexDefragLog_IndexDefragId,
IndexDefragLog_DatabaseID,
IndexDefragLog_DatabaseName,
IndexDefragLog_ObjectID,
IndexDefragLog_ObjectName,
IndexDefragLog_IndexID,
IndexDefragLog_IndexName,
IndexDefragLog_PartitionNumber,
IndexDefragLog_Fragmentation,
IndexDefragLog_PageCount,
IndexDefragLog_DateTimeStart,
IndexDefragLog_DurationSeconds,
SaItemNamedValue_ItemType,
SaItemNamedValue_ItemId,
SaItemNamedValue_Name,
SaItemNamedValue_Seq,
SaItemNamedValue_Value,
SaItemNamedValue_Notes,
SaItemNamedValue_Flags,
SaItemNamedValue_Status,
SaItemNamedValue_CreateOn,
SaItemNamedValue_CreateBy,
SaItemNamedValue_CreateHost,
SaItemNamedValue_UpdateOn,
SaItemNamedValue_UpdateBy,
SaItemNamedValue_UpdateHost,
SwmAdmission_Id,
SwmAdmission_FacilityId,
SwmAdmission_FacilityTemplateId,
SwmAdmission_AdmissionFrom,
SwmAdmission_AdmissionTo,
SwmAdmission_DecisionToReferOn,
SwmAdmission_ReferredOn,
SwmAdmission_BreechOn,
SwmAdmission_DecisionToAdmitOn,
SwmAdmission_PreAssessment,
SwmAdmission_ToComeIn,
SwmAdmission_Seq,
SwmAdmission_Type,
SwmAdmission_Occupancy,
SwmAdmission_PatientId,
SwmAdmission_PatientNo,
SwmAdmission_NhsNumber,
SwmAdmission_Title,
SwmAdmission_Surname,
SwmAdmission_Forename,
SwmAdmission_Gender,
SwmAdmission_BirthOn,
SwmAdmission_Age,
SwmAdmission_AgeOn,
SwmAdmission_PhoneMobile,
SwmAdmission_Email,
SwmAdmission_ContactFlags,
SwmAdmission_SystemRef,
SwmAdmission_AttendanceType,
SwmAdmission_AttendanceStatus,
SwmAdmission_FacilityIdWard,
SwmAdmission_Ward,
SwmAdmission_SpecialityCode,
SwmAdmission_ProcedureId,
SwmAdmission_ProcedureCode,
SwmAdmission_ProcedureDesc,
SwmAdmission_ComplexityCode,
SwmAdmission_ProcedureIndication,
SwmAdmission_PatientHistory,
SwmAdmission_GestationPeriod,
SwmAdmission_DurationExp,
SwmAdmission_DurationAct,
SwmAdmission_UnitsExp,
SwmAdmission_UnitsAct,
SwmAdmission_Anaesthetic,
SwmAdmission_Position,
SwmAdmission_SpecialEquipment,
SwmAdmission_ComfortScore,
SwmAdmission_TimeCalled,
SwmAdmission_TimeArrived,
SwmAdmission_TimeAnaesStart,
SwmAdmission_TimeProcStart,
SwmAdmission_TimeProcEnd,
SwmAdmission_TimeInRecovery,
SwmAdmission_TimeInformDest,
SwmAdmission_TimeLeave,
SwmAdmission_CancelType,
SwmAdmission_CancelDate,
SwmAdmission_CancelCount,
SwmAdmission_CancelCode,
SwmAdmission_CancelReason,
SwmAdmission_Notes,
SwmAdmission_Flags,
SwmAdmission_Status,
SwmAdmission_CreateOn,
SwmAdmission_CreateBy,
SwmAdmission_CreateHost,
SwmAdmission_UpdateOn,
SwmAdmission_UpdateBy,
SwmAdmission_UpdateHost,
SwmAdmission_DecisionToRefer,
SwmAdmission_Referred,
SwmAdmissionAction_Id,
SwmAdmissionAction_AdmissionId,
SwmAdmissionAction_Type,
SwmAdmissionAction_Raised,
SwmAdmissionAction_EmployeeIdRaised,
SwmAdmissionAction_Completed,
SwmAdmissionAction_EmployeeIdCompleted,
SwmAdmissionAction_ActionData,
SwmAdmissionAction_Notes,
SwmAdmissionAction_Flags,
SwmAdmissionAction_Status,
SwmAdmissionAction_CreateOn,
SwmAdmissionAction_CreateBy,
SwmAdmissionAction_CreateHost,
SwmAdmissionAction_UpdateOn,
SwmAdmissionAction_UpdateBy,
SwmAdmissionAction_UpdateHost,
SwmAdmissionData_AdmissionId,
SwmAdmissionData_Type,
SwmAdmissionData_Data,
SwmAdmissionData_Notes,
SwmAdmissionData_Flags,
SwmAdmissionData_Status,
SwmAdmissionData_CreateOn,
SwmAdmissionData_CreateBy,
SwmAdmissionData_CreateHost,
SwmAdmissionData_UpdateOn,
SwmAdmissionData_UpdateBy,
SwmAdmissionData_UpdateHost,
SwmAdmissionRole_AdmissionId,
SwmAdmissionRole_Role,
SwmAdmissionRole_Seq,
SwmAdmissionRole_EmployeeRoleId,
SwmAdmissionRole_EmployeeCode,
SwmAdmissionRole_Category,
SwmAdmissionRole_Notes,
SwmAdmissionRole_Flags,
SwmAdmissionRole_Status,
SwmAdmissionRole_CreateOn,
SwmAdmissionRole_CreateBy,
SwmAdmissionRole_CreateHost,
SwmAdmissionRole_UpdateOn,
SwmAdmissionRole_UpdateBy,
SwmAdmissionRole_UpdateHost,
SwmDepartment_Id,
SwmDepartment_InstitutionId,
SwmDepartment_Name,
SwmDepartment_FacilityTypes,
SwmDepartment_AllowAnyFacility,
SwmDepartment_CancellReBookLimit,
SwmDepartment_ApplicFrom,
SwmDepartment_ApplicTo,
SwmDepartment_Notes,
SwmDepartment_Flags,
SwmDepartment_Status,
SwmDepartment_CreateOn,
SwmDepartment_CreateBy,
SwmDepartment_CreateHost,
SwmDepartment_UpdateOn,
SwmDepartment_UpdateBy,
SwmDepartment_UpdateHost,
SwmDepartmentCode_Id,
SwmDepartmentCode_DepartmentId,
SwmDepartmentCode_CodeType,
SwmDepartmentCode_Code,
SwmDepartmentCode_Description,
SwmDepartmentCode_Notes,
SwmDepartmentCode_Flags,
SwmDepartmentCode_Status,
SwmDepartmentCode_CreateOn,
SwmDepartmentCode_CreateBy,
SwmDepartmentCode_CreateHost,
SwmDepartmentCode_UpdateOn,
SwmDepartmentCode_UpdateBy,
SwmDepartmentCode_UpdateHost,
SwmEmployee_Id,
SwmEmployee_InstitutionId,
SwmEmployee_EmployeeNo,
SwmEmployee_Code,
SwmEmployee_Initials,
SwmEmployee_Title,
SwmEmployee_Surname,
SwmEmployee_Forename,
SwmEmployee_Notes,
SwmEmployee_Flags,
SwmEmployee_Status,
SwmEmployee_CreateOn,
SwmEmployee_CreateBy,
SwmEmployee_CreateHost,
SwmEmployee_UpdateOn,
SwmEmployee_UpdateBy,
SwmEmployee_UpdateHost,
SwmEmployeeRole_Id,
SwmEmployeeRole_DepartmentId,
SwmEmployeeRole_EmployeeId,
SwmEmployeeRole_Role,
SwmEmployeeRole_ApplicFrom,
SwmEmployeeRole_ApplicTo,
SwmEmployeeRole_Notes,
SwmEmployeeRole_Flags,
SwmEmployeeRole_Status,
SwmEmployeeRole_CreateOn,
SwmEmployeeRole_CreateBy,
SwmEmployeeRole_CreateHost,
SwmEmployeeRole_UpdateOn,
SwmEmployeeRole_UpdateBy,
SwmEmployeeRole_UpdateHost,
SwmFacility_Id,
SwmFacility_DepartmentId,
SwmFacility_Type,
SwmFacility_Name,
SwmFacility_SortCode,
SwmFacility_Description,
SwmFacility_TemplateMapType,
SwmFacility_TemplateMapFrom,
SwmFacility_ScheduleFreezeType,
SwmFacility_ScheduleFreezeData,
SwmFacility_ApplicFrom,
SwmFacility_ApplicTo,
SwmFacility_Notes,
SwmFacility_Flags,
SwmFacility_Status,
SwmFacility_CreateOn,
SwmFacility_CreateBy,
SwmFacility_CreateHost,
SwmFacility_UpdateOn,
SwmFacility_UpdateBy,
SwmFacility_UpdateHost,
SwmFacilitySession_FacilityId,
SwmFacilitySession_FacilityTemplateId,
SwmFacilitySession_Session,
SwmFacilitySession_Type,
SwmFacilitySession_Name,
SwmFacilitySession_Description,
SwmFacilitySession_SessionCode,
SwmFacilitySession_StartAt,
SwmFacilitySession_FinishAt,
SwmFacilitySession_ConsultantId,
SwmFacilitySession_ConsultantCode,
SwmFacilitySession_SpecialityCode,
SwmFacilitySession_CapacityType,
SwmFacilitySession_CapacityMin,
SwmFacilitySession_CapacityMax,
SwmFacilitySession_DurationInterval,
SwmFacilitySession_DurationMin,
SwmFacilitySession_DurationMax,
SwmFacilitySession_DurationBreaks,
SwmFacilitySession_UnitsExp,
SwmFacilitySession_BookingsProhibited_ResourceGroups,
SwmFacilitySession_Overrides,
SwmFacilitySession_Notes,
SwmFacilitySession_Flags,
SwmFacilitySession_Status,
SwmFacilitySession_CreateOn,
SwmFacilitySession_CreateBy,
SwmFacilitySession_CreateHost,
SwmFacilitySession_UpdateOn,
SwmFacilitySession_UpdateBy,
SwmFacilitySession_UpdateHost,
SwmFacilityTemplate_Id,
SwmFacilityTemplate_FacilityId,
SwmFacilityTemplate_Category,
SwmFacilityTemplate_Type,
SwmFacilityTemplate_Group,
SwmFacilityTemplate_Name,
SwmFacilityTemplate_SortCode,
SwmFacilityTemplate_Description,
SwmFacilityTemplate_SessionCode,
SwmFacilityTemplate_TemplateMapType,
SwmFacilityTemplate_TemplateMapFrom,
SwmFacilityTemplate_WeekOfMonth,
SwmFacilityTemplate_DayOfWeek,
SwmFacilityTemplate_StartAt,
SwmFacilityTemplate_FinishAt,
SwmFacilityTemplate_ConsultantId,
SwmFacilityTemplate_ConsultantCode,
SwmFacilityTemplate_SpecialityCode,
SwmFacilityTemplate_CapacityType,
SwmFacilityTemplate_CapacityMin,
SwmFacilityTemplate_CapacityMax,
SwmFacilityTemplate_DurationInterval,
SwmFacilityTemplate_DurationMin,
SwmFacilityTemplate_DurationMax,
SwmFacilityTemplate_DurationBreaks,
SwmFacilityTemplate_UnitsExp,
SwmFacilityTemplate_ApplicFrom,
SwmFacilityTemplate_ApplicTo,
SwmFacilityTemplate_Notes,
SwmFacilityTemplate_Flags,
SwmFacilityTemplate_Status,
SwmFacilityTemplate_CreateOn,
SwmFacilityTemplate_CreateBy,
SwmFacilityTemplate_CreateHost,
SwmFacilityTemplate_UpdateOn,
SwmFacilityTemplate_UpdateBy,
SwmFacilityTemplate_UpdateHost,
SwmInstitution_Id,
SwmInstitution_Name,
SwmInstitution_Notes,
SwmInstitution_Flags,
SwmInstitution_Status,
SwmInstitution_CreateOn,
SwmInstitution_CreateBy,
SwmInstitution_CreateHost,
SwmInstitution_UpdateOn,
SwmInstitution_UpdateBy,
SwmInstitution_UpdateHost,
SwmOperation_Id,
SwmOperation_InstitutionId,
SwmOperation_Code,
SwmOperation_Description,
SwmOperation_Notes,
SwmOperation_Flags,
SwmOperation_Status,
SwmOperation_CreateOn,
SwmOperation_CreateBy,
SwmOperation_CreateHost,
SwmOperation_UpdateOn,
SwmOperation_UpdateBy,
SwmOperation_UpdateHost,
SwmPatient_Id,
SwmPatient_InstitutionId,
SwmPatient_PatientNo,
SwmPatient_NhsNumber,
SwmPatient_Title,
SwmPatient_Surname,
SwmPatient_Forename,
SwmPatient_Gender,
SwmPatient_BirthOn,
SwmPatient_Age,
SwmPatient_AgeOn,
SwmPatient_PhoneMobile,
SwmPatient_Email,
SwmPatient_Notes,
SwmPatient_Flags,
SwmPatient_Status,
SwmPatient_CreateOn,
SwmPatient_CreateBy,
SwmPatient_CreateHost,
SwmPatient_UpdateOn,
SwmPatient_UpdateBy,
SwmPatient_UpdateHost,
SwmProcedure_Id,
SwmProcedure_DepartmentId,
SwmProcedure_OperationId,
SwmProcedure_OpnCode,
SwmProcedure_Description,
SwmProcedure_SpecialityCode,
SwmProcedure_ComplexityCode,
SwmProcedure_Duration,
SwmProcedure_Units,
SwmProcedure_Duration_Training,
SwmProcedure_Units_Training,
SwmProcedure_Notes,
SwmProcedure_Flags,
SwmProcedure_Status,
SwmProcedure_CreateOn,
SwmProcedure_CreateBy,
SwmProcedure_CreateHost,
SwmProcedure_UpdateOn,
SwmProcedure_UpdateBy,
SwmProcedure_UpdateHost,
SwmTemplateData_FacilityTemplateId,
SwmTemplateData_Type,
SwmTemplateData_Seq,
SwmTemplateData_Identifier,
SwmTemplateData_Value,
SwmTemplateData_Notes,
SwmTemplateData_Flags,
SwmTemplateData_Status,
SwmTemplateData_CreateOn,
SwmTemplateData_CreateBy,
SwmTemplateData_CreateHost,
SwmTemplateData_UpdateOn,
SwmTemplateData_UpdateBy,
SwmTemplateData_UpdateHost,
}
//-------------------------------------------------------------------
// Data members.
private static readonly int tableCount = 18;
private static readonly int columnCount = 374;
private static ulong maxTextLen = 0;
//-------------------------------------------------------------------
// Retrieve Table details (eg. name: 'Company').
public static int GetTableCount ()
{
return tableCount;
}
public static String GetTableName (TableIdx table, bool delimitReservedWords = true)
{
int tableIdx = (int)table - 1;
if (tableIdx < 0 || tableIdx >= tableCount) return String.Empty;
String tableName = tables[(int)tableIdx];
if (delimitReservedWords) tableName = DelimitReservedWord(tableName);
return tableName;
}
//-------------------------------------------------------------------
// Identify the table that corresponds with the specified column.
public static TableIdx GetTableForColumn (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return TableIdx.Unknown;
return columns[columnIdx].TableIdx;
}
//-------------------------------------------------------------------
// Retrieve the specified Column's name (Qualified include table name: '(<Table>.Column>)').
public static String GetColumnName (ColumnIdx column, bool delimitReservedWords = true)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return String.Empty;
String columnName = columns[columnIdx].Name;
if (delimitReservedWords) columnName = DelimitReservedWord(columnName);
return columnName;
}
public static String GetColumnNameQual (ColumnIdx column, String tableAlias = "", bool braces = false)
{
String columnName = GetColumnName(column);
if (!String.IsNullOrEmpty(columnName))
{
String tableName = StringUtil.EmptyOnNull(tableAlias);
if (tableName.IsEmpty()) tableName = GetTableName(GetTableForColumn(column));
columnName = tableName + (tableName.Length > 0 ? "." : "") + columnName;
if (braces)
columnName = "(" + columnName + ")";
}
return columnName;
}
//-------------------------------------------------------------------
// Reserved words.
private static DbReservedWordDelim reservedWordDelim = DbReservedWordDelim.SquareBrackets;
public static void SetReservedWordDelim (DbReservedWordDelim reservedWordDelim)
{
SpmDbDfn.reservedWordDelim = reservedWordDelim;
}
public static bool IsReservedWord (String word)
{
if (String.IsNullOrEmpty(word)) return false;
if (reservedWords.Contains(word, StringComparer.OrdinalIgnoreCase)) return true;
return false;
}
public static String DelimitReservedWord (String word)
{
if (!IsReservedWord(word)) return word;
switch (reservedWordDelim)
{
case DbReservedWordDelim.None:
break;
case DbReservedWordDelim.DoubleQuotes:
word = "\"" + word + "\"";
break;
case DbReservedWordDelim.SquareBrackets:
default:
word = "[" + word + "]";
break;
}
return word;
}
//-------------------------------------------------------------------
// Retrieve information about the specified Column.
public static DbColumnDataType GetColDataType (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return DbColumnDataType.Unknown;
return columns[columnIdx].DataType;
}
public static short GetColNativeDataType (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return 0;
return columns[columnIdx].NativeDataType;
}
public static void SetMaxTextLen (ulong maxTextLen)
{
SpmDbDfn.maxTextLen = maxTextLen;
}
public static bool IsColFmtText (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return false;
return (columns[columnIdx].DataType == DbColumnDataType.VarChar);
}
public static ulong GetColTextLen (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return 0;
if (columns[columnIdx].DataType == DbColumnDataType.VarChar)
{
ulong textLen = columns[columnIdx].DataLen;
if (maxTextLen > 0 && textLen > maxTextLen) textLen = maxTextLen;
return textLen;
}
return 0;
}
public static bool IsColFmtBool (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return false;
return (columns[columnIdx].DataType == DbColumnDataType.Bit);
}
public static bool IsColFmtNumeric (ColumnIdx column)
{
int columnIdx = (int)column - 1;
if (columnIdx < 0 || columnIdx >= columnCount) return false;
switch (columns[columnIdx].DataType)
{
case DbColumnDataType.TinyInt:
case DbColumnDataType.SmallInt:
case DbColumnDataType.Int:
case DbColumnDataType.BigInt:
case DbColumnDataType.Single:
case DbColumnDataType.Double:
case DbColumnDataType.Decimal:
return true;
}
return false;
}
//-------------------------------------------------------------------
// Table definitions.
private static readonly String[] tables =
{
"IndexDefragLog",
"SaItemNamedValue",
"SwmAdmission",
"SwmAdmissionAction",
"SwmAdmissionData",
"SwmAdmissionRole",
"SwmDepartment",
"SwmDepartmentCode",
"SwmEmployee",
"SwmEmployeeRole",
"SwmFacility",
"SwmFacilitySession",
"SwmFacilityTemplate",
"SwmInstitution",
"SwmOperation",
"SwmPatient",
"SwmProcedure",
"SwmTemplateData",
};
//-------------------------------------------------------------------
// Table column definitions.
internal class ColumnDfn
{
internal TableIdx TableIdx { get; set; }
internal String Name { get; set; }
internal DbColumnDataType DataType { get; set; }
internal short NativeDataType { get; set; }
internal bool IsIdentity { get; set; }
internal ulong DataLen { get; set; }
internal ColumnDfn (int tableIdx, String name, int dataType, short nativeDataType, bool isIdentity, ulong dataLen)
{
this.TableIdx = (TableIdx)tableIdx;
this.Name = name;
this.DataType = (DbColumnDataType)dataType;
this.NativeDataType = nativeDataType;
this.IsIdentity = isIdentity;
this.DataLen = dataLen;
}
}
//-------------------------------------------------------------------
private static readonly ColumnDfn[] columns =
{
new ColumnDfn(1,"IndexDefragId",4,4,true,10),
new ColumnDfn(1,"DatabaseID",4,4,false,10),
new ColumnDfn(1,"DatabaseName",0,-9,false,128),
new ColumnDfn(1,"ObjectID",4,4,false,10),
new ColumnDfn(1,"ObjectName",0,-9,false,128),
new ColumnDfn(1,"IndexID",4,4,false,10),
new ColumnDfn(1,"IndexName",0,-9,false,128),
new ColumnDfn(1,"PartitionNumber",3,5,false,5),
new ColumnDfn(1,"Fragmentation",7,6,false,53),
new ColumnDfn(1,"PageCount",4,4,false,10),
new ColumnDfn(1,"DateTimeStart",9,93,false,23),
new ColumnDfn(1,"DurationSeconds",4,4,false,10),
new ColumnDfn(2,"ItemType",3,5,false,5),
new ColumnDfn(2,"ItemId",4,4,false,10),
new ColumnDfn(2,"Name",0,-9,false,64),
new ColumnDfn(2,"Seq",3,5,false,5),
new ColumnDfn(2,"Value",0,-9,false,255),
new ColumnDfn(2,"Notes",0,-9,false,255),
new ColumnDfn(2,"Flags",3,5,false,5),
new ColumnDfn(2,"Status",0,-9,false,3),
new ColumnDfn(2,"CreateOn",9,93,false,23),
new ColumnDfn(2,"CreateBy",4,4,false,10),
new ColumnDfn(2,"CreateHost",0,-9,false,64),
new ColumnDfn(2,"UpdateOn",9,93,false,23),
new ColumnDfn(2,"UpdateBy",4,4,false,10),
new ColumnDfn(2,"UpdateHost",0,-9,false,64),
new ColumnDfn(3,"Id",4,4,false,10),
new ColumnDfn(3,"FacilityId",4,4,false,10),
new ColumnDfn(3,"FacilityTemplateId",4,4,false,10),
new ColumnDfn(3,"AdmissionFrom",9,93,false,23),
new ColumnDfn(3,"AdmissionTo",9,93,false,23),
new ColumnDfn(3,"DecisionToReferOn",9,93,false,23),
new ColumnDfn(3,"ReferredOn",9,93,false,23),
new ColumnDfn(3,"BreechOn",9,93,false,23),
new ColumnDfn(3,"DecisionToAdmitOn",9,93,false,23),
new ColumnDfn(3,"PreAssessment",9,93,false,23),
new ColumnDfn(3,"ToComeIn",9,93,false,23),
new ColumnDfn(3,"Seq",2,-6,false,3),
new ColumnDfn(3,"Type",3,5,false,5),
new ColumnDfn(3,"Occupancy",3,5,false,5),
new ColumnDfn(3,"PatientId",4,4,false,10),
new ColumnDfn(3,"PatientNo",0,12,false,12),
new ColumnDfn(3,"NhsNumber",0,12,false,16),
new ColumnDfn(3,"Title",0,-9,false,12),
new ColumnDfn(3,"Surname",0,-9,false,50),
new ColumnDfn(3,"Forename",0,-9,false,50),
new ColumnDfn(3,"Gender",3,5,false,5),
new ColumnDfn(3,"BirthOn",4,4,false,10),
new ColumnDfn(3,"Age",0,12,false,3),
new ColumnDfn(3,"AgeOn",9,93,false,23),
new ColumnDfn(3,"PhoneMobile",0,12,false,32),
new ColumnDfn(3,"Email",0,12,false,64),
new ColumnDfn(3,"ContactFlags",3,5,false,5),
new ColumnDfn(3,"SystemRef",0,12,false,16),
new ColumnDfn(3,"AttendanceType",3,5,false,5),
new ColumnDfn(3,"AttendanceStatus",0,-9,false,3),
new ColumnDfn(3,"FacilityIdWard",4,4,false,10),
new ColumnDfn(3,"Ward",0,-9,false,12),
new ColumnDfn(3,"SpecialityCode",0,-9,false,12),
new ColumnDfn(3,"ProcedureId",4,4,false,10),
new ColumnDfn(3,"ProcedureCode",0,-9,false,12),
new ColumnDfn(3,"ProcedureDesc",0,-9,false,255),
new ColumnDfn(3,"ComplexityCode",0,-9,false,12),
new ColumnDfn(3,"ProcedureIndication",0,-9,false,64),
new ColumnDfn(3,"PatientHistory",0,-9,false,32),
new ColumnDfn(3,"GestationPeriod",0,-9,false,32),
new ColumnDfn(3,"DurationExp",3,5,false,5),
new ColumnDfn(3,"DurationAct",3,5,false,5),
new ColumnDfn(3,"UnitsExp",6,7,false,24),
new ColumnDfn(3,"UnitsAct",6,7,false,24),
new ColumnDfn(3,"Anaesthetic",0,-9,false,3),
new ColumnDfn(3,"Position",0,-9,false,12),
new ColumnDfn(3,"SpecialEquipment",0,-9,false,50),
new ColumnDfn(3,"ComfortScore",0,-9,false,12),
new ColumnDfn(3,"TimeCalled",9,93,false,23),
new ColumnDfn(3,"TimeArrived",9,93,false,23),
new ColumnDfn(3,"TimeAnaesStart",9,93,false,23),
new ColumnDfn(3,"TimeProcStart",9,93,false,23),
new ColumnDfn(3,"TimeProcEnd",9,93,false,23),
new ColumnDfn(3,"TimeInRecovery",9,93,false,23),
new ColumnDfn(3,"TimeInformDest",9,93,false,23),
new ColumnDfn(3,"TimeLeave",9,93,false,23),
new ColumnDfn(3,"CancelType",3,5,false,5),
new ColumnDfn(3,"CancelDate",9,93,false,23),
new ColumnDfn(3,"CancelCount",3,5,false,5),
new ColumnDfn(3,"CancelCode",0,-9,false,20),
new ColumnDfn(3,"CancelReason",0,-9,false,255),
new ColumnDfn(3,"Notes",0,-9,false,255),
new ColumnDfn(3,"Flags",3,5,false,5),
new ColumnDfn(3,"Status",0,12,false,3),
new ColumnDfn(3,"CreateOn",9,93,false,23),
new ColumnDfn(3,"CreateBy",4,4,false,10),
new ColumnDfn(3,"CreateHost",0,12,false,64),
new ColumnDfn(3,"UpdateOn",9,93,false,23),
new ColumnDfn(3,"UpdateBy",4,4,false,10),
new ColumnDfn(3,"UpdateHost",0,12,false,64),
new ColumnDfn(3,"DecisionToRefer",9,93,false,23),
new ColumnDfn(3,"Referred",9,93,false,23),
new ColumnDfn(4,"Id",4,4,false,10),
new ColumnDfn(4,"AdmissionId",4,4,false,10),
new ColumnDfn(4,"Type",3,5,false,5),
new ColumnDfn(4,"Raised",9,93,false,23),
new ColumnDfn(4,"EmployeeIdRaised",4,4,false,10),
new ColumnDfn(4,"Completed",9,93,false,23),
new ColumnDfn(4,"EmployeeIdCompleted",4,4,false,10),
new ColumnDfn(4,"ActionData",0,12,false,255),
new ColumnDfn(4,"Notes",0,-9,false,255),
new ColumnDfn(4,"Flags",3,5,false,5),
new ColumnDfn(4,"Status",0,12,false,3),
new ColumnDfn(4,"CreateOn",9,93,false,23),
new ColumnDfn(4,"CreateBy",4,4,false,10),
new ColumnDfn(4,"CreateHost",0,12,false,64),
new ColumnDfn(4,"UpdateOn",9,93,false,23),
new ColumnDfn(4,"UpdateBy",4,4,false,10),
new ColumnDfn(4,"UpdateHost",0,12,false,64),
new ColumnDfn(5,"AdmissionId",4,4,false,10),
new ColumnDfn(5,"Type",3,5,false,5),
new ColumnDfn(5,"Data",0,12,false,255),
new ColumnDfn(5,"Notes",0,-9,false,255),
new ColumnDfn(5,"Flags",3,5,false,5),
new ColumnDfn(5,"Status",0,12,false,3),
new ColumnDfn(5,"CreateOn",9,93,false,23),
new ColumnDfn(5,"CreateBy",4,4,false,10),
new ColumnDfn(5,"CreateHost",0,12,false,64),
new ColumnDfn(5,"UpdateOn",9,93,false,23),
new ColumnDfn(5,"UpdateBy",4,4,false,10),
new ColumnDfn(5,"UpdateHost",0,12,false,64),
new ColumnDfn(6,"AdmissionId",4,4,false,10),
new ColumnDfn(6,"Role",3,5,false,5),
new ColumnDfn(6,"Seq",3,5,false,5),
new ColumnDfn(6,"EmployeeRoleId",4,4,false,10),
new ColumnDfn(6,"EmployeeCode",0,12,false,12),
new ColumnDfn(6,"Category",3,5,false,5),
new ColumnDfn(6,"Notes",0,-9,false,255),
new ColumnDfn(6,"Flags",3,5,false,5),
new ColumnDfn(6,"Status",0,12,false,3),
new ColumnDfn(6,"CreateOn",9,93,false,23),
new ColumnDfn(6,"CreateBy",4,4,false,10),
new ColumnDfn(6,"CreateHost",0,12,false,64),
new ColumnDfn(6,"UpdateOn",9,93,false,23),
new ColumnDfn(6,"UpdateBy",4,4,false,10),
new ColumnDfn(6,"UpdateHost",0,12,false,64),
new ColumnDfn(7,"Id",4,4,false,10),
new ColumnDfn(7,"InstitutionId",4,4,false,10),
new ColumnDfn(7,"Name",0,-9,false,60),
new ColumnDfn(7,"FacilityTypes",4,4,false,10),
new ColumnDfn(7,"AllowAnyFacility",4,4,false,10),
new ColumnDfn(7,"CancellReBookLimit",0,-9,false,50),
new ColumnDfn(7,"ApplicFrom",9,93,false,23),
new ColumnDfn(7,"ApplicTo",9,93,false,23),
new ColumnDfn(7,"Notes",0,-9,false,255),
new ColumnDfn(7,"Flags",3,5,false,5),
new ColumnDfn(7,"Status",0,-9,false,3),
new ColumnDfn(7,"CreateOn",9,93,false,23),
new ColumnDfn(7,"CreateBy",4,4,false,10),
new ColumnDfn(7,"CreateHost",0,-9,false,64),
new ColumnDfn(7,"UpdateOn",9,93,false,23),
new ColumnDfn(7,"UpdateBy",4,4,false,10),
new ColumnDfn(7,"UpdateHost",0,-9,false,64),
new ColumnDfn(8,"Id",4,4,false,10),
new ColumnDfn(8,"DepartmentId",4,4,false,10),
new ColumnDfn(8,"CodeType",3,5,false,5),
new ColumnDfn(8,"Code",0,-9,false,16),
new ColumnDfn(8,"Description",0,-9,false,64),
new ColumnDfn(8,"Notes",0,-9,false,255),
new ColumnDfn(8,"Flags",3,5,false,5),
new ColumnDfn(8,"Status",0,-9,false,3),
new ColumnDfn(8,"CreateOn",9,93,false,23),
new ColumnDfn(8,"CreateBy",4,4,false,10),
new ColumnDfn(8,"CreateHost",0,-9,false,64),
new ColumnDfn(8,"UpdateOn",9,93,false,23),
new ColumnDfn(8,"UpdateBy",4,4,false,10),
new ColumnDfn(8,"UpdateHost",0,-9,false,64),
new ColumnDfn(9,"Id",4,4,false,10),
new ColumnDfn(9,"InstitutionId",4,4,false,10),
new ColumnDfn(9,"EmployeeNo",0,-9,false,12),
new ColumnDfn(9,"Code",0,-9,false,12),
new ColumnDfn(9,"Initials",0,-9,false,6),
new ColumnDfn(9,"Title",0,-9,false,12),
new ColumnDfn(9,"Surname",0,-9,false,50),
new ColumnDfn(9,"Forename",0,-9,false,50),
new ColumnDfn(9,"Notes",0,-9,false,255),
new ColumnDfn(9,"Flags",3,5,false,5),
new ColumnDfn(9,"Status",0,-9,false,3),
new ColumnDfn(9,"CreateOn",9,93,false,23),
new ColumnDfn(9,"CreateBy",4,4,false,10),
new ColumnDfn(9,"CreateHost",0,-9,false,64),
new ColumnDfn(9,"UpdateOn",9,93,false,23),
new ColumnDfn(9,"UpdateBy",4,4,false,10),
new ColumnDfn(9,"UpdateHost",0,-9,false,64),
new ColumnDfn(10,"Id",4,4,false,10),
new ColumnDfn(10,"DepartmentId",4,4,false,10),
new ColumnDfn(10,"EmployeeId",4,4,false,10),
new ColumnDfn(10,"Role",3,5,false,5),
new ColumnDfn(10,"ApplicFrom",9,93,false,23),
new ColumnDfn(10,"ApplicTo",9,93,false,23),
new ColumnDfn(10,"Notes",0,-9,false,255),
new ColumnDfn(10,"Flags",3,5,false,5),
new ColumnDfn(10,"Status",0,-9,false,3),
new ColumnDfn(10,"CreateOn",9,93,false,23),
new ColumnDfn(10,"CreateBy",4,4,false,10),
new ColumnDfn(10,"CreateHost",0,-9,false,64),
new ColumnDfn(10,"UpdateOn",9,93,false,23),
new ColumnDfn(10,"UpdateBy",4,4,false,10),
new ColumnDfn(10,"UpdateHost",0,-9,false,64),
new ColumnDfn(11,"Id",4,4,false,10),
new ColumnDfn(11,"DepartmentId",4,4,false,10),
new ColumnDfn(11,"Type",3,5,false,5),
new ColumnDfn(11,"Name",0,-9,false,16),
new ColumnDfn(11,"SortCode",0,-9,false,16),
new ColumnDfn(11,"Description",0,-9,false,64),
new ColumnDfn(11,"TemplateMapType",3,5,false,5),
new ColumnDfn(11,"TemplateMapFrom",9,93,false,23),
new ColumnDfn(11,"ScheduleFreezeType",3,5,false,5),
new ColumnDfn(11,"ScheduleFreezeData",0,-9,false,50),
new ColumnDfn(11,"ApplicFrom",9,93,false,23),
new ColumnDfn(11,"ApplicTo",9,93,false,23),
new ColumnDfn(11,"Notes",0,-9,false,255),
new ColumnDfn(11,"Flags",3,5,false,5),
new ColumnDfn(11,"Status",0,-9,false,3),
new ColumnDfn(11,"CreateOn",9,93,false,23),
new ColumnDfn(11,"CreateBy",4,4,false,10),
new ColumnDfn(11,"CreateHost",0,-9,false,64),
new ColumnDfn(11,"UpdateOn",9,93,false,23),
new ColumnDfn(11,"UpdateBy",4,4,false,10),
new ColumnDfn(11,"UpdateHost",0,-9,false,64),
new ColumnDfn(12,"FacilityId",4,4,false,10),
new ColumnDfn(12,"FacilityTemplateId",4,4,false,10),
new ColumnDfn(12,"Session",9,93,false,23),
new ColumnDfn(12,"Type",3,5,false,5),
new ColumnDfn(12,"Name",0,-9,false,32),
new ColumnDfn(12,"Description",0,-9,false,255),
new ColumnDfn(12,"SessionCode",0,12,false,32),
new ColumnDfn(12,"StartAt",9,93,false,23),
new ColumnDfn(12,"FinishAt",9,93,false,23),
new ColumnDfn(12,"ConsultantId",4,4,false,10),
new ColumnDfn(12,"ConsultantCode",0,-9,false,12),
new ColumnDfn(12,"SpecialityCode",0,-9,false,12),
new ColumnDfn(12,"CapacityType",3,5,false,5),
new ColumnDfn(12,"CapacityMin",3,5,false,5),
new ColumnDfn(12,"CapacityMax",3,5,false,5),
new ColumnDfn(12,"DurationInterval",3,5,false,5),
new ColumnDfn(12,"DurationMin",3,5,false,5),
new ColumnDfn(12,"DurationMax",3,5,false,5),
new ColumnDfn(12,"DurationBreaks",3,5,false,5),
new ColumnDfn(12,"UnitsExp",6,7,false,24),
new ColumnDfn(12,"BookingsProhibited_ResourceGroups",0,12,false,1024),
new ColumnDfn(12,"Overrides",3,5,false,5),
new ColumnDfn(12,"Notes",0,-9,false,255),
new ColumnDfn(12,"Flags",3,5,false,5),
new ColumnDfn(12,"Status",0,12,false,3),
new ColumnDfn(12,"CreateOn",9,93,false,23),
new ColumnDfn(12,"CreateBy",4,4,false,10),
new ColumnDfn(12,"CreateHost",0,-9,false,64),
new ColumnDfn(12,"UpdateOn",9,93,false,23),
new ColumnDfn(12,"UpdateBy",4,4,false,10),
new ColumnDfn(12,"UpdateHost",0,-9,false,64),
new ColumnDfn(13,"Id",4,4,false,10),
new ColumnDfn(13,"FacilityId",4,4,false,10),
new ColumnDfn(13,"Category",3,5,false,5),
new ColumnDfn(13,"Type",3,5,false,5),
new ColumnDfn(13,"Group",0,-9,false,16),
new ColumnDfn(13,"Name",0,-9,false,32),
new ColumnDfn(13,"SortCode",0,-9,false,16),
new ColumnDfn(13,"Description",0,-9,false,255),
new ColumnDfn(13,"SessionCode",0,12,false,32),
new ColumnDfn(13,"TemplateMapType",3,5,false,5),
new ColumnDfn(13,"TemplateMapFrom",9,93,false,23),
new ColumnDfn(13,"WeekOfMonth",3,5,false,5),
new ColumnDfn(13,"DayOfWeek",3,5,false,5),
new ColumnDfn(13,"StartAt",9,93,false,23),
new ColumnDfn(13,"FinishAt",9,93,false,23),
new ColumnDfn(13,"ConsultantId",4,4,false,10),
new ColumnDfn(13,"ConsultantCode",0,-9,false,12),
new ColumnDfn(13,"SpecialityCode",0,-9,false,12),
new ColumnDfn(13,"CapacityType",3,5,false,5),
new ColumnDfn(13,"CapacityMin",3,5,false,5),
new ColumnDfn(13,"CapacityMax",3,5,false,5),
new ColumnDfn(13,"DurationInterval",3,5,false,5),
new ColumnDfn(13,"DurationMin",3,5,false,5),
new ColumnDfn(13,"DurationMax",3,5,false,5),
new ColumnDfn(13,"DurationBreaks",3,5,false,5),
new ColumnDfn(13,"UnitsExp",6,7,false,24),
new ColumnDfn(13,"ApplicFrom",9,93,false,23),
new ColumnDfn(13,"ApplicTo",9,93,false,23),
new ColumnDfn(13,"Notes",0,-9,false,255),
new ColumnDfn(13,"Flags",3,5,false,5),
new ColumnDfn(13,"Status",0,12,false,3),
new ColumnDfn(13,"CreateOn",9,93,false,23),
new ColumnDfn(13,"CreateBy",4,4,false,10),
new ColumnDfn(13,"CreateHost",0,-9,false,64),
new ColumnDfn(13,"UpdateOn",9,93,false,23),
new ColumnDfn(13,"UpdateBy",4,4,false,10),
new ColumnDfn(13,"UpdateHost",0,-9,false,64),
new ColumnDfn(14,"Id",4,4,false,10),
new ColumnDfn(14,"Name",0,-9,false,60),
new ColumnDfn(14,"Notes",0,-9,false,255),
new ColumnDfn(14,"Flags",3,5,false,5),
new ColumnDfn(14,"Status",0,-9,false,3),
new ColumnDfn(14,"CreateOn",9,93,false,23),
new ColumnDfn(14,"CreateBy",4,4,false,10),
new ColumnDfn(14,"CreateHost",0,-9,false,64),
new ColumnDfn(14,"UpdateOn",9,93,false,23),
new ColumnDfn(14,"UpdateBy",4,4,false,10),
new ColumnDfn(14,"UpdateHost",0,-9,false,64),
new ColumnDfn(15,"Id",4,4,false,10),
new ColumnDfn(15,"InstitutionId",4,4,false,10),
new ColumnDfn(15,"Code",0,-9,false,20),
new ColumnDfn(15,"Description",0,-9,false,255),
new ColumnDfn(15,"Notes",0,-9,false,255),
new ColumnDfn(15,"Flags",3,5,false,5),
new ColumnDfn(15,"Status",0,-9,false,3),
new ColumnDfn(15,"CreateOn",9,93,false,23),
new ColumnDfn(15,"CreateBy",4,4,false,10),
new ColumnDfn(15,"CreateHost",0,-9,false,64),
new ColumnDfn(15,"UpdateOn",9,93,false,23),
new ColumnDfn(15,"UpdateBy",4,4,false,10),
new ColumnDfn(15,"UpdateHost",0,-9,false,64),
new ColumnDfn(16,"Id",4,4,false,10),
new ColumnDfn(16,"InstitutionId",4,4,false,10),
new ColumnDfn(16,"PatientNo",0,-9,false,12),
new ColumnDfn(16,"NhsNumber",0,-9,false,16),
new ColumnDfn(16,"Title",0,-9,false,12),
new ColumnDfn(16,"Surname",0,-9,false,50),
new ColumnDfn(16,"Forename",0,-9,false,50),
new ColumnDfn(16,"Gender",3,5,false,5),
new ColumnDfn(16,"BirthOn",4,4,false,10),
new ColumnDfn(16,"Age",0,-9,false,3),
new ColumnDfn(16,"AgeOn",9,93,false,23),
new ColumnDfn(16,"PhoneMobile",0,-9,false,32),
new ColumnDfn(16,"Email",0,-9,false,64),
new ColumnDfn(16,"Notes",0,-9,false,255),
new ColumnDfn(16,"Flags",3,5,false,5),
new ColumnDfn(16,"Status",0,-9,false,3),
new ColumnDfn(16,"CreateOn",9,93,false,23),
new ColumnDfn(16,"CreateBy",4,4,false,10),
new ColumnDfn(16,"CreateHost",0,-9,false,64),
new ColumnDfn(16,"UpdateOn",9,93,false,23),
new ColumnDfn(16,"UpdateBy",4,4,false,10),
new ColumnDfn(16,"UpdateHost",0,-9,false,64),
new ColumnDfn(17,"Id",4,4,false,10),
new ColumnDfn(17,"DepartmentId",4,4,false,10),
new ColumnDfn(17,"OperationId",4,4,false,10),
new ColumnDfn(17,"OpnCode",0,-9,false,12),
new ColumnDfn(17,"Description",0,-9,false,255),
new ColumnDfn(17,"SpecialityCode",0,-9,false,12),
new ColumnDfn(17,"ComplexityCode",0,-9,false,12),
new ColumnDfn(17,"Duration",3,5,false,5),
new ColumnDfn(17,"Units",6,7,false,24),
new ColumnDfn(17,"Duration_Training",3,5,false,5),
new ColumnDfn(17,"Units_Training",6,7,false,24),
new ColumnDfn(17,"Notes",0,-9,false,255),
new ColumnDfn(17,"Flags",3,5,false,5),
new ColumnDfn(17,"Status",0,-9,false,3),
new ColumnDfn(17,"CreateOn",9,93,false,23),
new ColumnDfn(17,"CreateBy",4,4,false,10),
new ColumnDfn(17,"CreateHost",0,-9,false,64),
new ColumnDfn(17,"UpdateOn",9,93,false,23),
new ColumnDfn(17,"UpdateBy",4,4,false,10),
new ColumnDfn(17,"UpdateHost",0,-9,false,64),
new ColumnDfn(18,"FacilityTemplateId",4,4,false,10),
new ColumnDfn(18,"Type",3,5,false,5),
new ColumnDfn(18,"Seq",3,5,false,5),
new ColumnDfn(18,"Identifier",0,-9,false,50),
new ColumnDfn(18,"Value",0,-9,false,50),
new ColumnDfn(18,"Notes",0,-9,false,255),
new ColumnDfn(18,"Flags",3,5,false,5),
new ColumnDfn(18,"Status",0,-9,false,3),
new ColumnDfn(18,"CreateOn",9,93,false,23),
new ColumnDfn(18,"CreateBy",4,4,false,10),
new ColumnDfn(18,"CreateHost",0,-9,false,64),
new ColumnDfn(18,"UpdateOn",9,93,false,23),
new ColumnDfn(18,"UpdateBy",4,4,false,10),
new ColumnDfn(18,"UpdateHost",0,-9,false,64),
};
//-------------------------------------------------------------------
// Reserved words.
private static readonly List<String> reservedWords = new List<String>()
{
"ADD",
"ALL",
"ALTER",
"AND",
"ANY",
"AS",
"ASC",
"AVG",
"BEGIN",
"BETWEEN",
"BY",
"CASE",
"CAST",
"COLUMN",
"COMMIT",
"CONSTRAINT",
"CONVERT",
"COUNT",
"CREATE",
"CURRENCY",
"DEFAULT",
"DELETE",
"DESC",
"DISTINCT",
"DROP",
"ELSE",
"END",
"EXECUTE",
"EXISTS",
"FALSE",
"FROM",
"GRANT",
"GROUP",
"HAVING",
"IN",
"INDEX",
"INNER",
"INSERT",
"INTO",
"IS",
"JOIN",
"KEY",
"LEFT",
"LIKE",
"MAX",
"MIN",
"NOT",
"NULL",
"ON",
"OR",
"ORDER",
"OUTER",
"OUTPUT",
"PRIMARY",
"PROCEDURE",
"REVOKE",
"ROLLBACK",
"ROWCOUNT",
"SELECT",
"SET",
"SQL",
"SUM",
"TABLE",
"THEN",
"TRANSACTION",
"TRUE",
"UNION",
"UNIQUE",
"UPDATE",
"USER",
"VALUES",
"VIEW",
"WHEN",
"WHERE",
};
//-------------------------------------------------------------------
}
}