//Проверка соединения protected override void ConnectProvider() { if (!DaoDb.Check(CloneFile, "InfoTaskClone")) { AddError("Недопустимый файл клона", null, CloneFile); } if (SysTabl.ValueS(CloneFile, "CloneComplect") != SourceConnect.Complect) { AddError(CheckConnectionMessage = "Файл является клоном для другого, несовместимого источника"); } }
public void StaticFuns() { var file = CopyFile("Static"); Assert.AreEqual("OptionsValue", SysTabl.ValueS(file, "FileOptions")); Assert.AreEqual("ParamValue", SysTabl.ValueS(file, "Param")); Assert.AreEqual("OptionsTag", SysTabl.TagS(file, "FileOptions")); Assert.AreEqual("ParamTag", SysTabl.TagS(file, "Param")); SysTabl.PutValueS(file, "Param", "s1", "t1"); Assert.AreEqual("s1", SysTabl.ValueS(file, "Param")); Assert.AreEqual("t1", SysTabl.TagS(file, "Param")); SysTabl.PutValueS(file, "Param", 22, "t2"); Assert.AreEqual("22", SysTabl.ValueS(file, "Param")); Assert.AreEqual("t2", SysTabl.TagS(file, "Param")); SysTabl.PutValueS(file, "Param", 33.3, "t3"); Assert.AreEqual("33,3", SysTabl.ValueS(file, "Param")); Assert.AreEqual("t3", SysTabl.TagS(file, "Param")); SysTabl.PutValueS(file, "Param", new DateTime(2000, 1, 1)); Assert.AreEqual("01.01.2000 0:00:00", SysTabl.ValueS(file, "Param")); Assert.AreEqual("t3", SysTabl.TagS(file, "Param")); SysTabl.PutValueS(file, "Param", true, ""); Assert.AreEqual("True", SysTabl.ValueS(file, "Param")); Assert.AreEqual("", SysTabl.TagS(file, "Param")); SysTabl.PutTagS(file, "Param", "Tag", "Value"); Assert.AreEqual("Value", SysTabl.ValueS(file, "Param")); Assert.AreEqual("Tag", SysTabl.TagS(file, "Param")); Assert.AreEqual("Тестовый файл", SysTabl.SubValueS(file, "FileOptions", "FileDescription")); Assert.AreEqual("DaoTest", SysTabl.SubValueS(file, "FileOptions", "FileType")); Assert.AreEqual("2.0.0", SysTabl.SubValueS(file, "FileOptions", "FileVersion")); Assert.AreEqual("11.07.2016", SysTabl.SubValueS(file, "FileOptions", "FileVersionDate")); Assert.AreEqual("SubValue", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual(null, SysTabl.SubTagS(file, "FileOptions", "FileDescription")); Assert.AreEqual("SubTag", SysTabl.SubTagS(file, "Param", "SubParam")); SysTabl.PutSubValueS(file, "Param", "SubParam", "s1", "t1"); Assert.AreEqual("s1", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual("t1", SysTabl.SubTagS(file, "Param", "SubParam")); SysTabl.PutSubValueS(file, "Param", "SubParam", 22, "t2"); Assert.AreEqual("22", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual("t2", SysTabl.SubTagS(file, "Param", "SubParam")); SysTabl.PutSubValueS(file, "Param", "SubParam", 33.3, "t3"); Assert.AreEqual("33,3", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual("t3", SysTabl.SubTagS(file, "Param", "SubParam")); SysTabl.PutSubValueS(file, "Param", "SubParam", new DateTime(2000, 1, 1)); Assert.AreEqual("01.01.2000 0:00:00", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual("t3", SysTabl.SubTagS(file, "Param", "SubParam")); SysTabl.PutSubValueS(file, "Param", "SubParam", true, ""); Assert.AreEqual("True", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual("", SysTabl.SubTagS(file, "Param", "SubParam")); SysTabl.PutSubTagS(file, "Param", "SubParam", "Tag", "Value"); Assert.AreEqual("Value", SysTabl.SubValueS(file, "Param", "SubParam")); Assert.AreEqual("Tag", SysTabl.SubTagS(file, "Param", "SubParam")); }
public static void Initialize() { if (_isInitialized) { return; } try { InfoTaskDir = Different.GetInfoTaskDir(); GeneralDir = InfoTaskDir + @"General\"; TmpDir = InfoTaskDir + @"Tmp\"; DocsDir = InfoTaskDir + @"Docs\"; ControllerDir = InfoTaskDir + @"Controller\"; ReporterDir = InfoTaskDir + @"Reporter\"; ConfigFile = GeneralDir + "Config.accdb"; HistryTemplateFile = GeneralDir + "HistoryTemplate.accdb"; if (!DaoDb.Check(GeneralDir + "General.accdb", new[] { "Functions", "FunctionsOverloads" })) { Different.MessageError("Не допустимый General.accdb"); } if (!DaoDb.Check(ConfigFile, new[] { "SysTabl", "SysSubTabl" })) { Different.MessageError("Не допустимый Config.accdb"); } ControllerFile = ControllerDir + "ControllerData.accdb"; if (!DaoDb.Check(ControllerFile, new[] { "Threads", "Projects", "Providers" })) { Different.MessageError("Не допустимый ControllerData.accdb"); } ReporterFile = ReporterDir + "ReporterData.accdb"; ReportTemplateFile = ReporterDir + "ReportTemplate.accdb"; DebugMode = SysTabl.ValueS(ControllerFile, "DebugMode") == "True"; Oka.Register(); ReadProvidersLists(); _isInitialized = true; } catch (Exception ex) { ex.MessageError("Настроечный файл имеет недопустимый формат"); } }
protected override void OnStartup(StartupEventArgs e) { try { Mutex.OpenExisting("InfoTask.Controller"); MessageBox.Show("Нельзя запустить более одного контроллера одновременно"); Current.Shutdown(); } catch { if (new DbVersion().ACheck("Controller") < 1) { Current.Shutdown(); } Mutex = new Mutex(false, "InfoTask.Controller"); } try { General.Initialize(); Synchro = new Synchro(); MonitorHistory = new MonitorHistory { Inf = SysTabl.ValueS(General.ControllerFile, "MonitorHistoryProps") }; using (var rec = new ReaderAdo(General.ControllerFile, "SELECT * FROM Threads WHERE ApplicationType='Controller' ORDER BY ThreadId")) while (rec.Read()) { AddThread(rec); } Window = new MainCalc(); Window.Show(); Window.App = this; Window.DataContext = this; } catch (Exception ex) { ex.MessageError(); } }
//Обновление файла данных из проектов и отчета, загрузка параметров Projects //updateAll - обновлять, даже если дата обновления ссылок не совпадет, delete - удалять файл перед обновлением public void UpdateDataFile(bool delete, bool updateAll = false) { AddEvent("Обновление файла данных", Code); if (delete) { DaoDb.FromTemplate(General.ReportTemplateFile, DataFile, ReplaceByTemplate.Always); } if (updateAll) { LastChangeLinks = DateTime.Now; } bool needUpdate = ParamsProjectsToFile(); if (updateAll || needUpdate || Projects.Count == 0) { ParamsFileToMemory(); } if (needUpdate || LastChangeLinks != SysTabl.ValueS(DataFile, "LastChangeLinks").ToDateTime()) { LinksReportToFile(); } }