//Загрузка SysTabl проекта, needCompilation = true - ругается, если проект не скомпилирован public void ReadSysTabl(bool needCompilation) { try { using (var sys = new SysTabl(File)) { Code = sys.SubValue("ProjectInfo", "Project"); Name = sys.SubValue("ProjectInfo", "ProjectName"); Description = sys.SubValue("ProjectInfo", "ProjectDescription"); VedTag = sys.Tag("VedTag"); if (needCompilation) { Interpolation = sys.SubValue("ProjectInfo", "Interpolation").ToInterpolation(); LastChange = DateTime.Parse(sys.SubValue("CompileStatus", "LastTimeCompile")); } IsMoments = sys.SubValue("ArchiveOptions", "IsMoments") == "True"; IsPeriodic = sys.SubValue("ArchiveOptions", "IsPeriodic") == "True"; IsAbsolute = sys.SubValue("ArchiveOptions", "IsAbsolute") == "True"; IsPrevAbs = sys.SubValue("ArchiveOptions", "IsPrevAbs") == "True"; IsLastBase = sys.SubValue("ArchiveOptions", "IsLastBase") == "True"; IsLastHour = sys.SubValue("ArchiveOptions", "IsLastHour") == "True"; IsLastDay = sys.SubValue("ArchiveOptions", "IsLastDay") == "True"; IsManyBase = sys.SubValue("ArchiveOptions", "IsManyBase") == "True"; IsManyHour = sys.SubValue("ArchiveOptions", "IsManyHour") == "True"; IsManyDay = sys.SubValue("ArchiveOptions", "IsManyDay") == "True"; IsManyMoments = sys.SubValue("ArchiveOptions", "IsManyMoments") == "True"; } } catch (Exception ex) { ThreadCalc.AddError("Недопустимые настройки в файле проекта (SysTabl) или проект никогда не копилировался", ex, "Путь=" + File); } }
public void InstanceFuns() { using (var sys = new SysTabl(CopyFile(""), false)) { Assert.IsNotNull(sys); Assert.AreEqual("OptionsValue", sys.Value("FileOptions")); Assert.AreEqual("ParamValue", sys.Value("Param")); Assert.AreEqual("OptionsTag", sys.Tag("FileOptions")); Assert.AreEqual("ParamTag", sys.Tag("Param")); sys.PutValue("Param", "s1", "t1"); Assert.AreEqual("s1", sys.Value("Param")); Assert.AreEqual("t1", sys.Tag("Param")); sys.PutValue("Param", 22, "t2"); Assert.AreEqual("22", sys.Value("Param")); Assert.AreEqual("t2", sys.Tag("Param")); sys.PutValue("Param", 33.3, "t3"); Assert.AreEqual("33,3", sys.Value("Param")); Assert.AreEqual("t3", sys.Tag("Param")); sys.PutValue("Param", new DateTime(2000, 1, 1)); Assert.AreEqual("01.01.2000 0:00:00", sys.Value("Param")); Assert.AreEqual("t3", sys.Tag("Param")); sys.PutValue("Param", true, ""); Assert.AreEqual("True", sys.Value("Param")); Assert.AreEqual("", sys.Tag("Param")); sys.PutTag("Param", "Tag", "Value"); Assert.AreEqual("Value", sys.Value("Param")); Assert.AreEqual("Tag", sys.Tag("Param")); } var db = new DaoDb(CopyFile("")); using (var sys = new SysTabl(db)) { Assert.IsNotNull(sys); Assert.AreEqual("OptionsValue", sys.Value("FileOptions")); Assert.AreEqual("ParamValue", sys.Value("Param")); Assert.AreEqual("OptionsTag", sys.Tag("FileOptions")); Assert.AreEqual("ParamTag", sys.Tag("Param")); Assert.AreEqual("Тестовый файл", sys.SubValue("FileOptions", "FileDescription")); Assert.AreEqual("DaoTest", sys.SubValue("FileOptions", "FileType")); Assert.AreEqual("2.0.0", sys.SubValue("FileOptions", "FileVersion")); Assert.AreEqual("11.07.2016", sys.SubValue("FileOptions", "FileVersionDate")); Assert.AreEqual("SubValue", sys.SubValue("Param", "SubParam")); Assert.AreEqual(null, sys.SubTag("FileOptions", "FileDescription")); Assert.AreEqual("SubTag", sys.SubTag("Param", "SubParam")); sys.PutSubValue("Param", "SubParam", "s1", "t1"); Assert.AreEqual("s1", sys.SubValue("Param", "SubParam")); Assert.AreEqual("t1", sys.SubTag("Param", "SubParam")); sys.PutSubValue("Param", "SubParam", 22, "t2"); Assert.AreEqual("22", sys.SubValue("Param", "SubParam")); Assert.AreEqual("t2", sys.SubTag("Param", "SubParam")); sys.PutSubValue("Param", "SubParam", 33.3, "t3"); Assert.AreEqual("33,3", sys.SubValue("Param", "SubParam")); Assert.AreEqual("t3", sys.SubTag("Param", "SubParam")); sys.PutSubValue("Param", "SubParam", new DateTime(2000, 1, 1)); Assert.AreEqual("01.01.2000 0:00:00", sys.SubValue("Param", "SubParam")); Assert.AreEqual("t3", sys.SubTag("Param", "SubParam")); sys.PutSubValue("Param", "SubParam", true, ""); Assert.AreEqual("True", sys.SubValue("Param", "SubParam")); Assert.AreEqual("", sys.SubTag("Param", "SubParam")); sys.PutSubTag("Param", "SubParam", "Tag", "Value"); Assert.AreEqual("Value", sys.SubValue("Param", "SubParam")); Assert.AreEqual("Tag", sys.SubTag("Param", "SubParam")); } db.Dispose(); }