using Sarand.BusinessMgr.Net.Standard.Base.App; using Sarand.BusinessMgr.Net.Standard.Base.Core; using Sarand.BusinessMgr.Net.Standard.Base.Mgr; using Sarand.BusinessMgr.Net.Standard.Dbas.Data; using Sarand.Net.Standard.Base.Dbas; using Sarand.Net.Standard.Dbas.Base; using System; namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr { //======================================================================= internal partial class SbmProcessMgr_Dbas : SbmProcessMgr { //------------------------------------------------------------------- // Static Definitions - Alias&Prefix. //------------------------------------------------------------------- // Data members. public class DataMembers { public SacsDatabase db = null; public SbmDbDataItem.SbmDatabaseInfo dbInfo; } private readonly DataMembers mbr = new DataMembers(); //------------------------------------------------------------------- // Construction. public SbmProcessMgr_Dbas(SbmInternals internals) : base(internals) { Initialise(); } public SbmProcessMgr_Dbas(ISbmUserOrganisationContext userContext) : base(userContext) { Initialise(); } // Initialisation. private void Initialise() { mbr.db = (SbmGlobals.Application.GetBusMgrDatabase(SessionContext) as SacsDatabase); mbr.dbInfo = new SbmDbDataItem.SbmDatabaseInfo(mbr.db.DatabaseName, mbr.db.GetTableDfns()); } //------------------------------------------------------------------- // Properties. protected ISacsDatabase Database { get { return mbr.db; } } protected SbmDbDataItem.SbmDatabaseInfo DbInfo { get { return mbr.dbInfo; } } protected String TableName_Process { get { return SbmDbDfn.GetTableName(SbmDbDfn.TableIdx.Process); } } protected String TableName_ItemLink { get { return SbmDbDfn.GetTableName(SbmDbDfn.TableIdx.ItemLink); } } public override bool ProcessDatabaseIsValid { get { if (!Database.TableExists(SbmDbDfn.GetTableName(SbmDbDfn.TableIdx.Process))) return false; if (!Database.TableExists(SbmDbDfn.GetTableName(SbmDbDfn.TableIdx.ItemLink))) return false; return true; } } //------------------------------------------------------------------- // Utilities. public override bool ColumnExists(SbmDbDfn.ColumnIdx columnIdx) { SbmDbDfn.TableIdx tableIdx = SbmDbDfn.GetTableForColumn(columnIdx); String schemaName = SbmDbDfn.GetSchemaName(tableIdx, false); String tableName = SbmDbDfn.GetTableName(tableIdx, false); String columnName = SbmDbDfn.GetColumnName(columnIdx, false); return DbInfo.ColumnExists(schemaName, tableName, columnName); } //------------------------------------------------------------------- } //======================================================================= }